DVRRDK的系统开发
来源:互联网 发布:知识付费行业数据 编辑:程序博客网 时间:2024/06/05 00:42
DVRRDK的系统开发
一、系统环境的搭建
1、修改官方的shell文件mksdboot.sh,文件系统816x-dvr-rdk-rootfs-1.0.tar.gz在官网下载,制作SD启动卡。
2、安装DVRRDK开发库DVRRDK_04.01.00.02,如下图所示。
3、在路径/home/***/dvrrdk/DVRRDK_04.01.00.02/dvr_rdk下,执行指令
make -s sys_all
以完成整个开发库的全编译。
4、这里重点要修改几个地方,
1)由于我们使用的是DM8168的TI_EVM 板,因此我们必须在路径/home/***/dvrrdk/DVRRDK_04.01.00.02/dvr_rdk下,修改Rules.make文件,
2)在路径
/home/***/dvrrdk/DVRRDK_04.01.00.02/dvr_rdk/mcfw/src_bios6/cfg/ti816x下面修改config_1G_256MLinux.bld文件,(1G代表系统的DDR为1G,256M代表mem为256M),具体修改如下图所示,DSP的代码段与数据段都多添加2MB,那么SR1必须缩小4MB,才可使得整体大小为256MB。
5、完成上述修改后,同样在路径/home/***/dvrrdk/DVRRDK_04.01.00.02/dvr_rdk下,执行命令: make -s sys_all ,至此,系统才算搭建完毕。
二、 系统软件开发流程(基于MCFW软件架构)
1、参考路径/home/***/dvrrdk/DVRRDK_04.01.00.02/dvr_rdk/docs/Trainings下文件DVR_RDK_McFW_Link_API_Training.pdf,熟悉MCFW的link配置。下图是多核的软件框图。
采集、编解码、显示的软件流程图
Link机制
Link类型
2、开发方法
1)在DVRRDK的官方demo里面修改代码后,
Linux 端(A8)编译命令:
make -s dvr_rdk_linux
在文件夹
DVRRDK_04.01.00.02/dvr_rdk/bin/ti816x/bin/
生成
dvr_rdk_demo_mcfw_api.out
Bios6 端(DSP)编译命令:
make -s dvr_rdk_bios6
在文件夹
DVRRDK_04.01.00.02/dvr_rdk/bin/ti816x/firmware/
生成
dvr_rdk_fw_c6xdsp_1024M_256M.xe674
dvr_rdk_fw_m3video_1024M_256M.xem3
dvr_rdk_fw_m3vpss_1024M_256M.xem3
2)将所有代码写到同一个文件下面,编写makefile以及Rules.make(规则文件),
3)具体代码分析 cap_enc_save_dsp_dis
该代码实现了在MCFW框架下采集、编码、 DSP 灰度处理、显示及文件保存的功能。主要使用到了ARM( Cortex-A8)、M3 VPSS、M3 VIDEO以及DSP四个核。除了生成运行于 ARM( Cortex-A8)Linux 的可执行程序外,还要编译出新的DSP固件,用来加载运行。该代码的MCFW架构如下图所示。
编译
将源码例程拷贝到 Ubuntu下,进入src目录。修改 makefile 中的
DVR_RDK_ROOT_PATH 和 NFS_PATH。其中
DVR_RDK_ROOT_PATH 为DVRRDK_04.01.00.02安装路径,
NFS_PATH 为编译产生的目标文件的路径。
编译完成后,在DSP和Host目录下会生成build目录,包含编译过程的中间文件,以及目标可执行文件。修改完成后执行make即可:
Host# make clean //注意要清除一下
Host# make
生成如下文件
生成的dvr_rdk_fw_c6xdsp_1024M_256M.xe674覆盖
/opt/dvr_rdk/ti816x/firmware中dvr_rdk_fw_c6xdsp_1024M_256M.xe674文件,
在开发板系统上初始化:
Target# cd /opt/dvr_rdk/ti816x
Target# ./init.sh
Target# ./load.sh
Target# ./bin/cap_enc_save_dsp_dis.out
即可运行系统。效果图如下。
- DVRRDK的系统开发
- DM8168 DVRRDK开发总结
- DM8168 DVRRDK开发总结
- ti8148 dvrrdk开发小结
- DM8168 DVRRDK-link开发讲解
- DM8168/DVRRDK开发中Link模块的创建以及alg自己算法的植入
- DM8168 DVRRDK DSP算法开发(OSD)
- DM8168的DVRRDK包的编译
- DM8168开发——DVRRDK安装及nand启动设置
- dvrrdk dsp中添加算法的lib库
- DVRRDK link framework
- DM8168 DVRRDK软件框架研究
- DM8168 DVRRDK软件框架研究 .
- DM8168 DVRRDK软件框架研究
- DM8168 DVRRDK软件框架研究
- DM8168 DVRRDK软件框架研究
- DVRRDK sd启动卡制作
- 工作流系统的开发
- Yarn基本命令行
- Android8.0新特性和API
- 网络编程函数使用
- Yarn核心——Protobuf
- CentOS7下Tomcat9的安装
- DVRRDK的系统开发
- Web测试
- C++软件开发经典面试题目
- 米语录学习(一)
- 设计模式汇总
- 决策树实战项目-鸢尾花分类
- appium升级1.6 + iOS10 +Xcode8
- Qt 如何处理密集型耗时的事情(频繁调用QApplication::processEvents)
- 如何对文本框进行功能测试