Stephen Berry wrote:

I'm having some trouble trying to increase the quality of the video on my dm355 design. In particular I am trying to manipulate the initQ parameter in IMP4ENC_Params structure, along with some others.

/******************************************************************************
 * videoEncodeAlgCreate
 ******************************************************************************/
static int  videoEncodeAlgCreate(Engine_Handle hEngine,
                                 VIDENC1_Handle *hEncodePtr,
                                 VideoEncoder videoEncoder,
                                 int width, int height, int bitrate)
{
    VIDENC1_DynamicParams   dynamicParams;
    VIDENC1_Status          encStatus;
    VIDENC1_Params          params;
    IMP4VENC_Params         ext_params;
    XDAS_Int32              status;
//    IVIDENC1                status;
    char                    *algName;
    VIDENC1_Handle          hEncode;
    IALG_Fxns *ividEncfxns;

    algName = videoEncodeAlgNames[videoEncoder];

    params.size                  = sizeof(VIDENC1_Params);
    params.encodingPreset        = XDM_DEFAULT;
>     ...
...

// Set the create time extended parameters

// These parameters are for the highest quality picture...
    ext_params.videncParams = params;

you copy the standard params here, but you do not update the size, no?

you need to do:

ext_params.videncParams.size = sizeof(IMP4VENC_Params);


/* Set Dynamic Params */
#if 0
    ividEncfxns = (IALG_Fxns *)hEncode->fxns ;

    status = ividEncfxns->algControl((VIDENC1_Handle)hEncode, XDM_SETPARAMS,
                                  (VIDENC1_DynamicParams *)& ext_params,

why would you pass the extended Params as DynamicParams?


_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source

Reply via email to