IOS开源播放器ijkplayer从编译到播放(上)

ijkplayer:来自哔哩哔哩的开源播放器


下面就整理一下从下载,编译,到成功集成播放的过程

一、下载、编译

首先我们看看Github上的Readme

git clone https://github.com/Bilibili/ijkplayer.git ijkplayer-ios
cd ijkplayer-ios
git checkout -B latest k0.6.2

./init-ios.sh

cd ios
./compile-ffmpeg.sh clean
./compile-ffmpeg.sh all

# Demo
#     open ios/IJKMediaDemo/IJKMediaDemo.xcodeproj with Xcode
# 
# Import into Your own Application
#     Select your project in Xcode.
#     File -> Add Files to ... -> Select ios/IJKMediaPlayer/IJKMediaPlayer.xcodeproj
#     Select your Application's target.
#     Build Phases -> Target Dependencies -> Select IJKMediaFramework
#     Build Phases -> Link Binary with Libraries -> Add:
#         IJKMediaFramework.framework
#
#         AudioToolbox.framework
#         AVFoundation.framework
#         CoreGraphics.framework
#         CoreMedia.framework
#         CoreVideo.framework
#         libbz2.tbd
#         libz.tbd
#         MediaPlayer.framework
#         MobileCoreServices.framework
#         OpenGLES.framework
#         QuartzCore.framework
#         UIKit.framework
#         VideoToolbox.framework
#
#         ... (Maybe something else, if you get any link error)
# 

第一步、先将源码克隆到本地
git clone https://github.com/Bilibili/ijkplayer.git ijkplayer-ios

第二步、然后进入项目文件夹,执行init-ios.sh,这一步是去下载ffmepg,可能会比较慢,耐心等待
cd ijkplayer-ios
./init-ios.sh


第三步、下载执行完成之后进入ios目录执行编译
cd ios
./compile-ffmpeg.sh clean
./compile-ffmpeg.sh all

完成


二、项目集成


下载编译完成之后可以进入ios文件夹,找到IJKMediaDemo项目,直接测试,这是来自官方的Demo
ios/IJKMediaDemo/IJKMediaDemo.xcodeproj

接下来,我们就把编译好的IJKPlayer集成进我们的项目

第一步、新建或打开一个Xcode项目,如图


第二步、将编译好的IJKPlayer项目添加进你自己的项目

Xcode -> File -> Add Files to ...



选择编译好的ios/IJKMediaPlayer/IJKMediaPlayer.xcodeproj



第三步、选中项目,点击Build Phase,找到Target Dependencies,点击加号添加,选择IJKMediaFramwork



第四步、继续在Build Phase中选择Link Binary with Libraries,点击添加,把以下FramwWork都添加进去
#         IJKMediaFramework.framework
#
#         AudioToolbox.framework
#         AVFoundation.framework
#         CoreGraphics.framework
#         CoreMedia.framework
#         CoreVideo.framework
#         libbz2.tbd
#         libz.tbd
#         MediaPlayer.framework
#         MobileCoreServices.framework
#         OpenGLES.framework
#         QuartzCore.framework
#         UIKit.framework
#         VideoToolbox.framework


全部完成后如图:



这时候就成功的把IJKPlayer集成到项目中了,下面介绍一种方法,将编译好的IJKPlayer打包成FrameWork静态库,更加“便携”

完成


三、打包FrameWork

第一步、还是进入到ios目录,找到IJKMediaPlayer文件夹,这个就是编译好的IJKPlayer,打开IJKMediaPlayer.xcodeproj,点击Edit Scheme



选择Release





第二步、设置好 scheme 后, 分别选择真机和模拟器,然后分别Command + B进行编译,然后进入Finder找到打包好的IJKMediaFrameWork





上面的是真机版本的,下面的是模拟器版本的,然后要将他们合并



要合并的文件如下图




合并的命令为:lipo -create "真机版本IJKMediaFramework路径" "模拟器版本IJKMediaFramework路径" -output "目标文件路径/IJKMediaFramework"


合并完成后,用新生成的IJKMEdiaFramework,覆盖Release-iphoneos文件夹内,IJKMediaFramework.framework中的IJKMEdiaFramework,然后Release-iphoneos文件夹内的IJKMediaFramework.framework就是打包好的最终版本,可以直接作为静态库添加到项目中使用,过程可能有点复杂,有问题大家可以在留言中和我交流。


IJKPlayer的编译和集成就介绍到这,基本的使用将在下篇介绍

发布了13 篇原创文章 · 获赞 20 · 访问量 6万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览