Hello,
I'm almost there!!! I am now blocked by a tiny tiny issue, but, is becoming very critical, as it's blocking us...
In short, I capture 25 fps, but, only encode 1 in 4. Which is approx 6-7 fps. However, when I play it back (using VLC fro example), it plays back at 29.97 fps....
My encoder params, are below.
What am I over-looking??? Any ideas will be appreciated as we are completely stuck...
Thanks in advance,
Amjad.
void getEncParams_Create(IMP4VENC_Params *params)
{
params->videncParams.rateControlPreset = IVIDEO_LOW_DELAY ;
params->videncParams.maxWidth = 352 ;
params->videncParams.maxHeight = 288 ;
params->videncParams.maxFrameRate = 7000 ;
params->videncParams.maxBitRate = 64000 ;
/*Codec specific extended parameters */
params->intraFrameInterval = 20 ;
params->rcQ_MAX = 31 ;
params->rcQ_MIN = 1 ;
params->rotation = 0 ;
params->VBV_size = 10000 ;
params->subWindowWidth = params->videncParams.maxWidth;
params->subWindowHeight = params->videncParams.maxHeight;
params->videncParams.size = sizeof(IMP4VENC_Params) ;
params->videncParams.encodingPreset = XDM_USER_DEFINED;
params->videncParams.maxInterFrameInterval = XDM_DEFAULT;
params->videncParams.reconChromaFormat = XDM_DEFAULT;
params->videncParams.inputContentType = XDM_DEFAULT;
params->videncParams.dataEndianness = XDM_DEFAULT;
params->videncParams.inputChromaFormat = 4 ;
params->intraDcVlcThr = 0 ;
params->meRange = 31 ;
params->intraThres = 200 ;
params->intraAlgo = 0 ;
params->numMBRows = 5 ;
params->initQ = 0 ;
params->rateFix = 1 ;
params->rateFixRange = 1 ;
params->meAlgo = 0 ;
params->SkipMBAlgo = 0 ;
params->UMV = 0 ;
params->IIDC = 0 ;
params->InitQ_P = 0 ;
params->SVH = 1 ;
}
void getEncParams_Control(VIDENC1_DynamicParams *params)
{
params->size = sizeof(VIDENC1_DynamicParams);
params->inputWidth = 352;
params->inputHeight = 288;
params->targetBitRate = 64000;
params->intraFrameInterval = 20;
params->targetFrameRate = 7000;
params->refFrameRate = 7000;
params->generateHeader = XDM_ENCODE_AU;
params->captureWidth = 0;
}