新闻中心

EEPW首页>嵌入式系统>设计应用> 基于DM368的视频捕获与编解码系统设计

基于DM368的视频捕获与编解码系统设计

作者: 时间:2016-09-12 来源:网络 收藏

计的结构图如图5所示。

e.jpg

在本次编解码软件设计中,自带了和H.264编解码算法。在安装好的开发环境中,进入算法库文件夹,查找压缩算法与解压算法。图中显示的库文件提供的是可以直接被APP端使用的,下一步就是编写相应的应用程序。

f.jpg

设计视频处理应用程序,主要需要编写Capture、encodedecode和display3个部分的代码。在Capture中主要使用前缀为 “Capture_”的函数,这些函数直接使用了V4L2的相应函数接口,从而帮助软件从底层获取与视频处理相关的数据。其主要执行流程如图所示。

g.jpg

在视频编解码软件部分中,主要使用了自带的视频编解码算法,在编程之前需要首先配置encodedecode.cfg文件。配置参数如下:

h.jpg

配置完成后,在应用程序中便可以创建编码算法句柄调用算法库。编码与解码都需要首先打开engine,然后创建算法句柄,接着操作算法控制函数与算法处理函数。最后执行完毕删除编码算法句柄,并关闭engine。以编码为例,流程图如图所示。

i.jpg

在Linux下实现视频输出程序display,是通过操作framebuffer实现的。该帧缓存提供了个多种操作方法。开发者想要在显示屏中显示视频其实就是将解压后的视频数据写入framebuffer中来完成的。至此视频处理应用程序编写完毕。

4 系统测试

在Linux开发环境中打开终端,更改路径进入源代码文件夹:cd/dvsdk_2_10_01_18/drsdk_demos_2_10_00_17/dm365/encodedecode。输入 make,Makefile文件会自动编译整个工程。将编译好的整个文件夹复制到nfs共享路径下。使用串口与网线,将电路板与开发主机相连。最后连接显示器与模拟视频输出端口。上电之后更改当前路径到测试目录,首先加载该视频测试程序所需的驱动模块:./loadmodules_sd.sh。加载完成后打开运行测试程序./video可以看到编解码视频的输出情况,移动摄像头可以看到视频有明显延时。显示情况如图所示。

j.jpg

5 结论

经实验表明,该系统可以对摄像头采集到的模拟视频信号进行采样量化,并实现对原始视频数据编解码的功能,最终将视频数据稳定输出到显示屏上。本次设计达到了预期的目标。芯片功能比较全面,硬件设计相对更简便,又拥有丰富的软件资源和算法库支持,可以大大缩减相关视频处理项目的开发周期,并同时在很大程度上增强系统可靠性。该设计除此之外该系统还支持H.264编解码,可以通过网络接口和Linux运行平台进行网络传输。整个平台功能丰富可扩展性高,为其他视频处理设计提供了参考。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