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

DM8148单通道采集数据失败

CaptureLink_CreateParams_Init(&capturePrm);

capturePrm.outQueParams[0].nextLink =AVST_DisplaySclrLinkId;
capturePrm.numVipInst = 1;
capturePrm.tilerEnable = FALSE;
capturePrm.numBufsPerCh = NUM_CAPTURE_BUFFERS;
capturePrm.maxBlindAreasPerCh = 4;

pCaptureInstPrm = &capturePrm.vipInst[0];
pCaptureInstPrm->vipInstId = (SYSTEM_CAPTURE_INST_VIP0_PORTA+
vipInstId)%SYSTEM_CAPTURE_INST_MAX;
pCaptureInstPrm->videoDecoderId = 0; //SYSTEM_DEVICE_VID_DEC_TVP5158_DRV;
pCaptureInstPrm->inDataFormat = SYSTEM_DF_RGB24_888;//SYSTEM_DF_YUV422P;
pCaptureInstPrm->standard =SYSTEM_STD_1080P_30;
pCaptureInstPrm->numOutput = 1;

pCaptureOutPrm = &pCaptureInstPrm->outParams[0];
pCaptureOutPrm->dataFormat = SYSTEM_DF_YUV420SP_UV;//SYSTEM_DF_YUV422I_YUYV;
pCaptureOutPrm->scEnable = FALSE;
pCaptureOutPrm->scOutWidth = 0;
pCaptureOutPrm->scOutHeight = 0;
pCaptureOutPrm->outQueId = 0;

pCaptureInstPrm->videoCaptureMode = SYSTEM_CAPT_VIDEO_CAPTURE_MODE_SINGLE_CH_NON_MUX_DISCRETE_SYNC_HSYNC_VSYNC;//SYSTEM_CAPT_VIDEO_CAPTURE_MODE_SINGLE_CH_NON_MUX_EMBEDDED_SYNC
pCaptureInstPrm->videoIfMode = SYSTEM_CAPT_VIDEO_IF_MODE_24BIT;//SYSTEM_CAPT_VIDEO_IF_MODE_16BIT;
pCaptureInstPrm->inScanFormat = SYSTEM_SF_PROGRESSIVE;

采集参数及格式如上,在CaptureLink_drvProcessData函数中添加打印frameList.numFrames的值一直是0.我的理解是采集link没能采集到数据。看了一下采集参数没发现什么毛病。

yong yang2:

回复 Chris Meng:

谢谢您的指点。 测量的同步时钟时对的。我看了一下参数,

采集参数pCaptureInstPrm->vipInstId = (SYSTEM_CAPTURE_INST_VIP0_PORTA+vipInstId)%SYSTEM_CAPTURE_INST_MAX;

采集参数pCaptureInstPrm->vipInstId          = SYSTEM_CAPTURE_INST_VIP0_PORTA;

是完全等价的。

至于您说的"硬件HDMI转RGB888输出后是接在VIP0的portA上",没看懂。您能说的再详细一点吗?谢谢。

yong yang2:

回复 Chris Meng:

vipInstId = 0;

gVcapModuleContext.captureId = SYSTEM_LINK_ID_CAPTURE;

gVdisModuleContext.displayId[0] = SYSTEM_LINK_ID_DISPLAY_0; /* ON AND OFF CHIP HDMI */ gVdisModuleContext.displayId[1] = SYSTEM_LINK_ID_DISPLAY_2; /* SDTV */

CaptureLink_CreateParams_Init(&capturePrm); capturePrm.outQueParams[0].nextLink =AVST_DisplaySclrLinkId; capturePrm.numVipInst = 1; capturePrm.tilerEnable = FALSE; capturePrm.numBufsPerCh = NUM_CAPTURE_BUFFERS; capturePrm.maxBlindAreasPerCh = 4;

pCaptureInstPrm = &capturePrm.vipInst[0]; pCaptureInstPrm->vipInstId = SYSTEM_CAPTURE_INST_VIP0_PORTA; pCaptureInstPrm->videoDecoderId = DEVICE_VID_DEC_TVP7002_DRV; //=0; pCaptureInstPrm->inDataFormat = SYSTEM_DF_YUV422P;//SYSTEM_DF_RGB24_888;// pCaptureInstPrm->standard =SYSTEM_STD_1080P_30; pCaptureInstPrm->numOutput = 1;

pCaptureOutPrm = &pCaptureInstPrm->outParams[0]; pCaptureOutPrm->dataFormat = SYSTEM_DF_YUV420SP_UV;//SYSTEM_DF_YUV422I_YUYV; pCaptureOutPrm->scEnable = FALSE; pCaptureOutPrm->scOutWidth = 0; pCaptureOutPrm->scOutHeight = 0; pCaptureOutPrm->outQueId = 0;

pCaptureInstPrm->videoCaptureMode = SYSTEM_CAPT_VIDEO_CAPTURE_MODE_SINGLE_CH_NON_MUX_DISCRETE_SYNC_HSYNC_VSYNC;//SYSTEM_CAPT_VIDEO_CAPTURE_MODE_SINGLE_CH_NON_MUX_EMBEDDED_SYNC pCaptureInstPrm->videoIfMode = SYSTEM_CAPT_VIDEO_IF_MODE_24BIT;//SYSTEM_CAPT_VIDEO_IF_MODE_16BIT; pCaptureInstPrm->inScanFormat = SYSTEM_SF_PROGRESSIVE;

您好,刚才回复的有点问题。SiI1161采集本身就有问题。现在换成tvp7002了,这是重新配置的参数。这个测试是有时钟信号的。在CaptureLink_drvProcessData函数里面打印frameList.numFrames一直是0.这是不是代表没有采集到数据。

赞(0)
未经允许不得转载:TI中文支持网 » DM8148单通道采集数据失败
分享到: 更多 (0)