Android边缓冲边播放视频(ijkplayer的编译和使用)

当你看到这篇博文的时候希望你先对这个开源项目有所了解。

 

github上的地址: https://github.com/Bilibili/ijkplayer

 

感谢哔哩哔哩团队不吝开放出来。此文主要用于帮助之后需要编译ijkplayer的同学,少走一点弯路。

 

转载请注明出处:CSDN 胖虎 http://blog.csdn.net/ljphhj

 

首先交代一下我这边编译的环境:

Ubuntu 14.04 64位

ANDROID_SDK 和 ANDROID_NDK (特指NDK r10e),这个很重要千万不要弄到ndk_r9d

 

编译ijkplayer其实并没有网上那么多的问题,之所以有问题 基本都是环境导致的。

接着我们按照github上的来操作。

0. 准备工作

(1)没装 git 的同学,装 git 咯(apt-get install git)

(2)装make 和 yasm (这里我要强调的是yasm 记得它的版本一定要是1.2.0,否则不行)

准备工作做好了,就可以开始了

 

1. 你需要将github上的代码clone下来, 放在文件夹ijkplayer中

 

git clone https://github.com/Bilibili/ijkplayer.git ijkplayer_android

 

 

2. 做一些初始化动作

cd config
rm module.sh //这个文件删除掉
ln -s module-default.sh module.sh
cd android/contrib
sh compile-ffmpeg.sh clean

 

sudo dpkg-reconfigure dash , 选择" No "

 

3.接着运行android编译ijkplayer所需要的初始化脚本(其实就是为了把ffmpeg相关的下载下来【跟视频流相关的】)

到项目主目录ijkplayer_android下,执行 sh ./init-android.sh ,然后只要放着下载了,这边理论上你要所有的都下载好而且没错误,才可以进行下一步,如果中间有错误千万别进行下一步,没有用的。

 

4.完了之后, cd android/contrib 目录下

执行 sh ./compile-ffmpeg clean

然后再执行 sh ./compile-ffmpeg all  // all表示所有cpu类型的平台都进行编译。也可以写指定的。

 

【这边期间可能会遇到很多比如什么x86里面有个错误,如下---这个我的分析就是你的yasm的版本不是1.2.0】(yasm --version)

In file included from libavcodec/x86/mpegvideoenc.c:83:0:
libavcodec/x86/mpegvideoenc_template.c: In function 'dct_quantize_ssse3':
libavcodec/x86/mpegvideoenc_template.c:151:9: error: 'asm' operand has impossible constraints
asm volatile(
^
libavcodec/x86/mpegvideoenc_template.c:186:9: error: 'asm' operand has impossible constraints
asm volatile(
^
make: *** [libavcodec/x86/mpegvideoenc.o] Error 1

 

5.如果第四步你也已经顺利通过,那么剩下的就是执行./compile-ijk.sh这个脚本了,执行完后,在android/ijkplayer目录下就是所有的可以用的demo了,生成的libs会放到demo的libs目录下。

 

6.ijkplayer全部编译完成之后,你会在android/ijkplayer目录下得到你要的demo,然后根据提供的demo就行你自己的需求修改就行了。

 

转载请注明出处:CSDN 胖虎 http://blog.csdn.net/ljphhj

 

简而言之,这些是我编译过程中的一些坑吧,如果有网友还是编译不过,欢迎留言,可以探讨交流一下。也许其他网友看到也可以帮助你。

  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 9
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值