你好:前端FPGA+后端8168,输入视频格式1080P,端口配置宽度16,目前CaptureLink_drvCallback一直有中断,但FVID2_dequeue(pObj->fvidHandleVipAll, &frameList, streamId, BIOS_NO_WAIT);只能接收几次,然后就没反应了,capturelink参数配置如下:
pVipCreateArgs->inScanFormat= FVID2_SF_INTERLACED;
pObj->maxWidth = 1920;
pObj->maxHeight = 540;
pVipCreateArgs->videoCaptureMode = VPS_CAPT_VIDEO_CAPTURE_MODE_SINGLE_CH_NON_MUX_EMBEDDED_SYNC;
pCaptureInstPrm->inDataFormat = SYSTEM_DF_YUV422P;
pVipCreateArgs->videoIfMode = VPS_CAPT_VIDEO_IF_MODE_16BIT;
pCaptureOutPrm->dataFormat = SYSTEM_DF_YUV422SP_UV;///这个有点怀疑,输入端我配置是SYSTEM_DF_YUV422P,输出我配置这个会不会有影响。
Chris Meng:
Jin,
请问capture link后的数据是送给DEI么?如果是,请尝试pCaptureOutPrm->dataFormat = SYSTEM_DF_YUV422I_YUYV;。
jin xin:
回复 Chris Meng:
你好,我有几个问题,不太明白:?
1:目前FPGA通过VIN接口输入1080P yuv422sp,16位到8168,好像pCaptureInstPrm->inDataFormat没有yuv422sp格式,是不是只有422P或422YUYV?
2.如果我把pCaptureInstPrm->inDataFormat设置成SYSTEM_DF_YUV422P,输出:pCaptureOutPrm->dataFormat设置成YUV422SP_UV,但我通过打印发现数据并没有转换成YUV422SP_UV,还是YUV422_YUYV格式?
3.因为我输入的是1080P,INTERLACED格式,那么pObj->maxWidth = 1920;pObj->maxHeight = 540;还是Obj->maxWidth = 1920;pObj->maxHeight = 1080?
Chris Meng:
回复 jin xin:
Jin,
请问你的sp-semi planar的理解是怎样的?你的FPGA的数据是先发送一帧的全部Y数据,然后再发送UV数据么?我理解一般的输入都是通常意义下的YUV422I的。采集Link输入demo代码使用的是SYSTEM_DF_YUV422P,主要是内部区分,和我们通常说的不一样。请参考论坛讨论:https://e2e.ti.com/support/dsp/davinci_digital_media_processors/f/717/t/440618
DEI的输入就是一场数据,所以frame的最大的高度我认为是一场的高度。