ffmpeg播放器開發(fā)H.264解碼+OpenGL渲染工具的封裝(完整版)

ffmpeg播放器開發(fā)H.264解碼+OpenGL渲染工具的封裝(完整版可以解碼視頻或者h(yuǎn)264文件然后openGL渲染播放解碼后的yuv)

一聂薪。首先說(shuō)下俗壹,把ffmpeg庫(kù)拉到工程里出現(xiàn)的一系列問題西潘,

也可以參考我的另外一篇文章:Xcode編譯Undefined symbols for architecture xxx 錯(cuò)誤總結(jié)(FFmpeg篇)

由于是別人編譯好的lib文件里面都是.a文件

ffmpeg-lib

1.選擇iphone 6s模擬器運(yùn)行出現(xiàn):

Undefined symbols for architecture x86_64:(模擬器64位處理器測(cè)試(iphone5以上的模擬器))

后來(lái)通過(guò)終端查看.a文件支持的架構(gòu):

lipo -info input libavcodec.a

得知程奠,別人的.a庫(kù)只支持arm7芋膘,arm7s ,i386衙四,沒有iphone 6s的x86_64架構(gòu)铃肯,

解決辦法(1).

然后就改用支持x86_64的庫(kù),

通過(guò)終端查看.a文件支持的架構(gòu):

lipo -info input libavcodec.a

這下就有了armv7 i386 x86_64 arm64架構(gòu)的庫(kù)了

當(dāng)再此編譯時(shí)又出現(xiàn):Undefined symbols for architecture x86_64

此時(shí)那是個(gè)腦細(xì)胞死亡一大堆传蹈,

解決辦法(2).

添加必須依賴的系統(tǒng)庫(kù)

導(dǎo)入CoreMedia.framework

我的工程添加的庫(kù):

iOS下

終于解決了Undefined symbols for architecture x86_64的問題押逼,順利編譯運(yùn)行通過(guò)。

題外話:這里我在macOS下創(chuàng)建的工程時(shí)添加的framework內(nèi)容:(一開始警告我說(shuō):ffmpeg的.a庫(kù)是iOS下的惦界,不建議在macOS下使用挑格,同時(shí)也出現(xiàn)了Undefined symbols for architecture x86_64:我就在原來(lái)的基礎(chǔ)上添加了下面的庫(kù):QuartzCore.framework Foundation.framework ?CoreGraphics.framework就好了,也不知道是怎么鬼沾歪,當(dāng)作經(jīng)驗(yàn)積累吧)

macOS下添加QuartzCore.framework Foundation.framework? CoreGraphics.framework

二漂彤。介紹下工程內(nèi)容和效果

1.FFmpeg解碼

FFmpeg解碼

輸入一個(gè)沙河內(nèi)的視頻文件(比如:flv格式,內(nèi)存性植)解碼為一幀一幀的圖片集合(像素格式挫望,內(nèi)存大)yuv

2.openGL渲染圖片yuv數(shù)據(jù)

openGL渲染圖片yuv數(shù)據(jù)

這里先渲染的是一張yuv圖片,若屏幕出現(xiàn)綠色或打印說(shuō)參數(shù)錯(cuò)誤,一般是視頻/圖片的寬高不對(duì)引起的,請(qǐng)仔細(xì)查看資源寬高屬性,

3.openGL渲染-H264解碼

openGL渲染-H264解碼

調(diào)用h264解碼的類H264DecodeTool 進(jìn)行mtv.h264或者mtv.mp4格式視頻解碼,解碼為yuv狂窑,然后通過(guò)openGLES渲染顯示解碼后yuv士骤。

4.播放器搭建:

就是之前編譯的ffmpeg的庫(kù)導(dǎo)入GitHub上的kxmovie:https://github.com/kolyvan/kxmovie

參見:我的文章:KxMovieViewController

在此感謝大神的資源共享:

http://www.cocoachina.com/bbs/read.php?tid=100908

http://www.cocoachina.com/bbs/u.php?action=post&uid=128606

https://pan.baidu.com/s/1dDvpECh

https://pan.baidu.com/share/home?uk=1698453400#category/type=0

這篇文章是對(duì)上一篇文章(ffmpeg播放器開發(fā)H.264解碼+OpenGL渲染工具的封裝)bug漏洞的修復(fù)和完善(openGL順利渲染解碼后的視頻文件)

demo下載地址:https://github.com/mrzhao12/FFmpegDecodeH264_OpenGLESRenderYUV

更多資源歡迎進(jìn)入學(xué)習(xí)交流平臺(tái):QQ群:224110749

有問題也可以聯(lián)系我QQ:1107214478(一個(gè)做iOS開發(fā)的小生,但是我并不覺的我是在做iOS)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末蕾域,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子到旦,更是在濱河造成了極大的恐慌旨巷,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,509評(píng)論 6 504
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件添忘,死亡現(xiàn)場(chǎng)離奇詭異采呐,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)搁骑,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,806評(píng)論 3 394
  • 文/潘曉璐 我一進(jìn)店門斧吐,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人仲器,你說(shuō)我怎么就攤上這事煤率。” “怎么了乏冀?”我有些...
    開封第一講書人閱讀 163,875評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵蝶糯,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我辆沦,道長(zhǎng)昼捍,這世上最難降的妖魔是什么识虚? 我笑而不...
    開封第一講書人閱讀 58,441評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮妒茬,結(jié)果婚禮上担锤,老公的妹妹穿的比我還像新娘。我一直安慰自己乍钻,他們只是感情好肛循,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,488評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著团赁,像睡著了一般育拨。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上欢摄,一...
    開封第一講書人閱讀 51,365評(píng)論 1 302
  • 那天熬丧,我揣著相機(jī)與錄音,去河邊找鬼怀挠。 笑死析蝴,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的绿淋。 我是一名探鬼主播闷畸,決...
    沈念sama閱讀 40,190評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼吞滞!你這毒婦竟也來(lái)了佑菩?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,062評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤裁赠,失蹤者是張志新(化名)和其女友劉穎殿漠,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體佩捞,經(jīng)...
    沈念sama閱讀 45,500評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡绞幌,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,706評(píng)論 3 335
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了一忱。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片莲蜘。...
    茶點(diǎn)故事閱讀 39,834評(píng)論 1 347
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖帘营,靈堂內(nèi)的尸體忽然破棺而出票渠,到底是詐尸還是另有隱情,我是刑警寧澤芬迄,帶...
    沈念sama閱讀 35,559評(píng)論 5 345
  • 正文 年R本政府宣布庄新,位于F島的核電站,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏择诈。R本人自食惡果不足惜械蹋,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,167評(píng)論 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望羞芍。 院中可真熱鬧哗戈,春花似錦、人聲如沸荷科。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,779評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)畏浆。三九已至胆胰,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間刻获,已是汗流浹背蜀涨。 一陣腳步聲響...
    開封第一講書人閱讀 32,912評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留蝎毡,地道東北人厚柳。 一個(gè)月前我還...
    沈念sama閱讀 47,958評(píng)論 2 370
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像沐兵,于是被迫代替她去往敵國(guó)和親别垮。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,779評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容