本人,使用高清芯片将SDI接口数据转成16bit Y,UV分离数据。通过VIP0接口进入系统。
link如下 captureLink->dupLink->display_SD
其中输入格式配置SYSTEM_DF_YUV422SP_UV,captureLink打开了缩放功能,将图像由1080X1920缩放到720X480标清输出。
请问下这样,这样link流有什么问题。系统启动displayLink无法创建成功。
Ternence_Hsu:
有没有dup 没有关系的;
display 无法创建的可以查一下具体的错误,根据错误信息跟一下。
Ternence_Hsu:
回复 Ternence_Hsu:
link 没有问题的
STAR1:
回复 Ternence_Hsu:
你好,我已经将link简化成captureLink->displayLink了,现在能够成功运行,但仍无法出图像。 其中captureLink中做裁剪,将图像裁剪到了720X576, 然后送入显示。仍没有成功。能帮我看下配置吗?
pCaptureInstPrm = &capturePrm.vipInst[0]; pCaptureInstPrm->vipInstId = SYSTEM_CAPTURE_INST_VIP0_PORTA; pCaptureInstPrm->videoDecoderId = SYSTEM_DEVICE_VID_DEC_GS296_DRV; pCaptureInstPrm->standard = SYSTEM_STD_1080P_30; pCaptureInstPrm->frameCaptureMode = FALSE; pCaptureInstPrm->fieldsMerged = TRUE; pCaptureInstPrm->numOutput = 1; pCaptureInstPrm->inDataFormat = SYSTEM_DF_YUV422SP_UV;
pCaptureOutPrm = &pCaptureInstPrm->outParams[0]; pCaptureOutPrm->dataFormat = SYSTEM_DF_YUV420SP_UV; pCaptureOutPrm->scEnable = TRUE; pCaptureOutPrm->scOutWidth = 720; pCaptureOutPrm->scOutHeight = 576; pCaptureOutPrm->outQueId = 0; pCaptureOutPrm->subFrameEnable = FALSE;
capturePrm.outQueParams[0].nextLink =gVdisModuleContext.displayId[VDIS_DEV_SD];
displayPrm_SD.inQueParams[0].prevLinkId = gVcapModuleContext.captureId;//dupId; displayPrm_SD.inQueParams[0].prevLinkQueId = 0; displayPrm_SD.displayRes = gVdisModuleContext.vdisConfig.deviceParams[VDIS_DEV_SD].resolution; displayPrm_SD.displayId = DISPLAY_LINK_DISPLAY_SD;
Ternence_Hsu:
回复 STAR1:
先确定一下你的sd的输出信号,有信号输出了没有?(在去调试图像的现实)
STAR1:
回复 Ternence_Hsu:
你好,现在SD肯定没有输出的。我跟踪代码,发现captureLink FVID2_dequeue 那不到图像。所以怀疑还是captureLink配置不正确。
STAR1:
回复 Ternence_Hsu:
另外,SYSTEM_DEVICE_VID_DEC_GS296_DRV这个驱动,其实什么都没做。因为GS296芯片一上电就直接向VIP0输出YUV422数据了。
STAR1:
回复 Ternence_Hsu:
还有个问题,就是。我们vip0,portA输入的数据是16bit(Y8bit,UV8bit)分离的数据,
videoCaptureMode配置成如下:
pVipCreateArgs->videoCaptureMode = 463 VPS_CAPT_VIDEO_CAPTURE_MODE_SINGLE_CH_NON_MUX_DISCRETE_SYNC_HSYNC_VSYNC;
这个正确吗?
TI中文支持网

