ijkplayer编译so库的配置和生成大小研究
linux 计算文件是KB=1000B? 而window是1KB = 1024B?
ijk默认的库module-lite.sh 测试文件:
MKV 和AVI不能播放
FLV,MP4,MOV可以放
module-default编译后,支持MKV的格式。还有AVI也支持了。
1,module-lite.sh基本组件 配置
# Component options:
//录制手机屏幕,摄像头数据,UVC设备才用到。
export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-avdevice"
export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-avcodec"
export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-avformat"
export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-avutil"
export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-swresample"
export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-swscale"
export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-postproc"
export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-avfilter"
export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-avresample"
export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-network"
avcodec 主编解码库 avformat 解封装格式库 avutil 工具库,大部分用
swscale 像素转换 swresample 音频采样(无音频可不用) avfilter 滤镜水印特效(不编辑可不用) avresample也是音频用 postproc多媒体后处理 enable-network 激活网络流
2,编译module-default出错。
把配置文件 用这个module-default来编译,
module.sh -> module-default.sh
提示出错。
./libavutil/timer.h:38:31: fatal error: linux/perf_event.h: No such file or directory
# include <linux/perf_event.h>
找不到这个库。
解决方法:(不需要编译这个配置perf参数)
module-default.sh 加 export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-linux-perf"