(和大家分享一个自己在tvp7002上面调试的一点小心得)
(欢迎技术交流 xubbwd@gmail.com)
问题:
在tvp7002做内同步bt601的输出给DM8148的VIP0端口;DM8148可以对视频信号进行采集,但是问题是在摄像头采集画面静止或者是运动量比较小的时候,视频画面是正常的;如果摄像头采集画面运动量非常大的时候,视频会出现明显的卡顿,画面断裂;
分析:
这个问题挺诡异的,这里不涉及到视频的编解码以及视频动态检测,但是在运动量大的时候出现卡顿,这一点是非常难以理解的;如果是在固定的间隔或者是固定的频率视频卡顿,这是可以理解为帧率没有匹配上,在获取buffer数据的时候没有同步或者是加锁;
解决:
内同步输出是一个关键,同步信号在YUV里面;检测到视频的计时基准码,在视频画面运动量大的时候更加容易检测到0xFF0000这样的字节流,导致错误的认为是新的一帧数据的开始,出现画面卡顿也就是正常的现场了 这样就需要做一个处理了,把YUV的量化范围做一个修改为64~960;
1、设置寄存器 RGB Coarse Gain 小于 1Vpp就可以, 4bit 设置小于 0101 就可以;
2、设置寄存器 Output Formatter 的Output code range [1:0]为ITU-R BT.601 coding range (Y ranges from 64 to 940, Cb and Cr range from 64 to 960)
本帖最后由 37°男人 于 2014-6-27 10:40 编辑
邮箱:ternence.hsu@foxmail.com