青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

牽著老婆滿街逛

嚴以律己,寬以待人. 三思而后行.
GMail/GTalk: yanglinbo#google.com;
MSN/Email: tx7do#yahoo.com.cn;
QQ: 3 0 3 3 9 6 9 2 0 .

輕松使用 ffmpeg sdk 實現各種格式的rgb以及yuv raw

轉載自:http://www.roarsoft.net/a/Media/AVPlay/201006/9661.html

有些時候大家需要一些yuv或者rgb 的 raw data的文件。ffmpeg項目中的libavcodec支持很多格式的raw相互轉換,在早期的版本中,使用 img_convert,在新版本中,使用 sws_scale 完成。各種不同的格式在ffmpeg里面被稱為 pixel formats,下面貼出來的就是:

PIX_FMT_YUV420P,    < Planar YUV 4:2:0 (1 Cr & Cb sample per 2x2 Y samples)/n"
PIX_FMT_YUV422,     < Packed pixel, Y0 Cb Y1 Cr /n"
PIX_FMT_RGB24,      < Packed pixel, 3 bytes per pixel, RGBRGB.../n"
PIX_FMT_BGR24,      < Packed pixel, 3 bytes per pixel, BGRBGR.../n"
PIX_FMT_YUV422P,    < Planar YUV 4:2:2 (1 Cr & Cb sample per 2x1 Y samples)/n"
PIX_FMT_YUV444P,    < Planar YUV 4:4:4 (1 Cr & Cb sample per 1x1 Y samples)/n"
PIX_FMT_RGBA32,     < Packed pixel, 4 bytes per pixel, BGRABGRA..., stored in cpu endianness/n"
PIX_FMT_YUV410P,    < Planar YUV 4:1:0 (1 Cr & Cb sample per 4x4 Y samples)/n"
PIX_FMT_YUV411P,    < Planar YUV 4:1:1 (1 Cr & Cb sample per 4x1 Y samples)/n"
IX_FMT_RGB565,     < always stored in cpu endianness /n"
PIX_FMT_RGB555,     < always stored in cpu endianness, most significant bit to 1 /n"
PIX_FMT_GRAY8,/n"
PIX_FMT_MONOWHITE, < 0 is white /n"
PIX_FMT_MONOBLACK, < 0 is black /n"
PIX_FMT_PAL8,       < 8 bit with RGBA palette /n"
PIX_FMT_YUVJ420P,   < Planar YUV 4:2:0 full scale (jpeg)/n"
PIX_FMT_YUVJ422P,   < Planar YUV 4:2:2 full scale (jpeg)/n"
PIX_FMT_YUVJ444P,   < Planar YUV 4:4:4 full scale (jpeg)/n"
PIX_FMT_UYVY422,    < Packed pixel, Cb Y0 Cr Y1 /n"
PIX_FMT_UYVY411,    < Packed pixel, Cb Y0 Y1 Cr Y2 Y3/n"
/////////////////////////////////////////////////////////////////

舉例來說,
PIX_FMT_YUV444P,    < Planar YUV 4:4:4  
指的是文件的開始1/3是y分量,中間1/3是u分量,最后1/3是v分量。

PIX_FMT_RGB24,      < Packed pixel, 3 bytes per pixel, RGBRGB.../n"
指的是文件內的數據3個byte是一組,始終按照RGB方式排列。

PIX_FMT_RGBA32,     < Packed pixel, 4 bytes per pixel, BGRABGRA..., stored in cpu endianness/n"
指的是文件內的數據4個byte是一組,始終按照RGB+alpha byte方式排列,alpha表示透明度。
/////////////////////////////////////////////////////////////////

ffmpeg對于以上所有類型抽象成
typedef struct AVPicture {
     uint8_t *data[4];
     int linesize[4];
} AVPicture;

該結構體總共表示四個平面,
data[0]表示第一個平面的數據開始地址,
linesize[0]表示第一個平面的每一行有多少個字節。

這樣PIX_FMT_YUV444P有三個Planar,最后一個平面空著不用就好了。

AVFrame這個結構體的包含AVPicture,此外,AVFrame還含有其他一些成員數據,比如。是否key_frame、已編碼圖像數 coded_picture_number、是否作為參考幀reference、宏塊類型 *mb_type等等,這里就不詳細敘述了。
/////////////////////////////////////////////////////////////////


