DVRRDK_04.00.00.03版本里面已经实现了Venc_switchCodecAlgCh()函数来动态设置H264的codec类型(BaseLine 、main profile等)
但是我们现在使用的工程是基于DVRRDK_02.80.00.10版本的,我们想把04版本的Venc_switchCodecAlgCh实现移植到02版本里面,
但是发现需要修改的文件挺多,我们根据04版本修改了02版本的文件,添加了函数及结构体、宏定义
主要修改了如下文件:
mcfw\src_linux\mcfw_api\ti_venc.c
mcfw\interfaces\ti_venc.h
mcfw\interface\link_api\encLink.h
mcfw\src_bios6\link\m3video\iva_enc\encLink_tsk.c
mcfw\src_bios6\link\m3video\iva_enc\encLink_common.c
mcfw\src_bios6\link\m3video\iva_enc\encLink_priv.h
mcfw\interfaces\common_def\ti_venc_common_def.h
mcfw\src_bios6\links_m3video\iva_enc\encLink_h264.c
...等文件
改完之后bios6编译出错:
# !!! Current build platform is [ti814x-evm] !!!
js: "/home/berlin/workdir/dvrrdk/DVRRDK_02.80.00.10/rdk/mcfw/src_bios6/cfg/ti814x/SYSLINK_common.cfg", line 11: xdc.services.global.XDCException: xdc.PACKAGE_NOT_FOUND: /home/berlin/workdir/dvrrdk/DVRRDK_02.80.00.10/ti_tools/syslink/syslink_2_10_02_17_patched/packages/ti/syslink/ipc/rtos/package.xdc found along the package path, but no schema file was found. Ensure that the package 'ti.syslink.ipc.rtos' is completely built.
"/home/berlin/workdir/dvrrdk/DVRRDK_02.80.00.10/rdk/mcfw/src_bios6/cfg/ti814x/BIOS_c6xdsp.cfg", line 10
"/home/berlin/workdir/dvrrdk/DVRRDK_02.80.00.10/rdk/mcfw/src_bios6/main_app/MAIN_APP_c6xdsp.cfg", line 3
"./package/cfg/MAIN_APP_c6xdsp_pe674.cfg", line 401
"./package/cfg/MAIN_APP_c6xdsp_pe674.cfg", line 480
"./package/cfg/MAIN_APP_c6xdsp_pe674.cfg", line 388
gmake: *** [package/cfg/MAIN_APP_c6xdsp_pe674.xdl] Error 1
js: "/home/berlin/workdir/dvrrdk/DVRRDK_02.80.00.10/ti_tools/xdc/xdctools_3_23_01_43/packages/xdc/tools/Cmdr.xs", line 51: Error: xdc.tools.configuro: configuration failed due to earlier errors (status = 2); 'linker.cmd' deleted.
make[2]: *** [xdc_configuro] Error 1
我想问这样通过仿照04版本修改02版本rdk能否实现我想要的动态设置codec类型的功能?
如果可以是不是还需要修改其他文件?或则TI是否有适用02版本的补丁来实现codec类型的修改
多谢!