我们知道kxmovie 是基于FFmpeg 的播放器.本来想研究ijkPlayer.看了半天头晕,因此先找个简单的播放器来分析了解下FFmpeg是如何播放视频的.
我们知道kxmovie 已经更新很久了.下载下来的代码想直接运行,根本不可能.因此这里先把项目运行起来才是关键.下面讲解如何修改项目一遍我们能运行项目.
下载项目
我们从kvmovie-github 下载项目到本地.
官网提供几个命令供我们使用
cd kxmovie
git submodule update --init
rake
但是我实验了下,根本不好使了.因此这里大家就不用实验了
项目改造
1.进入项目根目录
项目根目录文件
2.删除Podfile 和Podfile.lock文件
因为该项目太老了.podfile文件已经失效.因此我们需要重新生成该文件
podfile
- 打开终端,cd 到根目录
- pod init
5 修改podfile文件如下 增加 pod 'NSLogger'修改podfile文件
5 pod install
6 编译ffmpeg库.编译工程可参考前面博客
生成的文件为
lib 和include
lib中是所有的.a文件 include是头文件
7 将lib 和include 文件夹拖入到工程中
库文件加入到工程
- 添加accelerate.framework videoToolbox.framework ,audioToolbox.framwork coreMdedia.framework ,libz.tbd ,libbz2.tbd,libiconv.tbd 删除那些没用的库
工程库
9 修改header search Paths
根据LibrarySearch Paths 中的库文件路径进行修改
.a文件路径
includes
10 删除 UserHeader search Paths 中的值
UserHeader search Paths
11 修改KxMovieDecoder.m 文件
将 PIX_FMT_RGB24 修改成AV_PIX_FMT_RGB24
将avpicture_deinterlace 函数注释掉.注释掉也没事的答案
到此运行项目成功
在 MainViewController.mm中增加一个可以使用的 网络视频连接
image.png
@"rtmp://localhost:1935/rtmplive/room" 是我配置的本地服务器连接地址.
运行项目
选择room
本地服务器搭建可以参考这里
网友评论