鑒于img_convert在新版中已經不用,所以這里只介紹一下效率更高的。sws_scale。

來看看它的函數定義:
int sws_scale(struct SwsContext *ctx, uint8_t* src[], int srcStride[], int srcSliceY, int srcSliceH, uint8_t* dst[], int dstStride[])

其中src和srcStride定義了輸入圖像的四個平面的數據起始指針和四個平面中每一行包含的像素的個數。

dst和dstStride是輸出變量,定義的是輸出圖像的四個平面的數據起始指針和四個平面包含的數據的大小。

為什么一個圖像有四個平面,可以找一下YUV格式的一些詳細介紹就可以明白。

當然,RGB格式是按照緊湊格式進行編碼的,因此只有一個平面,也就是說只要設置src[0]就可以,src[1],src[2],src[3]都為 NULL。

我們就在設置src[0]和srcStride[0]的地方做文章。

按照一般處理src[0]和srcStride[0]分別設置為起始圖像數據的開始和圖像每一行的像素個數。

那如果把src[0] 設置為 width * ( height - 1)     srcStride[0] = -height 結果會如何呢?是不是就會把圖像倒過來呢?

實際確實如此。進行圖像倒置的操作盡然如此簡單。這樣避免了人為再添加一次圖像的反轉操作,提高了編碼的性能。

/////////////////////////////////////////////////////////////////

不發命令行工具了,需要的mail給我.

這里提供一個windows平臺下使用ffmpeg的快捷方法,下面這個開發包內直接提供lib給開發人員使用。

posted on 2013-01-28 18:40 楊粼波 閱讀(2984) 評論(2)  編輯 收藏 引用

評論

# re: 輕松使用 ffmpeg sdk 實現各種格式的rgb以及yuv raw 2013-04-12 09:19 chinayin

樓主是怎么編譯ffmpeg的啊,怎么將他編譯成能夠獨立運行的lib呢,這個很困惑啊!還希望樓主不吝賜教  回復  更多評論   

# re: 輕松使用 ffmpeg sdk 實現各種格式的rgb以及yuv raw 2013-04-12 09:21 chinayin

