实战ffmpeg2.8.3+X264的编译

最新的ffmpeg已经是2.8.3版本了.加上所在的项目需要使用H264.所以有如题所示的需求.

环境:

   系统: MAC OS X EI Captitan  (10.11.1)

   Xcode: 7.1

X264的编译

 还是参考http://blog.sina.com.cn/s/blog_47522f7f0102vcbj.html的方式.

(1)首先到http://www.videolan.org/developers/x264.html 下载最新的libx264源码包.取名为X264

(2)到https://github.com/kewlbear/x264-ios 下载x264的一键编译脚本文件,跟X264文件夹同级

(3)运行脚本./build-x264.sh;

注意:

  该脚本需要分别运行 

    ./build-x264.sh arm64

    ./build-x264.sh x86_64

    ./build-x264.sh i386

    ./build-x264.sh armv7  .才能得到支持arm64,x86_64,i386,armv7 的四个版本(网上说的不能一次得到四个版本的原因).然后使用lipo -create合并成一个X264.a文件和include文件夹.

ffmpeg 2.8.3+X264的编译

 准备条件:

   先下载文件:https://github.com/libav/gas-preprocessor复制gas-preprocessor.pl到/usr/local/bin下.

注意在OS X 10.11.1下由于权限问题,一直不能把gas-preprocessor.pl到/usr/local/bin下.

这里有两种方式:

1.在终端下输入: sudo chmod -R 777 /usr/local/bin    修改bin目录的权限.修改成功后,就可以拷贝到目录下了.

2.通过安装brew install来修改/bin的权限(我是使用这个方式的).

  具体安装 brew install 看下我另一博客(http://blog.csdn.net/nogodoss/article/details/45096025).

ffmpeg2.8.3的编译

 FFmpeg-IOS-build-script下载地址:https://github.com/kewlbear/FFmpeg-iOS-build-script.

 这个脚本支持到2.8.3版本.但是这个版本不支持下载和解压缩ffmpeg的功能.为了支持自动化,我加入以下的代码:

VERSION="2.8.3"


//下载ffmpeg 2.8.3版本

echo "download ffmpeg"

set -e

if [ ! -e ffmpeg-${VERSION}.tar.bz2 ]; then

echo "Downloading ffmpeg-${VERSION}.tar.bz2"

    curl -O  http://ffmpeg.org/releases/ffmpeg-${VERSION}.tar.bz2

else

echo "Using ffmpeg-${VERSION}.tar.bz2"

fi

exit


#//解压缩下载的文件夹

tar jxvf ffmpeg-${VERSION}.tar.bz2


加入X264库

  build-ffmpeg.sh脚本已经包含有x264的编译选项.但是我稍作了改变

  (要把前面编译X264生成的include和lib放到ffmpeg2.8.3文件夹下)

#CONFIGURE_FLAGS="--enable-cross-compile --disable-debug --disable-programs \

#                 --disable-doc --enable-pic"


#if [ "$X264" ]

#then

# CONFIGURE_FLAGS="$CONFIGURE_FLAGS --enable-gpl --enable-libx264"

#

#    echo CONFIGURE_FLAGS

#fi


//修改成一句了

CONFIGURE_FLAGS="--enable-cross-compile --disable-debug --disable-programs \

--disable-doc --enable-pic --enable-gpl --enable-libx264"


然后执行buil-ffmpeg.sh.在FFmpeg-iOS文件夹下生成了include文件夹和lib文件夹, 通过lipo -info. 得到我想要的ffmpeg版本.


ffmpeg2.8.3+X264的调用

  加入ffmpeg下include和lib文件到xcode下并在xcode工程中设置正确的header和lib路径.

 加入X264所需要的include文件x264_config.h和x264.h 和X264.a文件.记得设置header和lib路径.

这样就可以编译成功了.




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值