記錄我做直播的腳印
1.下載ijkplayer到本地
2.用命令cd ijkplayer
打開目錄
//查看目錄下邊的文件
$ ls
COPYING.GPLv2 compile-android-j4a.sh init-android-openssl.sh
COPYING.GPLv3 config init-android-prof.sh
COPYING.LGPLv2.1 doc init-android.sh
COPYING.LGPLv2.1.txt extra init-config.sh
COPYING.LGPLv3 ijkmedia init-ios-openssl.sh
MODULE_LICENSE_APACHE2 ijkprof init-ios.sh
NEWS.md init-android-exo.sh ios
NOTICE init-android-j4a.sh tools
README.md init-android-libsoxr.sh version.sh
android init-android-libyuv.sh
3.下載ffmpeg
執(zhí)行命令 ./init-ios.sh
$ ./init-ios.sh
git version 2.8.4 (Apple Git-73)
== pull gas-preprocessor base ==
Cloning into 'extra/gas-preprocessor'...
remote: Counting objects: 440, done.
remote: Total 440 (delta 0), reused 0 (delta 0), pack-reused 440
Receiving objects: 100% (440/440), 72.66 KiB | 46.00 KiB/s, done.
Resolving deltas: 100% (191/191), done.
Checking connectivity... done.
== pull ffmpeg base ==
Cloning into 'extra/ffmpeg'...
remote: Counting objects: 494448, done.
remote: Total 494448 (delta 0), reused 0 (delta 0), pack-reused 494448
Receiving objects: 100% (494448/494448), 179.12 MiB | 2.87 MiB/s, done.
Resolving deltas: 100% (382172/382172), done.
Checking connectivity... done.
== pull ffmpeg fork armv7 ==
Cloning into 'ios/ffmpeg-armv7'...
Checking connectivity... done.
Counting objects: 494448, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (111157/111157), done.
Writing objects: 100% (494448/494448), done.
Total 494448 (delta 382172), reused 494448 (delta 382172)
Switched to a new branch 'ijkplayer'
/Users/Jerry/Downloads/ijkplayer-master
== pull ffmpeg fork arm64 ==
Cloning into 'ios/ffmpeg-arm64'...
Checking connectivity... done.
Counting objects: 494448, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (111157/111157), done.
Writing objects: 100% (494448/494448), done.
Total 494448 (delta 382172), reused 494448 (delta 382172)
Switched to a new branch 'ijkplayer'
/Users/Jerry/Downloads/ijkplayer-master
== pull ffmpeg fork i386 ==
Cloning into 'ios/ffmpeg-i386'...
Checking connectivity... done.
Counting objects: 494448, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (111157/111157), done.
Writing objects: 100% (494448/494448), done.
Total 494448 (delta 382172), reused 494448 (delta 382172)
Switched to a new branch 'ijkplayer'
/Users/Jerry/Downloads/ijkplayer-master
== pull ffmpeg fork x86_64 ==
Cloning into 'ios/ffmpeg-x86_64'...
Checking connectivity... done.
Counting objects: 494448, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (111157/111157), done.
Writing objects: 100% (494448/494448), done.
Total 494448 (delta 382172), reused 494448 (delta 382172)
Switched to a new branch 'ijkplayer'
/Users/Jerry/Downloads/ijkplayer-master
4.編譯ffmoeg
cd ios ./compile-ffmpeg.sh clean ./compile-ffmpeg.sh all
//
$ ./compile-ffmpeg.sh clean
====================
[*] check xcode version
====================
FF_ALL_ARCHS = armv7 arm64 i386 x86_64
==================
clean ffmpeg-armv7
==================
/Users/Jerry/Downloads/ijkplayer-master/ios
clean ffmpeg-arm64
==================
/Users/Jerry/Downloads/ijkplayer-master/ios
clean ffmpeg-i386
==================
/Users/Jerry/Downloads/ijkplayer-master/ios
clean ffmpeg-x86_64
==================
/Users/Jerry/Downloads/ijkplayer-master/ios
clean build cache
=================
clean success
//編譯各個版本成靜態(tài)庫
./compile-ffmpeg.sh all
因?yàn)樾畔⑻嗔?我就沒復(fù)制惹资。
添加靜態(tài)庫:
屏幕快照 2016-12-23 下午1.28.08.png
5.現(xiàn)在ffmpeg已經(jīng)編譯成功
可以在你的工程導(dǎo)入IJKMediaFramework
可以運(yùn)行ijkplayer的demo 了。
屏幕快照 2016-12-23 下午1.31.22.png
6.制作IJKMediaFramework
靜態(tài)庫揩慕。
1.按照圖示的路徑打開項(xiàng)目
項(xiàng)目路徑
2.設(shè)置release
選擇target
設(shè)置release
3.對模擬器和真機(jī)分別運(yùn)行
選擇文件夾右鍵->show in finder
找到prodects右鍵-》show in finder
將文件夾Release-iphones 和Release-iphonesimulator中的文件合并耻瑟。
真機(jī)的靜態(tài)庫:
真機(jī)的靜態(tài)庫
模擬器的靜態(tài)庫:
模擬器 的靜態(tài)庫
合并的命令:
lipo -create "真機(jī)版本路徑" "模擬器版本路徑" -output "合并后的文件路徑"
我自己的命令:
lipo -create /Users/Jerry/Library/Developer/Xcode/DerivedData/IJKMediaDemo-ejjmowghejcpthhaznyhnoshrphz/Build/Products/Release-iphonesimulator/IJKMediaFramework.framework/IJKMediaFramework /Users/Jerry/Library/Developer/Xcode/DerivedData/IJKMediaDemo-ejjmowghejcpthhaznyhnoshrphz/Build/Products/Release-iphoneos/IJKMediaFramework.framework/IJKMediaFramework -output /Users/Jerry/Desktop/IJKMediaFramework
然后將合并成功的靜態(tài)庫替換剛才Release-iphoneos->IJKMediaFramework-->IJKMediaFramework。
這個framework就可以使用了党觅。
我是已經(jīng)合并成功的肌厨」鐾瘢可以直接下載使用[包含真機(jī)和模擬器]
下載地址
文件較大墨状,所以暫時用了百度網(wǎng)盤卫漫。
7.測試是否正常使用。
測試的時候新建的工程要添加好了那些lib肾砂,然后導(dǎo)入剛才合成的framework
測試可以正常使用
大家可以下載demo運(yùn)行一下