This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

请教DM6467关于1024x768分辨率的视频处理



RT,1024x768分辨率的YUV数据通过FPGA发送到DM6467,使用自定义的Capture驱动可以采集到图像,L1-L5/EAV2SAV这些都是和FPGA约定的。

现在要解码输出,可是Davinci V4L2的驱动只有720p的歌声,应该怎么修改V4L2的驱动,来适应1024x768的分辨率。

还有采集时候FPGA发送图像可任意帧频,反正发送只要符合BT1120规范就行了。输出时,DM6467好像就不行,设置了Y/C的寄存器之后,发送完一帧后,硬件好像在自动重发原数据。请问硬件上的机制是这样的吗?

  • Hua,

    DM6467的采集的SAV/EAV等长度配置,必须和输入信号完全一致。采集必须是连续的,如果中间有停顿,请复位VPIF后,在继续采集。

    设置了Y/C的寄存器之后,发送完一帧后,硬件好像在自动重发原数据。

    是的对于输出的帧率,和输出口的时钟有关系的,而输出口时钟的选择请参考数据手册里面的VIDCLKCTL寄存器。

  • 这里有两个概念,

    (1)yuv442是视屏编解码格式,如果使用bt1102这样的协议那么可以参考bt656,每一贞图像都有前导码开头,表示开始和结束,这个前导码用来同步。

    (2)720和1024图像捕捉的图片大小问题单纯只有yuv442的编码输出,那么配合HS和VS等信号。可以参考MIPI CSI这样的协议规范

  • 谢谢,问题解决了。只要Y/C寄存器设置了,硬件会自动发送寄存器对应的内存中图像,如果不更新寄存器数值的话,就是重发上一帧图像。所以需要在中断从更新Y/C寄存器数值。设计好时钟配置与BT1120的L1/L3/E2V2SAV等参数就能保证了硬件的帧率。

    之前采集1024x768图像,一直Y/C不同步图像抖动,是因为寄存器没清0,把CH2/CH3所有寄存器先清0,即使用不到的寄存器,也清0,(我配置成连续场模式,也不使能消隐数据),再配置就好了。奇怪的是在CCS中好像不需要这个清0操作,图像也不好抖动。