你好,歡迎來到IOS教程網

 Ios教程網 >> IOS編程開發 >> IOS開發基礎 >> FFmpeg在iOS上完美編譯

FFmpeg在iOS上完美編譯

編輯:IOS開發基礎

1.jpg

最近剛接觸ffmpeg,找了很多相關的編譯資料,都沒有編譯成功,前幾天在 github上找到一個腳本(https://github.com/kewlbear/FFmpeg-iOS-build-script),就可完美編譯

准備條件

  • 先下載文件:https://github.com/libav/gas-preprocessor,

    復制gas-preprocessor.pl到/usr/sbin下,

    修改文件權限:chmod 777 /usr/local/bin/gas-preprocessor.pl

  • 安裝yasm

具體步驟如下:

1. 下載腳本:https://github.com/kewlbear/FFmpeg-iOS-build-script

2. 解壓,找到文件 build-ffmpeg.sh

3. 執行服本文件:./build-ffmpeg.sh, 由於本人沒有事先安裝Yasm 執行腳本文件會出錯,

如下:

MAC:FFmpeg-iOS-build-script-master-2 jinsonglnan$ ./build-ffmpeg.sh 
Yasm not found
Homebrew not found. Trying to install...
Whoops, the Homebrew installer has moved! Please instead run:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Also, please ask wherever you got this link from to update it to the above.
Trying to install Yasm...
./build-ffmpeg.sh: line 67: brew: command not found

意思就是說,沒有yasm, 看到提示執行 ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"安裝

4.編譯完成後,終端進入FFmpeg-iOS-build-script目錄,然後輸入./build-ffmpeg.sh lipo,這個命令是講.a文件合並成一個

5.把ffmpeg-iOS文件加入到工程中

6.添加一個頭文件引用 #include "avformat.h"

添加一個api語句:av_register_all();給一個類文件.m後綴改為.mm,開啟混編模式。

運行工程,如果沒有報錯,則表明編譯成功

7.其他注意細節 

編譯的時候報錯: 'libavcodec/avcodec.h' file not found ,修改Header search paths 裡的路徑:$(PROJECT_DIR)/FFmpeg-iOS/include

加入External libraries:

libz.dylib
libbz2.dylib
libiconv.dylib

8.編譯好,寫了個demo:點此下載

  1. 上一頁:
  2. 下一頁:
蘋果刷機越獄教程| IOS教程問題解答| IOS技巧綜合| IOS7技巧| IOS8教程
Copyright © Ios教程網 All Rights Reserved