完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
本帖最后由 一只耳朵怪 于 2018-6-22 10:46 编辑
当编码后的帧数据通过无线方式传送到接收端,难以避免丢帧和误码的情况。 我们发现基于DMAI接口的VDEC2_process()当出现帧内误码时,会导致原本应该 输出显示的帧数据没有输出,造成VDEC2使用的BufTab爆满,无法再通过Fifo_get() 获得新的译码空间,导致decode程序挂起。 请问这种情况下,应采取什么措施才能解决,让decode程序能够顺利的运行下去? Best regard! 2012.2.23 |
|
相关推荐
8个回答
|
|
1. 这个基本属于解码端差错控制问题,应该抛弃数据,Seek到下一个IDR帧进行解码
|
|
|
|
非常感谢您的回复,为解决问题指明了方向。 我的理解解码端差错控制问题有两方面的解决策略: 1) 堵截的办法。就像您说的,发现帧中有错误数据就抛弃,并seek到下一个IDR解码。如果对一帧的全部数据增加校验,代价较高,是否允许提取帧中的某些关键数据作FEC控制,只要保证关键数据的正确,就能确保解码器顺利完成一帧的解码,即使图像出现马赛克? 如果可行的话,帧中的哪些数据是关键数据? 2)疏导的办法。当出现解码器BufTab爆满时,能否通过强制释放某些buffer的策略,让解码器能够正常运行下去而不至于 挂在那里? 通过DMAI接口能够实现么,哪些函数可以完成这些功能? 不好意思,问题有些复杂。还请您百忙中,稍微多点时间解答一下,方便的话最好提供一些参考资料,这些问题对于我们至关重要,且有线IP传输的情况下也有类似问题,因此具有典型意义。 Best regard! |
|
|
|
hjh22678 发表于 2018-6-22 01:59 1. 增强信道编码纠错能力 2. 视频用多条带编码,解码器发现数据错误,就用前一个条带的参考数据 3. 编码器设计的时候要参考标准文档的解码器缓冲区规范,这样就可以保证解码器的缓冲区不出现上溢出和下溢出 |
|
|
|
rwd2016 发表于 2018-6-22 02:18 非常感谢您的及时回复。 您回复的第2条应该是解码器内部的处理吧,用户能干涉么? 我们使用了TI提供的decode demo程序为解码器申请的缓冲区,在播放264文件时已经证明过是没问题的。 现在我们发现,当输入到解码器的帧数据有问题时,可能导致解码器的缓冲区出现上溢。所以我们想采用 两种策略或其一解决这个问题,提高解码器的容错能力。 方法一:当发现解码器缓冲区上溢是,能否通过TI提供的DMAI接口释放部分缓冲区,让代码继续运行下去? 方法二:为输入解码器缓冲区的帧数据中某些关键参数增加FEC保护,这些参数的正确能够确保解码器不会出现 缓冲区上溢? DM365的解码器就像一个黑盒子,这方面的资料太少了。还请您稍微详细解释,不胜感激。 |
|
|
|
hjh22678 发表于 2018-6-22 02:31 求高人解答,自己顶! |
|
|
|
1. 简单的说,你必须保证你给TI的解码器的数据是正确的,TI的解码程序只会正确的解码,不会干别的,所以一切差错处理无论是信源还是信道还有缓冲区管理都必须你的应用程序去完成。 |
|
|
|
rwd2016 发表于 2018-6-22 02:56 感谢你的回复,从资料上看DM365的解码器还是有较强的抗干扰能力的,解码器通过不同的返回值指示译码结果。 具体的说,当出现下面的情况: Vdec2_process()=Dmai_EBITERROR 且 Buffer_getNumBytesUsed()=0 应用程序若不想退出,应如何处理 比较好? Thanks & Best regard! |
|
|
|
hjh22678 发表于 2018-6-22 03:08 下面貌似一点儿信息: e2e.ti.com/.../88083.aspx |
|
|
|
只有小组成员才能发言,加入小组>>
315 浏览 1 评论
518 浏览 2 评论
NA555DR VCC最低电压需要在5V供电,为什么用3.3V供电搭了个单稳态触发器也使用正常?
758 浏览 3 评论
MSP430F249TPMR出现高温存储后失效了的情况,怎么解决?
643 浏览 1 评论
对于多级放大电路板,在PCB布局中,电源摆放的位置应该注意什么?
1115 浏览 1 评论
AT32F407在USART2 DMA发送数据时,接包接到了要发送的数据,程序还是处于等待传输完成的标识判断中,为什么?
9浏览 28评论
18浏览 23评论
请问下tpa3220实际测试引脚功能和官方资料不符,哪位大佬可以帮忙解答下
232浏览 20评论
请教下关于TAS5825PEVM评估模块原理图中不太明白的地方,寻求答疑
191浏览 14评论
两个TMP117传感器一个可以正常读取温度值,一个读取的值一直是0,为什么?
51浏览 13评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-19 19:24 , Processed in 1.129643 second(s), Total 92, Slave 75 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号