DM8127+tvp5150,采集红外相机的PAL信号,红外相机的分辨率为720*576,有效像素是640*480,也就是说四周会有黑边。
开发包为rdk3.5,如果把tvp5150设置为黑屏模式,采集结果如下:
如果对着台灯拍,采集结果如下:
在matlab中,把采集的图像进行处理,把分辨率设为736*564,得到的连续3帧图像如下:
请问,这是什么原因啊?
Huchong Li:
应用程序以/opt/ipnc/Source/ipnc_rdk/ipnc_mcfw/mcfw/src_linux/mcfw_api/usecases/multich_encode_decode.c为基础进行例程的修改,captureLink参数设置如下: CaptureLink_CreateParams capturePrm; capturePrm.numVipInst = 1; capturePrm.outQueParams[0].nextLink = gIpcFramesOutVpssToHostId; capturePrm.tilerEnable = FALSE; capturePrm.enableSdCrop = FALSE; capturePrm.numBufsPerCh = 6; capturePrm.numExtraBufs = 0; capturePrm.fakeHdMode = FALSE; capturePrm.doCropInCapture = FALSE; capturePrm.isPalMode = Vcap_isPalMode(); for(i=0; i<capturePrm.numVipInst; i++) { pCaptureInstPrm = &capturePrm.vipInst[i];//// pCaptureInstPrm->vipInstId = SYSTEM_CAPTURE_INST_VIP0_PORTA; pCaptureInstPrm->videoDecoderId = SYSTEM_DEVICE_VID_DEC_TVP5150_DRV; //added by qiu capturePrm.numVipInst = 1; //capturePrm.outQueParams[0].nextLink = gIpcOutVpssId; capturePrm.outQueParams[0].nextLink = gIpcFramesOutVpssToHostId; capturePrm.tilerEnable = FALSE; capturePrm.enableSdCrop = FALSE; capturePrm.numBufsPerCh = 6; capturePrm.numExtraBufs = 0; capturePrm.fakeHdMode = FALSE; capturePrm.doCropInCapture = FALSE; capturePrm.isPalMode = Vcap_isPalMode(); pCaptureInstPrm->inDataFormat = SYSTEM_DF_YUV422P; pCaptureInstPrm->standard = SYSTEM_STD_D1; pCaptureInstPrm->numOutput = 1; pCaptureOutPrm = &pCaptureInstPrm->outParams[i]; pCaptureOutPrm->dataFormat = SYSTEM_DF_YUV422I_YUYV; pCaptureOutPrm->scEnable = FALSE; pCaptureOutPrm->scOutWidth = 0; pCaptureOutPrm->scOutHeight = 0; pCaptureOutPrm->outQueId = 0; }
Huchong Li:
/opt/ipnc/Source/ipnc_rdk/ipnc_mcfw/mcfw/src_bios6/links_m3vpss/capture/captureLink_drv.c中的设置为
pVipCreateArgs->videoCaptureMode = VPS_CAPT_VIDEO_CAPTURE_MODE_SINGLE_CH_NON_MUX_EMBEDDED_SYNC;
pVipCreateArgs->videoIfMode = VPS_CAPT_VIDEO_IF_MODE_8BIT;