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

duplink 使用的时候,程序卡住了

我需要从摄像头采集数据,然后将yuv数据送入到FD算法中检测。

dvr_rdk 的版本是02.80.00.10。capture直接和display连接起来没有问题,正常显示。增加一个dup,dup只输出一路直接到display也没有问题。还是正常显示。当dup输出两路时,程序运行就会卡住。我试着再第二路接入了Nulllink,但还是一样的问题。显示卡住,程序也没有打印了。

额外的问题是,为什么我的摄像头采集的图像尺寸是720*288.而不是704*576.这个要如何设置呢。

我创建的link示意图如下:

Capture (YUV422I) 4CH D1 60fps
                      |                      |  
            DUP_LINK—-
              |                      |
              |                      |
              |                      |
              |                      |
              |                      |
        display             FRAMESOUT(VPSS)
                                     |
                                     |
                                     |
                             <<<processLink>>>
                                     |
                                     |
                                     |
                                  FramesInDSP
                                     |
                                     |
                                     |
                               ALG_LINK <FD Algs>

代码如下:

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

pCaptureInstPrm = &capturePrm.vipInst[0];
pCaptureInstPrm->vipInstId = SYSTEM_CAPTURE_INST_VIP0_PORTB;
pCaptureInstPrm->videoDecoderId = SYSTEM_DEVICE_VID_DEC_TVP5158_DRV;
pCaptureInstPrm->inDataFormat = SYSTEM_DF_YUV422P;
pCaptureInstPrm->standard = SYSTEM_STD_720P_60;
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;

#ifndef SYSTEM_USE_VIDEO_DECODER
capturePrm.isPalMode = Vcap_isPalMode();
#endif
System_linkCreate(gVcapModuleContext.captureId, &capturePrm, sizeof(capturePrm));
dupPrm.inQueParams.prevLinkId = gVcapModuleContext.captureId;
dupPrm.inQueParams.prevLinkQueId = 0;
dupPrm.numOutQue = 2;
dupPrm.outQueParams[0].nextLink = gVdisModuleContext.displayId[0];
dupPrm.outQueParams[1].nextLink = nullId;gVcapModuleContext.ipcFramesOutVpssId[0];
dupPrm.notifyNextLink = TRUE;

System_linkCreate(dupId , &dupPrm , sizeof(dupPrm));

nulllinkprm.numInQue = 1;
nulllinkprm.inQueParams[0].prevLinkId = dupId;gVcapModuleContext.ipcFramesOutVpssId[0];
nulllinkprm.inQueParams[0].prevLinkQueId = 1;
System_linkCreate(nullId , &nulllinkprm , sizeof(nulllinkprm));
System_linkStart(nullId);
displayPrm[0].inQueParams[0].prevLinkId = dupId;
displayPrm[0].inQueParams[0].prevLinkQueId = 0;
displayPrm[0].displayRes = gVdisModuleContext.vdisConfig.deviceParams[0].resolution;
System_linkCreate(gVdisModuleContext.displayId[0], &displayPrm[0], sizeof(displayPrm[0]));

Vdis_start();
System_linkStart(dupId);
Vcap_start();

buyun ma:

回复 Chris Meng:

使用去交织之后,图像确实正常了。谢谢你的回复!

赞(0)
未经允许不得转载:TI中文支持网 » duplink 使用的时候,程序卡住了
分享到: 更多 (0)