Hello TI' teams,
I would be very grateful if you help me to solve a small problem.
My use case perform next action items:
1) Capture single channel video in XGA resolution (1024x768@30fps) from VIP1[Port-A], perform processing by C64x' sub-core, such image correction and improvement, return back processed video to HDVPSS and display it via HDMI. DSP works as process link.
2) Add graphics overlay in my application via FB.
3) Capture display contains (SC5 writeback capture: video and overlays), perform H264 encode and stream encoded video by RTP.
First capture channel from video source routed to queueId[0] of capture link.
Second capture channel from SC5 routed to queueId[1] of capture link.
HDMI output configurated to full HD resolution - 1920x1080@60fps.
Encode and stream only video from SC5.
capture link, encoder and HDMI display works looked fine (capture buffers counters always incremented in links statistics) but all buffers from write-back capture device are empty. I watch RTP stream by latest version of VLC player and can see "green" frames on VLC. Pay attention that VLC continue count frames from RTP and show proper resolution and codec type.
Video captured from VIP and processed by DSP showed properly on HDMI display (video buffers aren't empty).
Only write-back capture supplying "empty buffers".
Video capture conficurated as is following:
===================================================================
vipInstId = 0;
pCaptureInstPrm->enableTimestampInInterrupt = TRUE;
pCaptureInstPrm->vipInstId = SYSTEM_CAPTURE_INST_VIP1_PORTA;
pCaptureInstPrm->videoCaptureMode = SYSTEM_CAPT_VIDEO_CAPTURE_MODE_SINGLE_CH_NON_MUX_EMBEDDED_SYNC;
pCaptureInstPrm->videoIfMode = SYSTEM_CAPT_VIDEO_IF_MODE_16BIT;
pCaptureInstPrm->inScanFormat = SYSTEM_SF_PROGRESSIVE;
pCaptureInstPrm->videoDecoderId = 0;
pCaptureInstPrm->inDataFormat = SYSTEM_DF_YUV422P;
pCaptureInstPrm->standard = standard;
pCaptureInstPrm->numOutput = 1;
pCaptureInstPrm->numChPerOutput = 1;
pCaptureInstPrm->useAdvancedParams = FALSE;
pCaptureOutPrm = &pCaptureInstPrm->outParams[0];
pCaptureOutPrm->dataFormat = SYSTEM_DF_YUV422I_YUYV;
pCaptureOutPrm->scEnable = FALSE;
pCaptureOutPrm->scOutWidth = 0;
pCaptureOutPrm->scOutHeight = 0;
pCaptureOutPrm->outQueId = 0;
===================================================================
Writeback capture configuration as is following:
===================================================================
vipInstId = 1;
pCaptureInstPrm = &pCapturePrm->vipInst[vipInstId];
pCaptureInstPrm->enableTimestampInInterrupt = TRUE;
pCaptureInstPrm->vipInstId = SYSTEM_CAPTURE_INST_SC5_WB2;
pCaptureInstPrm->videoDecoderId = 0;
pCaptureInstPrm->videoCaptureMode = SYSTEM_CAPT_VIDEO_CAPTURE_MODE_SINGLE_CH_NON_MUX_EMBEDDED_SYNC;
pCaptureInstPrm->videoIfMode = SYSTEM_CAPT_VIDEO_IF_MODE_16BIT;
pCaptureInstPrm->inScanFormat = SYSTEM_SF_PROGRESSIVE;
pCaptureInstPrm->inDataFormat = SYSTEM_DF_RGB24_888;
pCaptureInstPrm->standard = SYSTEM_STD_1080P_60;
pCaptureInstPrm->numOutput = 1;
pCaptureInstPrm->useAdvancedParams = FALSE;
pCaptureOutPrm = &pCaptureInstPrm->outParams[0];
pCaptureOutPrm->dataFormat = SYSTEM_DF_YUV422I_YUYV;
pCaptureOutPrm->scEnable = FALSE;
pCaptureOutPrm->scOutWidth = 1920;
pCaptureOutPrm->scOutHeight = 1080;
pCaptureOutPrm->outQueId = 1;
==================================================================
Please help me resolve the little problem.