go-libwebp

Experimental translation from libwebp to Go source.
Log | Files | Refs | README | LICENSE

README.md (1416B)


      1 # SWIG bindings
      2 
      3 ## Building
      4 
      5 ### JNI SWIG bindings
      6 
      7 ```shell
      8  $ gcc -shared -fPIC -fno-strict-aliasing -O2 \
      9        -I/path/to/your/jdk/includes \
     10        libwebp_java_wrap.c \
     11        -lwebp \
     12        -o libwebp_jni.so
     13 ```
     14 
     15 Example usage:
     16 
     17 ```java
     18 import com.google.webp.libwebp;
     19 
     20 import java.lang.reflect.Method;
     21 
     22 public class libwebp_jni_example {
     23   static {
     24     System.loadLibrary("webp_jni");
     25   }
     26 
     27   /**
     28    * usage: java -cp libwebp.jar:. libwebp_jni_example
     29    */
     30   public static void main(String argv[]) {
     31     final int version = libwebp.WebPGetDecoderVersion();
     32     System.out.println("libwebp version: " + Integer.toHexString(version));
     33 
     34     System.out.println("libwebp methods:");
     35     final Method[] libwebpMethods = libwebp.class.getDeclaredMethods();
     36     for (int i = 0; i < libwebpMethods.length; i++) {
     37       System.out.println(libwebpMethods[i]);
     38     }
     39   }
     40 }
     41 ```
     42 
     43 ```shell
     44  $ javac -cp libwebp.jar libwebp_jni_example.java
     45  $ java -Djava.library.path=. -cp libwebp.jar:. libwebp_jni_example
     46 ```
     47 
     48 ### Python SWIG bindings:
     49 
     50 ```shell
     51  $ python setup.py build_ext
     52  $ python setup.py install --prefix=pylocal
     53 ```
     54 
     55 Example usage:
     56 
     57 ```python
     58 import glob
     59 import sys
     60 sys.path.append(glob.glob('pylocal/lib/python*/site-packages')[0])
     61 
     62 from com.google.webp import libwebp
     63 print "libwebp decoder version: %x" % libwebp.WebPGetDecoderVersion()
     64 
     65 print "libwebp attributes:"
     66 for attr in dir(libwebp): print attr
     67 ```