ffmpeg支持android硬件解码mediacodec
16lz
2021-01-23
1)编译配置 ./configure --enable-cross-compile --cross-prefix=/e/arm-linux-androideabi-4.6/bin/arm-linux-ardroideabi- --sysroot=/e/android/android-ndk-r8b/platforms/android-
14/arch-arm --extra-cflags="/e/android/android-ndk-r8b/platforms/android-14/arch-arm/usr/include" --target-os=android --arch=arm --enable-jni --enable-mediacodec --enable-
bsf=h264_mp4toannexb
2)手动更改ffmpeg的config.h
#define CONFIG_H264_MEDIACODEC_DECODER 1
手动改config.mak
CONFIG_H264_MEDIACODEC_DECODER=yes
3)测试代码中需要把sps设置给extradata
4)不同的手机输出的yuv格式不同,mediacodecdec_common.c的mediacodec_wrap_sw_buffer函数中需要做适配
5)最关键的一点,如果ui的surface没有设置,解码速度会很慢,甚至不如软解码。
14/arch-arm --extra-cflags="/e/android/android-ndk-r8b/platforms/android-14/arch-arm/usr/include" --target-os=android --arch=arm --enable-jni --enable-mediacodec --enable-
bsf=h264_mp4toannexb
2)手动更改ffmpeg的config.h
#define CONFIG_H264_MEDIACODEC_DECODER 1
手动改config.mak
CONFIG_H264_MEDIACODEC_DECODER=yes
3)测试代码中需要把sps设置给extradata
4)不同的手机输出的yuv格式不同,mediacodecdec_common.c的mediacodec_wrap_sw_buffer函数中需要做适配
5)最关键的一点,如果ui的surface没有设置,解码速度会很慢,甚至不如软解码。
更多相关文章
- Android控制ScrollView滑动速度
- 【Android FFMPEG 开发】Android Studio 工程配置 FFMPEG ( 动态
- 浅谈Android开机启动速度优化(含应用程序启动速度优化)
- Android中切换屏幕方向时Activity生命周期函数执行情况分析
- Android 加载图片文件 函数
- android sdk 更新速度慢的解决办法
- Android_开发 Android传感器(加速度传感器,磁场传感器,光线传感器,方