Hi,
following a post in this forum, I asked and got the code for deinterlacing. There was also a DMAI interface for it. I see the calling procedure is as follows:
if (DEI_process(hVe1, hCapBuf, hPrevBuf, hDisBuf) < 0) {
ERR("Failed to encode video buffer\n");
cleanup(THREAD_FAILURE);
}
and I wonder if hCapBuf, hPrevBuf should be considered as the even and odd fields or as full interlaced frames. The documentation refers to frames but it uses the terminology of video codecs which deals with frames so I not sure about it.
If I have to consider the buffers as fields, since the DVR framework outputs with frames where the two fields are interleved, I would ask what is the most efficient way to separate the two fields.
I am trying to use the deinterlacer to get 736x576 4:2:0 semi planer progressive frames from the 736x576 4:2:2 ILE frames provided by the capture interface.
The deinterlacer instance is created but the call to DEI_process produces a SEGMENTATION FAULT. All the required pools have been allocated.
The deinterlacer is configured as follows:
Dei_Parameters.videncParams = Venc1_Params_DEFAULT;
Dei_Parameters.videncParams.inputChromaFormat = XDM_YUV_422ILE;
Dei_Parameters.videncParams.maxHeight = VideoStd_D1_PAL_HEIGHT;
Dei_Parameters.videncParams.maxWidth = 736;
Dei_Parameters.threshold = 5; //recomended 0-255 (0 = BOB 255 weave)
Dei_Parameters.subWindowHeight = VideoStd_D1_PAL_HEIGHT;
Dei_Parameters.subWindowWidth = 736;//VideoStd_D1_WIDTH;
Dei_Parameters.outputFormat = XDM_YUV_420SP;//XDM_YUV_420SP; or XDM_YUV_422ILE
Dei_Parameters.q_num = 1; //1 or 3
Dei_Parameters.askIMCOPRes = 0;
I call the DEI in this way, where hCapBuf is the 736x576 captured buffer, hDeinterlacerPrevBuf is the previous captured buffer and hDstBuf is the buffer allocated for the output.
DEI_process(hVe1,
hCapBuf, hDeinterlacerPrevBuf,
hDstBuf);
if (Framecopy_execute(hFc, hCapBuf, hDeinterlacerPrevBuf) < 0) {
ERR("Failed to execute frame copy job\n");
cleanup(THREAD_FAILURE);
}
I know this is not an official release but if you can get some info about it I will be very grateful.
Thank you in advance.