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.

DM8168 4CH 1080p30fps ENC 如何输入,性能如何?

Other Parts Discussed in Thread: TVP5158

各位好,在DM8168DVR_RDK 《DM816x_DVR_RDK_UseCaseGuide_SD_HD_Encode_Card.pdf》这篇文档中看到DM8168可实现4路1080p30fps编码,但demo是利用TVP5158输入的PAL信号实现的伪1080p,请问如果要实现真正的输入4路1080P,该怎么做?

我前端打算用FPGA,但是还是没有想好如何用8bit的数据线传输1080P信号,需要采用类似多路PAL的行复用模式吗?

还有,DM8168只有3路硬件编码器,如何实现同时压缩4路,性能如何?还没有深入看代码,有经验的朋友请给点儿指导,谢谢!

  • Hi , DM8168是可以的。

    虽然只有2个VIN口,但是每个VIN口分为A、B各8个bit。换句话说,类似于BT656的传输方式,时钟增加为148.5MHz就可以在8bit上传输1080p30了。

    AB两个口是共用一个pixel clock的。这样就具备了4路1080p30的接入能力。

    而那3路硬件编码器,其单个编码能力为1080p60以上,所以相当于2个1080p30.   所以8168的编码能力可以按照6路1080p30算。

    代码里面可以指定如何分配编码器的资源的。

  • 谢谢回复,基本解答了我的疑问;

    您提到“AB两个口是共用一个pixel clock的。这样就具备了4路1080p30的接入能力。”,我感觉AB口应该是用独立的pixel clock吧?

  • Hi, 

    不好意思,  这里表述没有比较清楚。

    A/B口是允许分开供给时钟的。你如果用FPGA的话,建议的做法是两路视频公用同一个时钟,分别接到VIN[0]A_CLK,VIN[0]B_CLK上来做。

    BR,

    Eason

  • 你好,谢谢回复;

    请问为什么建议两路视频公用同一时钟呢,有什么好处。两路视频进入FPGA时,应该是两个独立的时钟,如果这么做有好处的话,我可以考虑在FPGA内部统一到同一时钟,但是时钟不同步导致的周期性黑屏问题我还没想好如何处理;如果用同一时钟不是必须的话,我考虑用两个时钟VIN[0]A_CLK,VIN[0]B_CLK独立处理两路视频。请再给出进一步的建议,谢谢!

  • Hi,

    “时钟不同步的周期性黑屏” 是什么意思? FPGA内部应该能够进行同步的。

    这里我更正一下,A/B的时钟目前是不要求接同一个了 。

    1, both the ports are independent, so you could have completely different resolution/pixel clock on both the ports of both the VIPs

    2. When VIP ports are working in 8bit mode, both ports require pixel clock.

     

    BR,

    Eason

  • Hi Eason Wang,

    非常感谢你的及时回复,你的回答已经解决了我之前的疑问。

    关于我提到的“时钟不同步的周期性黑屏” 问题,我解释一下,也希望你能给出建议。

    在之前的项目实践中,我用FPGA接受RGB888加独立同步及时钟信号的视频数据,在FPGA内部通过FIFO将接收到的数据同步到FPGA系统时钟,观察发现输出视频中会出现一周期性横向扫描线,将前后两帧数据各一部分显示出来,或者周期性的出现黑屏重新同步的现象,我分析是由于外部视频输入时钟与FPGA系统时钟不同步,导致数据积累一段时间后,FIFO溢出导致的黑屏现象。最终我只能使用外部视频输入时钟进行后续的操作,但是由于这个时钟和输入数据时同步的,不能在FPGA内部通过锁相环等方式增强,导致这个时钟的驱动能力有限。

    不知道我上述描述是否解释清楚“时钟不同步的周期性黑屏” 的意思,FPGA设计方面我的经验不是很多,所以如果您有相关经验的话,希望能给出宝贵建议,谢谢!

  • FPGA我之前涉及过一些,但是是通过DDR来缓存的,所以可以整帧去做。

    FIFO的IP一般提供溢出标志的要查不难。有条件的话把fifo设深一些看看有没有改善了。

    不然我还是觉得输入输出时序上面还有可以推敲的地方,需要排除一下比如你自己去造数据喂给后面试试。

  • 谢谢回复。

    FIFO溢出我已经确认,FIFO设深后确实能改善,但不能彻底解决;

    输出应该没问题,我自己造的数据也经过同样的FIFO及相同的后端处理,输出正常;

    看来只能用DDR缓存大量的帧级数据来解决此问题了。