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

首頁 > 系統(tǒng) > Android > 正文

android camera yuv幀水平翻轉(zhuǎn)實(shí)例

2019-10-21 21:42:48
字體:
供稿:網(wǎng)友

Camera預(yù)覽時(shí)需要對yuv幀做水平翻轉(zhuǎn)處理,直接在onPreviewFrame(byte[] data, Camera camera)里調(diào)用Mirror函數(shù),處理完后的圖片和預(yù)覽效果成水平翻轉(zhuǎn)關(guān)系。

nv21的鏡像算法:

  private void Mirror(byte[] src, int w, int h) { //src是原始yuv數(shù)組    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數(shù)組    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幀水平翻轉(zhuǎn)實(shí)例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持VEVB武林網(wǎng)。


注:相關(guān)教程知識(shí)閱讀請移步到Android開發(fā)頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 水富县| 安阳市| 拉孜县| 河源市| 芒康县| 翼城县| 基隆市| 墨脱县| 新化县| 平潭县| 邛崃市| 台东县| 尼木县| 黄山市| 札达县| 福海县| 翁牛特旗| 新宁县| 神农架林区| 抚州市| 武定县| 宜川县| 罗甸县| 济阳县| 皮山县| 桂平市| 禄劝| 余庆县| 龙岩市| 广安市| 滁州市| 兰溪市| 洛隆县| 呈贡县| 北海市| 新巴尔虎左旗| 临汾市| 静海县| 潼南县| 太湖县| 陇川县|