Android中视频输出有两种方式,一种是在java层用bmp序列函数输出。但是通常情况下,视频是在jni层解码,如果再回传给java层输出,那么程序效率较低。
另一种是在jni层直接输出,省掉回传java层的步骤,程序效率较高。
本示例代码演示了在jni层直接输出视频的方案,采用读sdcard上的bmp位图模拟解码后的视频。
实际使用时,把压缩包中的400x512_565.bmp文件push到模拟器sdcard卡。
在moto defy me525上测试通过
编译环境
1:NDK是r4版
2:SDK是2.2版
3:eclips是3.5版
4:主机是windows xp
特别提示,仅Android SDK 2.2版可以用,其他的版本需要修改源代码,重新编译才可以用。
Notice:Android jni层直接输出音频示例,Android jni层直接输出视频示例,基于ffmpeg的Android播放器开源代码,三个工程使用相同的库,相同的方法和技巧,可相互参考。
下载地址: https://files.cnblogs.com/mcodec/ffvideo1.7z