Warning: Can't synchronize with repository "(default)" (/home/git/ome.git does not appear to be a Git repository.). Look in the Trac log for more information.

Ticket #6225: Main.java

File Main.java, 1.8 KB (added by cxallan, 13 years ago)

Simple boilerplate test case showing what is possible with OpenJPEG's JNI Java wrappers.

Line 
1import org.openJpeg.OpenJPEGJavaEncoder;
2import org.openJpeg.OpenJPEGJavaEncoder.IJavaJ2KEncoderLogger;
3
4public class Main implements IJavaJ2KEncoderLogger
5{
6    public static final String LIBRARY_PATH =
7        "/Users/callan/code/openjpeg-trunk/applications/JavaOpenJPEG/libJavaOpenJPEG.so";
8
9    public void test()
10    {
11        OpenJPEGJavaEncoder encoder = new OpenJPEGJavaEncoder(LIBRARY_PATH);
12        encoder.addLogger(this);
13        long t0 = System.currentTimeMillis();
14        // The nbResolutions, nbLayers and if needed the float[] psnrLayers or
15        // ratioLayers must also be filled before calling this method.
16        encoder.setDepth(8);
17        encoder.setWidth(256);
18        encoder.setHeight(256);
19        encoder.setNbResolutions(1);
20        //encoder.setPsnrLayers(new float[] { -1.0f });  // Lossless (-1.0)
21        encoder.setRatioLayers(new float[] { 0.0f });  // Lossless (0.0)
22        encoder.setImage8(new byte[256 * 256]);
23        encoder.encodeImageToJ2K();
24        System.err.println("Encode time: " + (System.currentTimeMillis() - t0));
25        byte[] stream = encoder.getCompressedStream();
26        System.err.println("Stream length: " + stream.length);
27        System.err.println("Library stated stream length: " + encoder.getCompressedStreamLength());
28    }
29
30    public static void main(String[] args)
31    {
32        Main main = new Main();
33        main.test();
34    }
35
36    /* (non-Javadoc)
37     * @see org.openJpeg.OpenJPEGJavaEncoder.IJavaJ2KEncoderLogger#logEncoderError(java.lang.String)
38     */
39    public void logEncoderError(String message)
40    {
41        System.err.println(message);
42    }
43
44    /* (non-Javadoc)
45     * @see org.openJpeg.OpenJPEGJavaEncoder.IJavaJ2KEncoderLogger#logEncoderMessage(java.lang.String)
46     */
47    public void logEncoderMessage(String message)
48    {
49        System.err.println(message);
50    }
51
52}

1.3.13-PRO © 2008-2011 Agilo Software all rights reserved (this page was served in: 0.10312 sec.)

We're Hiring!