调试经验--使用TI提供的jpeg解码codec
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了调试经验--使用TI提供的jpeg解码codec,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1893字,纯文字阅读大概需要3分钟。
内容图文
调试经验--使用TI提供的jpeg解码codec
codec engine机制可以让我们方便的实现在arm端调用dsp端的算法。TI免费提供了几种dsp上运行的编解码codec,可以在TI的网站上下载。
网址如下:
http://software-dl.ti.com/dsps/dsps_public_sw/codecs/C64XPlus_Video/index_FDS.html
可是,这些codec对我们而言都是一个黑盒,里面代码如何实现的,我们是看不见的。所以,一个TI的codec如何调用,对于刚接触codec engine机制的同学,应该是一个比较棘手的问题。
下面我分享一下我的codec使用心得:
一、简要说明一下codec engine的例程
通常在dvsdk的codec engine目录下的examples里面,该目录下应该就有使用帮助文档。
主要关注3个目录:codec,server,app。
分别对应Codec Engine的 Algorithm、Server及Application:
1)在Algorithm部分,写自己的算法,用VISA的API例如IVIDDEC_Fxns包装起来,并进行包配置,如包名、模块名及依赖包,模块的继承关系等,然后生成库文件及相应的包。
2)在server部分,进行内存配置,对各个段指定内存位置,用一个main()函数初始化DSP,并在cfg文件中指定需要的模块,是否使用DMA等,生成x64P。
3)在Application部分,在cfg文件中指定所使用的server及需要的模块,并与引擎关联,在C文件中使用函数Engine_open()中调用server名,VIDENC_create()中调用模块名,从而与算法关联起来,然后传递参数,运行算法。
二、编译TI提供的jpeg codec,在CCS下运行
(1),从TI网站上下载,分linux下及windows下,其实内容基本一致的。
(2),安装,安装完成后,整个目录copy到ccs的my docoment目录下。
(3),认真阅读 packages\ti\sdo\codecs\jpegenc(或jpegdec)\docs 下的 UserGuide 文档。
(4),安装需要的组件,然后用CCS打开packages\ti\sdo\codecs\jpegenc\app\Client\Build 下的pjt工程文件;
(5),根据板卡型号,copy一个同型号的cmd文件过来,改名为JPEGDecApp_DM6446.cmd,注意heap与stack不能太小; 工程中所使用的段都要分配地址。
(6),连接仿真器,注意要将ARM与DSP都连接上,否则DDR的使用会有问题。连dm6467时,在CCS setup中clk设置为10M时比较稳定。
(7),编译程序,运行。由于jpeg编解码涉及到的YUV文件较大,读写时仿真器容易异常,最好是改动程序分多次读写。
(8),查看结果。
三、jpeg的解码codec,由ARM端调用运行
(1)简化ccs的jpeg解码程序
由于实际运行时,dsp算法不能直接访问到文件,输入输出文件都由arm接口进行,在初期的调试过程中使用固定配置即可。
去掉四个文件及相关使用代码: FILE *fConfigFile, *ftestFile, *finFile, *fparamsFile;
指定解码图片的分辨率为720X480;
段的指定呢?在dvsdk的server的tcf及cfg文件中指定。
(2)建立imgdec调用框架
在dvsdk的codec engine例程中,image1_copy的codec中,没有看见执行copy的源代码?
原来是在package.xdc中指向的,是在examples\ti\xdais\dm\examples\imgdec1_copy,其中有c文件,也有CCS工程文件,可以编译出imgdec1_copy.a64P
(3)将jpeg解码程序放入imgdec框架中
此时需要注意:codec不能直接操作硬件:例如定时器、中断等。
我们之前测试jpeg解码耗时,由于使用了定时器,就导致出问题。
(4)ARM端提供jpeg文件,调用codec,输出yuv。
原文:http://blog.csdn.net/lintax/article/details/20788341
内容总结
以上是互联网集市为您收集整理的调试经验--使用TI提供的jpeg解码codec全部内容,希望文章能够帮你解决调试经验--使用TI提供的jpeg解码codec所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。