asysbang
标题:
ffmpeg图片合成视频
[打印本页]
作者:
admin
时间:
2015-12-22 18:40
标题:
ffmpeg图片合成视频
项目需求:在手机上把一些图片合成一个视频
采用ffmpeg框架实现
=====预备知识=====
能够翻墙(访问国外网站),因为有些帖子都是google搜到的
android开发,jni开发,makefile和简单的c语言
=======从头开始,ubuntu为例子=============
<1>下载ffmpeg源代码
官网:
https://ffmpeg.org/download.html
git下载地址:git clone git://source.ffmpeg.org/ffmpeg.git ffmpeg
PS:建议弄2份,1个用来做pc上的编译,另外一个用来做交叉编译(可以理解为android上的编译)
<2> 编译PC端用的ffmpeg,这样可以执行命令行的例子,可以先基本了解下ffmpeg
到ffmpeg代码目录下 执行 “./configure” 先获得配置 如果缺少啥类库就去安装
然后执行 “make -j6” 这就开始编译了,编译之后会提示“STRIP ffprobe”
<3>编译例子代码,并通过命令行执行例子
doc/examples 下面是例子代码 这里以muxing.c 这个为例子 其他的都可以一样处理
在ffmpeg根目录下执行 make examples 这样就可以编译那些例子了
如果想清空,重新编译 可以先执行 make examplesclean
编译之后在doc/examples目录下 会有muxing 这个可执行程序生成
然后执行 ./muxing xx.mp4 可以运行这个例子 结果就是生成一个xx.mp4文件 里面是一个“彩色的滚动的”视频
PS:examples目录下的Makefile文件里面添加新的example貌似不生效,所以最好是修改原来的例子的代码
<4>
编译android上的ffmpeg,并通过jni调用
参考
http://stackoverflow.com/questio ... sources-on-windows8
写一个build_android.sh
我用的是64位的电脑 unbutn15.10 ndk是r10e ffmpeg是2.8
运行这个sh,不出问题就能编译过了,得到几个so文件
写一个jni的例子,然后再修改Android.mk把这几个so引用到项目中
同时把include文件复制过去
<5> muxing.c的例子在android上运行起来
参考muxing的代码,弄到jni里面就可以
欢迎光临 asysbang (http://www.asysbang.com/)
Powered by Discuz! X2.5