我按照你的說明編譯了最新版。但是在自己的工程里面不能使用,以為頭文件需要其他的頭文件 這個問題你是怎么解決的啊  回復  更多評論   

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            99在线精品视频在线观看| 噜噜噜躁狠狠躁狠狠精品视频| 欧美一区二区观看视频| 亚洲少妇一区| 亚洲一区二区三区在线视频| 91久久精品日日躁夜夜躁欧美 | 欧美一级日韩一级| 亚洲欧美中日韩| 久久精品成人一区二区三区| 久久久精品视频成人| 欧美成人精品影院| 亚洲毛片一区| 午夜精品久久久久久| 欧美一区二区三区男人的天堂| 久久狠狠婷婷| 欧美国产日韩一区二区三区| 国产精品v日韩精品| 国产一区二区中文字幕免费看| 在线精品观看| 宅男噜噜噜66一区二区| 久久久久久久成人| 亚洲人久久久| 欧美大色视频| 午夜精品福利一区二区三区av| 欧美国产91| 日韩亚洲精品在线| 欧美尤物巨大精品爽| 欧美超级免费视 在线| 国产精品久久久99| 亚洲经典自拍| 久久久久久久一区二区三区| 亚洲人成亚洲人成在线观看图片| 午夜精品免费视频| 欧美日韩亚洲精品内裤| 亚洲第一黄色| 久久久久99| 一本色道久久99精品综合 | 亚洲欧美一区二区三区久久| 久久久久国产一区二区| 亚洲精品视频一区| 蜜桃伊人久久| 在线观看的日韩av| 久久黄色网页| 亚洲激情精品| 美女国产精品| 久久精品国产精品亚洲精品| 欧美色综合天天久久综合精品| 怡红院精品视频在线观看极品| 亚洲香蕉成视频在线观看| 亚洲二区免费| 久久久精品国产免大香伊| 国产欧美日韩一区二区三区在线 | 国产热re99久久6国产精品| 99视频在线观看一区三区| 免费观看成人www动漫视频| 欧美一区二区三区视频| 国产三级欧美三级日产三级99| 亚洲一区二区视频在线观看| 亚洲美女色禁图| 欧美人妖在线观看| 国产精品99久久99久久久二8| 91久久午夜| 欧美国产第一页| 夜色激情一区二区| 亚洲精品欧洲精品| 国产精品www网站| 亚洲欧美日韩综合国产aⅴ| 亚洲视频综合| 国产日本欧美一区二区三区| 欧美伊人久久大香线蕉综合69| 午夜精品网站| 亚洲国产毛片完整版| 91久久黄色| 国产精品久久久久久模特| 久久精品中文| 毛片基地黄久久久久久天堂 | 欧美一级欧美一级在线播放| 欧美一区二区三区电影在线观看| 亚洲香蕉视频| 国产日韩av一区二区| 久久视频一区二区| 美女网站在线免费欧美精品| 亚洲欧洲日本专区| 亚洲视频精选| 在线观看视频亚洲| 日韩网站在线| 国产欧美精品日韩精品| 欧美xart系列高清| 欧美日韩一区二区三区在线视频 | 在线一区日本视频| 亚洲欧美精品suv| 亚洲国产欧美另类丝袜| 亚洲美女在线国产| 国产视频亚洲| 亚洲乱码国产乱码精品精可以看 | 欧美自拍偷拍| 亚洲免费观看高清在线观看 | 久久久久一区二区三区| 麻豆成人在线| 午夜精品一区二区三区在线| 久久精品亚洲一区| 亚洲午夜精品在线| 玖玖国产精品视频| 亚洲尤物视频网| 久热精品视频在线观看一区| 亚洲女爱视频在线| 麻豆精品在线观看| 久久爱www| 欧美日韩免费高清| 欧美福利视频| 国产精品国产三级国产专播精品人| 久久久久久久高潮| 国产精品毛片va一区二区三区 | 国产日韩专区| 日韩午夜视频在线观看| 在线观看一区| 久久国产主播精品| 欧美在线视频二区| 国产精品v欧美精品v日本精品动漫| 欧美大色视频| 激情综合亚洲| 久久不射中文字幕| 欧美一区二区三区精品电影| 欧美精品情趣视频| 亚洲小视频在线| 亚洲日本va午夜在线电影| 国产亚洲精品自拍| 亚洲特级毛片| 亚洲网站在线观看| 欧美久久久久| 亚洲日本中文字幕区| 亚洲高清毛片| 久久九九全国免费精品观看| 欧美一级黄色录像| 国产精品免费区二区三区观看| 99精品国产在热久久婷婷| 日韩小视频在线观看专区| 欧美不卡高清| 亚洲国产欧美不卡在线观看| 91久久久久| 嫩草伊人久久精品少妇av杨幂| 欧美暴力喷水在线| 亚洲黄色尤物视频| 欧美国产精品专区| 亚洲精品午夜| 亚洲欧美日韩一区二区在线 | 欧美一区二区三区免费观看视频| 欧美日韩在线亚洲一区蜜芽| 一区二区精品在线| 香蕉尹人综合在线观看| 国产视频久久久久| 久久久久久999| 欧美国产高潮xxxx1819| 亚洲精品乱码久久久久久蜜桃麻豆 | 亚洲精品社区| 亚洲视频免费| 国产精品伊人日日| 久久国产免费| 欧美激情第9页| 在线视频日韩精品| 国产精品综合久久久| 久久久久国产精品人| 亚洲欧洲精品天堂一级| 亚洲免费在线视频| 狠狠久久综合婷婷不卡| 欧美成年人视频网站| 一色屋精品视频免费看| 日韩一本二本av| 一区二区三区在线不卡| 在线观看精品视频| 亚洲欧洲一级| av成人国产| 国产精品亚洲欧美| 久久蜜桃精品| 一本大道久久精品懂色aⅴ| 欧美在线观看一二区| 伊人男人综合视频网| 欧美四级伦理在线| 久久先锋资源| 亚洲深夜福利视频| 欧美福利一区| 欧美美女福利视频| 黄色日韩网站| 欧美日韩播放| 欧美永久精品| 一片黄亚洲嫩模| 国产日产欧产精品推荐色| 一区二区三区国产精品| 欧美一区二区三区四区高清| 免费成人黄色| 亚洲一区二区四区| 亚洲第一综合天堂另类专| 国产精品成人在线观看| 欧美 日韩 国产一区二区在线视频| 亚洲一区二区精品在线| 亚洲欧洲一区二区三区在线观看| 欧美中文日韩| 亚洲欧美中文另类| 亚洲香蕉在线观看| 亚洲精品乱码久久久久久|