Note that there are some explanatory texts on larger screens.

plurals
  1. POConvert raw data to jpeg
    primarykey
    data
    text
    <p>I have found a way on how to convert raw data to jpeg but I have some issues with it. My app takes a picture on the current frame (onPreviewFrame) and has the raw data in a bytearray.</p> <p>First of all, the code I found is only supported by android API 7+ (Android 2.1+). I want this app to be able to use since API 4+ so android 1.6 users can also enjoy the app. Second thing is that I have found some code to convert raw2jpg, but it is copyright protected so I can't use it.</p> <p>I want to put it in a bytearray, so I won't use takePicture with it, remember.</p> <p>Does anyone have an idea or some code snippet that I can use on how to <em>convert</em> <strong>raw data</strong> taken on a current frame <strong>to</strong> make a <strong>jpeg image</strong> in a bytearray from Android version 1.6?</p> <p>EDIT: Here is the code:</p> <pre><code>private void raw2jpg(int[] rgb, byte[] raw, int width, int height) { final int frameSize = width * height; for (int j = 0, yp = 0; j &lt; height; j++) { int uvp = frameSize + (j &gt;&gt; 1) * width, u = 0, v = 0; for (int i = 0; i &lt; width; i++, yp++) { int y=0; if( yp &lt; raw.length) { y = (0xff &amp; ((int) raw[yp])) - 16; } // int y = (0xff &amp; ((int) raw[yp])) - 16; if (y &lt; 0) y = 0; if ((i &amp; 1) == 0) { if(uvp&lt;raw.length) { v = (0xff &amp; raw[uvp++]) - 128; u = (0xff &amp; raw[uvp++]) - 128; } } int y1192 = 1192 * y; int r = (y1192 + 1634 * v); int g = (y1192 - 833 * v - 400 * u); int b = (y1192 + 2066 * u); if (r &lt; 0) r = 0; else if (r &gt; 262143) r = 262143; if (g &lt; 0) g = 0; else if (g &gt; 262143) g = 262143; if (b &lt; 0) b = 0; else if (b &gt; 262143) b = 262143; rgb[yp] = 0xff000000 | ((r &lt;&lt; 6) &amp; 0xff0000) | ((g &gt;&gt; 2) &amp; 0xff00) | ((b &gt;&gt; 10) &amp; 0xff); } } } </code></pre>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload