導航:首頁 > 操作系統 > androidcamerayuv數據

androidcamerayuv數據

發布時間:2022-07-29 20:59:55

android採集的攝像頭數據是什麼格式的

android camera初始採集到的格式是yuv格式的,圖像繪制的時候會轉換成rgb格式的。

㈡ Android Camera提取出來的yuv420源數據怎麼提取y,u,v分量

Camera默認的預覽格式是 NV21,4:2:0 結構的,每個U、V用於4個Y
參考下下面的代碼
**
* Converts YUV420 NV21 to ARGB8888
*
* @param data byte array on YUV420 NV21 format.
* @param width pixels width
* @param height pixels height
* @retur a ARGB8888 pixels int array. Where each int is a pixels ARGB.
*/
public static int[] convertYUV420_NV21toARGB8888(byte [] data, int width, int height) {
int size = width*height;
int offset = size;
int[] pixels = new int[size];
int u, v, y1, y2, y3, y4;

// i along Y and the final pixels
// k along pixels U and V
for(int i=0, k=0; i < size; i+=2, k+=1) {
y1 = data[i ]&0xff;
y2 = data[i+1]&0xff;
y3 = data[width+i ]&0xff;
y4 = data[width+i+1]&0xff;

v = data[offset+k ]&0xff;
u = data[offset+k+1]&0xff;
v = v-128;
u = u-128;

pixels[i ] = convertYUVtoARGB(y1, u, v);
pixels[i+1] = convertYUVtoARGB(y2, u, v);
pixels[width+i ] = convertYUVtoARGB(y3, u, v);
pixels[width+i+1] = convertYUVtoARGB(y4, u, v);

if (i!=0 && (i+2)%width==0)
i+=width;
}

return pixels;
}

private static int convertYUVtoARGB(int y, int u, int v) {
int r,g,b;

r = y + (int)(1.402f*u);
g = y - (int)(0.344f*v + 0.714f*u);
b = y + (int)(1.772f*v);
r = r>255? 255 : r<0 ? 0 : r;
g = g>255? 255 : g<0 ? 0 : g;
b = b>255? 255 : b<0 ? 0 : b;
return 0xff000000 | (r<<16) | (g<<8) | b;
}

㈢ android 中如何將camera獲取的YUV420SP原始數據當視頻播放

手機自帶的播放器即可

㈣ Android攝像頭獲得YUV格式的視頻,網上很多都把它轉換為RGB為什麼呢能不能把它轉換為H264或者MP4格式的

RGB ? YUV ?這是視頻格式?難道我OUT了,經常和視頻打交道,視頻格式平常的和少見的都略知,就是沒見過這兩種,RGB不會是代表紅綠藍三基色通道的視頻吧,YUV的原理或許和RGB一樣,並不代表格式,而是視頻的顏色通道

㈤ Android Camera提取出來的yuv源數據怎麼提取y,u,v分量

Android
camera採集到的可以是yuv420sp也可以食yuv420p。我知道yuv420中yuv的分布。現在主要有個前提是從Android
Camera
中採集到的yuv420數據,這個byte[]的長度是一倍的視頻寬高乘積,不是1.5倍。在jni裡面獲取到的長度又確實是1.5倍,但是在jni裡面轉換為jbyte*
的長度還是1倍,就不知道怎麼弄了~
查看原帖>>

㈥ Android Camera的這個介面怎麼把data轉為視頻

這些原始數據實際上是每一幀的圖像數據yuv420等數據,如果你懂的視頻協議可以自己寫視頻壓縮編碼,如果不懂就用原生的mediarecored進行編碼或者用開源的ffmpeg進行編碼

㈦ android 攝像頭出來的格式怎麼會是yuv420p 而不是yuv420sp(nv21)呢

那是因為你在相機參數初始化的時候未設置,加上這個就可以了

List<Integer> formatsList = parameters.getSupportedPreviewFormats(); //獲取設備支持的預覽format
if(formatsList.contains(ImageFormat.NV21))
parameters.setPreviewFormat(ImageFormat.NV21); //設置預覽格式為NV21,默認為NV21
if(formatsList.contains(ImageFormat.JPEG))
parameters.setPictureFormat(ImageFormat.JPEG); //設置照片儲存格式

㈧ android camera 採集到的數據是yuv嗎

是,android camera初始採集到的格式是yuv格式的,圖像繪制的時候會轉換成rgb格式的。

㈨ android怎麼獲取usb camera的數據

Android camera採集到的可以是yuv420sp也可以食yuv420p。我知道yuv420中yuv的分布。現在主要有個前提是從Android Camera 中採集到的yuv420數據,這個byte[]的長度是一倍的視頻寬高乘積,不是1.5倍。在jni裡面獲取到的長度又確實是1.5倍,但是在jni裡面轉換為jbyte* 的長度還是1倍,就不知道怎麼弄了~

閱讀全文

與androidcamerayuv數據相關的資料

熱點內容
京東熱app在哪裡可以下載 瀏覽:870
彩報圖書app哪個好 瀏覽:301
新君威20壓縮比 瀏覽:186
手機php整站 瀏覽:915
windows路由跳轉命令 瀏覽:472
量子遺傳演算法程序 瀏覽:222
各編程語言自帶軟體庫 瀏覽:184
編程最少學習多少 瀏覽:403
禪海蠡測語譯pdf 瀏覽:189
伺服器如何設置主城領地 瀏覽:122
android後台發送簡訊 瀏覽:5
mql4編程下載 瀏覽:954
為什麼演算法都用包 瀏覽:190
androidnfc測試 瀏覽:185
孫宇晨演算法 瀏覽:388
安卓11更新內容怎麼刪除 瀏覽:929
如何學習新編程語言 瀏覽:254
找車在哪裡找定位app 瀏覽:118
linux寫匯編 瀏覽:540
linux獲取ip函數 瀏覽:880