国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

android camera yuv幀水平翻轉實例

2019-12-12 00:36:52
字體:
來源:轉載
供稿:網友

Camera預覽時需要對yuv幀做水平翻轉處理,直接在onPreviewFrame(byte[] data, Camera camera)里調用Mirror函數,處理完后的圖片和預覽效果成水平翻轉關系。

nv21的鏡像算法:

  private void Mirror(byte[] src, int w, int h) { //src是原始yuv數組    int i;    int index;    byte temp;    int a, b;    //mirror y    for (i = 0; i < h; i++) {      a = i * w;      b = (i + 1) * w - 1;      while (a < b) {        temp = src[a];        src[a] = src[b];        src[b] = temp;        a++;        b--;      }    }     // mirror u and v    index = w * h;    for (i = 0; i < h / 2; i++) {      a = i * w;      b = (i + 1) * w - 2;      while (a < b) {        temp = src[a + index];        src[a + index] = src[b + index];        src[b + index] = temp;         temp = src[a + index + 1];        src[a + index + 1] = src[b + index + 1];        src[b + index + 1] = temp;        a+=2;        b-=2;      }    }  }

i420的鏡像算法:

private void Mirror(byte[] src, int w, int h) { //src是原始yuv數組    int i;    int index;    byte temp;    int a, b;    //mirror y    for (i = 0; i < h; i++) {      a = i * w;      b = (i + 1) * w - 1;      while (a < b) {        temp = src[a];        src[a] = src[b];        src[b] = temp;        a++;        b--;      }    }    //mirror u    index = w * h;//U起始位置    for (i = 0; i < h / 2; i++) {      a = i * w / 2;      b = (i + 1) * w / 2 - 1;      while (a < b) {        temp = src[a + index];        src[a + index] = src[b + index];        src[b + index] = temp;        a++;        b--;      }    }    //mirror v    index = w * h / 4 * 5;//V起始位置    for (i = 0; i < h / 2; i++) {      a = i * w / 2;      b = (i + 1) * w / 2 - 1;      while (a < b) {        temp = src[a + index];        src[a + index] = src[b + index];        src[b + index] = temp;        a++;        b--;      }    }

I420,YV12,NV12,NV21均屬于YUV420,以下為四種格式的排列順序:

I420: YYYYYYYY UUVV =>YUV420P
YV12: YYYYYYYY VVUU =>YUV420P
NV12: YYYYYYYY UVUV =>YUV420SP
NV21: YYYYYYYY VUVU =>YUV420SP

以上這篇android camera yuv幀水平翻轉實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 扶风县| 定结县| 宁国市| 民丰县| 宿迁市| 莱西市| 正蓝旗| 三穗县| 高青县| 原阳县| 蒙自县| 杨浦区| 尉氏县| 渝中区| 莎车县| 海淀区| 肇庆市| 盐城市| 屏边| 濮阳县| 汉沽区| 临沧市| 苏尼特右旗| 景德镇市| 同德县| 晋城| 凤台县| 龙川县| 忻城县| 上林县| 武胜县| 吴堡县| 嘉义县| 安康市| 平凉市| 凤台县| 永康市| 鞍山市| 皋兰县| 永康市| 伊宁县|