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.

关于DM8148VOUT1图像输出问题



     我们使用DM8148的SDI输出通路硬件连接是VOUT1-GV7600-SDI,前期HDMI输出已经能正常输出图像,从资料和论坛了解到,dm8148 Vout1和DHMI是绑定的。 我理解就是hdmi输出正常的话,SDI就应该能正常输出。

    HDMI输出1080P60,读取GV7600寄存器看到V、H是成功锁定的,图像有效长宽个数也是正确识别到的,但是显示器提示格式不支持就没有任何提示了。怀疑显示器不支持,HDMI输出改为720P60,读取GV7600寄存器看到V、H、图像有效长宽数是也成功锁定的,显示器显示得有图像,但是图像不对。

     我测了V、H、DE信号和GV7600的手册上的时序图对比发现,在DE无效区时几个时序对应稍微有点差异,不晓得是不是这的原因? 

     

    

  • Li Xiaobo,

    请问你VOUT配置是RGB888么?你有注意下面的勘误么?

    Advisory 3.0.23 HDMI: On-Chip HDMI Does Not Operate in 8-/16-bit Mode

  • Chris Meng,你好

        HDMI输出是配置的RGB888,配置如下:

    pContext->deviceParams[VDIS_DEV_HDMI].outputInfo.dataFormat = SYSTEM_DF_RGB24_888;


    Advisory 3.0.23 HDMI:勘误这个我没注意到,是在哪个文档里面有呢?  我HDMI输出是正常,只是VOUT1输出不正常,我理解格式上VOUT1也应该是肯定没问题吧。

  • Chris Meng,你好

        你的意思是HDMI只支持RGB888,而且是内嵌同步模式,那么Vout1也是输出RGB888、内嵌同步模式吗?

  • xiaobo li1 说:

    Chris Meng,你好

        你的意思是HDMI只支持RGB888,而且是内嵌同步模式,那么Vout1也是输出RGB888、内嵌同步模式吗?

    代码里面看到配置HDMI是外同步的。你有测量VOUT1的时钟和同伴信号么?都正确么?外部SDI芯片是否也正确配置为外同步的模式?

        dcOutputInfo.vencNodeNum = VPS_DC_VENC_HDMI;
        dcOutputInfo.dvoFmt = VPS_DC_DVOFMT_TRIPLECHAN_DISCSYNC;
        dcOutputInfo.aFmt = VPS_DC_A_OUTPUT_COMPOSITE;
        dcOutputInfo.dataFormat = FVID2_DF_RGB24_888;

  • 是这样的,我用的是IPNC RDK3.8,SDI配置应该配置的没有问题。

    软件上默认配置如下

    pContext->deviceParams[VDIS_DEV_HDMI].dvoFmt = VDIS_DVOFMT_TRIPLECHAN_EMBSYNC;
    pContext->deviceParams[VDIS_DEV_HDMI].outputInfo.dataFormat = SYSTEM_DF_RGB24_888;

    这样的话能测试到Vout1时钟和同步信号都有,和gv7600文档要求的时序上对比,发现HS的前肩为0,而标准的是110。这个时候HDMI输出正常,但是SDI没有输出的。

    将格设置pContext->deviceParams[VDIS_DEV_HDMI].dvoFmt = VDIS_DVOFMT_TRIPLECHANDISCSYNC;这时测试时序完全正确。SDI输出有图像,只是颜色不对,但是HDMI没有输出了。

    我的根据你说的HDMI只支持RGB888、内嵌同步,所以这个时候HDMI就应该不正常,而GV7600因为时序对了,能正常输出了,但是因为格式是RGB888,不是YUV722,所以颜色不对。

  • Li Xiaobo,

    据我了解一些SDI芯片在输入是外同步或者是内同步的时候,外围电路是有不同的。你能确认一下么?

  • 这个确认过,调试过程中你第一次回复说只支持rgb888.,我就理解VOUT1只能是和HDMI一样,输出rgb888内嵌同步,就将GV7600改成内同步测试过。 

    所以我觉得现在要先确认VOUT1和HDMI绑定,输出只能是rgb888内嵌同步?  我改为外同步只是为了验证GV7600后续电路是否正常。

  • Li Xiaobo,

    还可以是YUV444. 芯片勘误表里面有下面的信息:

    1. Configure both the on-chip HDMI and VOUT1 to 24-bit mode (RGB888 or YUV444 format).

  • xiaobo li1 说:
    这样的话能测试到Vout1时钟和同步信号都有,和gv7600文档要求的时序上对比,发现HS的前肩为0,而标准的是110。这个时候HDMI输出正常,但是SDI没有输出的。

    这时候VOUT1有配置为内嵌同步么?

  • 1.
    这样的话能测试到Vout1时钟和同步信号都有,和gv7600文档要求的时序上对比,发现HS的前肩为0,而标准的是110。这个时候HDMI输出正常,但是SDI没有输出的。

    这个时候就是内嵌同步。如下:

    pContext->deviceParams[VDIS_DEV_HDMI].dvoFmt = VDIS_DVOFMT_TRIPLECHAN_EMBSYNC;
    pContext->deviceParams[VDIS_DEV_HDMI].outputInfo.dataFormat = SYSTEM_DF_RGB24_888;


    2.

    还可以是YUV444. 芯片勘误表里面有下面的信息:

    1. Configure both the on-chip HDMI and VOUT1 to 24-bit mode (RGB888 or YUV444 format).

    也就是VOUT1支持RGB888内嵌同步,YUV444内嵌同步这两种?  GV7600因为是20bit数据口,肯定没办法对接到VOUT1了?

  • xiaobo li1 说:
     GV7600因为是20bit数据口,肯定没办法对接到VOUT1了?

    如果你同时要使用HDMI,答案就是不行啊。

  • 恩,谢谢。确认这个不行,HDMI我们肯定要用,只有改硬件了。