FFmpeg3.4 libavcodec协议框架增加新的decode协议

查看ffmepg下面的configure文件发现,config.h文件;解码协议的配置是通过libavcodec/allcodecs.c文件,通过查找DEC关键字生成的。

1、在libavcodec/allcodecs.c 新增REGISTER_ENCODER(MYCODE, mycode);

REGISTER_ENCODER(VP8_VAAPI, vp8_vaapi);

REGISTER_DECODER(VP9_CUVID, vp9_cuvid);

REGISTER_DECODER(VP9_MEDIACODEC, vp9_mediacodec);

REGISTER_ENCODER(VP9_VAAPI, vp9_vaapi);

REGISTER_ENCODER(MYCODE, mycode);

2、在libavcodec/ makefile新增OBJS-$(CONFIG_MYCODE_DECODER) +=mycode.o

OBJS-$(CONFIG_NOISE_BSF) += noise_bsf.o

OBJS-$(CONFIG_NULL_BSF) += null_bsf.o

OBJS-$(CONFIG_REMOVE_EXTRADATA_BSF) += remove_extradata_bsf.o

OBJS-$(CONFIG_TEXT2MOVSUB_BSF) += movsub_bsf.o

OBJS-$(CONFIG_VP9_RAW_REORDER_BSF) += vp9_raw_reorder_bsf.o

OBJS-$(CONFIG_VP9_SUPERFRAME_BSF) += vp9_superframe_bsf.o

OBJS-$(CONFIG_VP9_SUPERFRAME_SPLIT_BSF) += vp9_superframe_split_bsf.o

OBJS-$(CONFIG_MYCODE_DECODER) +=mycode.o

3、在libavcodec下新增mycode.c文件

4、./configure

make

make install

相关推荐
蓝天白云下遛狗23 分钟前
goole chrome变更默认搜索引擎为百度
前端·chrome
come112341 小时前
Vue 响应式数据传递:ref、reactive 与 Provide/Inject 完全指南
前端·javascript·vue.js
musk12121 小时前
electron 打包太大 试试 tauri , tauri 安装打包demo
前端·electron·tauri
万少2 小时前
第五款 HarmonyOS 上架作品 奇趣故事匣 来了
前端·harmonyos·客户端
OpenGL2 小时前
Android targetSdkVersion升级至35(Android15)相关问题
前端
rzl023 小时前
java web5(黑马)
java·开发语言·前端
Amy.Wang3 小时前
前端如何实现电子签名
前端·javascript·html5
今天又在摸鱼3 小时前
Vue3-组件化-Vue核心思想之一
前端·javascript·vue.js
蓝婷儿3 小时前
每天一个前端小知识 Day 21 - 浏览器兼容性与 Polyfill 策略
前端
百锦再3 小时前
Vue中对象赋值问题:对象引用被保留,仅部分属性被覆盖
前端·javascript·vue.js·vue·web·reactive·ref