TI中文支持网
TI专业的中文技术问题搜集分享网站

DVRRDK4.0 TVP5158单路采集问题

Hi all,

        前端视频AD芯片使用的TVP5158连接到DM8148的VIP0_PORTA接口,仅有一路视频源输入。

使用的是DVRRDK4.0的开发环境,link的连接方式为:capture–》sclr–》nsf–》ipcOutVpss–》ipcInVideo–》Encoder–》ipcBitOutVideo–》ipcBitInVideo–》rtp传输。根据4CH 采集编码解码显示的例子,修改了相关的采集的配置,我们的板子视频输入只有一路,所以我想使用tvp5158的non-interleaved模式,于是

将capture的配置设置为DEVICE_CAPT_VIDEO_CAPTURE_MODE_SINGLE_CH_NON_MUX_EMBEDDED_SYNC,且standard设置为SYSTEM_STD_D1。

但是结果没有视频传输出来,但是换成DEVICE_CAPT_VIDEO_CAPTURE_MODE_MULTI_CH_PIXEL_MUX_EMBEDDED_SYNC和SYSTEM_STD_MUX_4CH_D1就会有视频传输出来。不知道这是为什么

配置采集参数如下:

 CaptureLink_CreateParams_Init(&capturePrm);capturePrm.outQueParams[0].nextLink= gVcapModuleContext.sclrId[0];//+cbl 0813capturePrm.numVipInst= 1;capturePrm.tilerEnable= FALSE;capturePrm.numBufsPerCh= NUM_CAPTURE_BUFFERS;capturePrm.maxBlindAreasPerCh= 4;capturePrm.enableSdCrop= FALSE;//+cbl 0815pCaptureInstPrm= &capturePrm.vipInst[0];pCaptureInstPrm->vipInstId= (SYSTEM_CAPTURE_INST_VIP0_PORTA+vipInstId)%SYSTEM_CAPTURE_INST_MAX;pCaptureInstPrm->videoDecoderId= SYSTEM_DEVICE_VID_DEC_TVP5158_DRV;pCaptureInstPrm->inDataFormat= SYSTEM_DF_YUV422P;pCaptureInstPrm->standard = SYSTEM_STD_D1;//SYSTEM_STD_MUX_4CH_D1;//pCaptureInstPrm->numOutput= 1;pCaptureOutPrm= &pCaptureInstPrm->outParams[0];pCaptureOutPrm->dataFormat= SYSTEM_DF_YUV422I_YUYV;pCaptureOutPrm->scEnable= FALSE;pCaptureOutPrm->scOutWidth= 0;pCaptureOutPrm->scOutHeight= 0;pCaptureOutPrm->outQueId= 0;//for(i = 0; i < NUM_CAPTURE_DEVICES; i++){vidDecVideoModeArgs[i].vipInstId= SYSTEM_CAPTURE_INST_VIP0_PORTA;vidDecVideoModeArgs[i].deviceId= DEVICE_VID_DEC_TVP5158_DRV;vidDecVideoModeArgs[i].numChInDevice= 1;//4;vidDecVideoModeArgs[i].modeParams.videoIfMode= DEVICE_CAPT_VIDEO_IF_MODE_8BIT;vidDecVideoModeArgs[i].modeParams.videoDataFormat= SYSTEM_DF_YUV422P;vidDecVideoModeArgs[i].modeParams.standard = SYSTEM_STD_D1;//SYSTEM_STD_MUX_4CH_D1;//vidDecVideoModeArgs[i].modeParams.videoCaptureMode = DEVICE_CAPT_VIDEO_CAPTURE_MODE_SINGLE_CH_NON_MUX_EMBEDDED_SYNC;//DEVICE_CAPT_VIDEO_CAPTURE_MODE_MULTI_CH_PIXEL_MUX_EMBEDDED_SYNC;vidDecVideoModeArgs[i].modeParams.videoSystem=DEVICE_VIDEO_DECODER_VIDEO_SYSTEM_AUTO_DETECT;vidDecVideoModeArgs[i].modeParams.videoCropEnable= FALSE;vidDecVideoModeArgs[i].modeParams.videoAutoDetectTimeout = -1;}Vcap_configVideoDecoder(vidDecVideoModeArgs, 1);

另外,设置为SYSTEM_STD_D1后编码打印的分辨率怎么是352×288 这是cif的格式啊,不应该是720×576或者704×576吗?

这个也是一个疑问

bolin chen:

刚才测量一下tvp5158的输出时钟OCLK_P为27MHz,而且DVO_A 0-7数据管脚都有信号输出,

但是dm8148貌似没有检测到视频输入,没有任何反应。

Eason Wang:

Hi , 建议参考 

multich_hd_sdi_dvr.c   来做修改。 他是采单路的。    我看到的区别是TVP5158 是要做行交织的,所以DM8148这里有硬件去交织的设置。

你可以先尝试把

pCaptureInstPrm->videoDecoderId     = 0;

  pCaptureInstPrm->inDataFormat    =  其他几种422格式看看。

YesDayLucky:

回复 Eason Wang:

HELLO:

 能否请教下,硬件去交织的原理。谢谢了。我目前遇到的问题是,如果没有这个硬件,我改如何去交织。

                              BOBO

赞(0)
未经允许不得转载:TI中文支持网 » DVRRDK4.0 TVP5158单路采集问题
分享到: 更多 (0)