This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Linux/DRA746: some Mjpeg streamer decode error

Part Number: DRA746

Tool/software: Linux

Hi

I found some MJpeg media file (which is ok in pc with VLC application) can not be decoded rightly with ti mjpeg decoder.

I attach the file and please help to check this file.

Best Regards

Gao

7624.input.zip

  • Hi Gao,
    What is the SDK you are using?
    I tried with a gstreamer pipeline, it shows proper video and there is no error from decoder.

    I tried this pipeline on PSDKLA3.04
    gst-launch-1.0 filesrc location=input.data ! jpegparse ! ducatijpegdec ! kmssink

    Ram
  • Hi Ram,
    The Mjpeg version is "JPEGVDEC_TI Ver:01.00.14.01 Released by:500.V.MJPEG.D.01.00 Built:Jan 25 2016 13:21:31";

    Can you help me to check the params I set.
    The params set below is refer to sample code in libdce.

    ============
    mParams->maxBitRate = 10000000;
    mParams->displayDelay = IVIDDEC3_DISPLAY_DELAY_1;
    mParams->numOutputDataUnits = 1;
    mParams->maxWidth = mWidth; //mWidth

    mParams->maxHeight = mHeight; //mHeight
    mParams->maxFrameRate = 30000;
    mParams->dataEndianness = XDM_BYTE;
    mParams->forceChromaFormat = XDM_YUV_420SP;
    mParams->operatingMode = IVIDEO_DECODE_ONLY;
    mParams->displayBufsMode = IVIDDEC3_DISPLAYBUFS_EMBEDDED;
    mParams->inputDataMode = IVIDEO_ENTIREFRAME;
    mParams->metadataType[0] = IVIDEO_METADATAPLANE_NONE;
    mParams->metadataType[1] = IVIDEO_METADATAPLANE_NONE;
    mParams->metadataType[2] = IVIDEO_METADATAPLANE_NONE;
    mParams->outputDataMode = IVIDEO_ENTIREFRAME;
    mParams->numInputDataUnits = 0;
    mParams->errorInfoMode = IVIDEO_ERRORINFO_OFF;

    mMjpegParams = (IJPEGVDEC_Params *) mParams;

    mMjpegParams->ErrorConcealmentON = TRUE;
    mMjpegParams->debugTraceLevel = 0;
    mMjpegParams->lastNFramesToLog = 0;
    mMjpegParams->sliceSwitchON = 0;
    mMjpegParams->numSwitchPerFrame = 0;
    mMjpegParams->numRestartMarkerPerSwitch = 0;


    mDynParams = (IVIDDEC3_DynamicParams*)dce_alloc(sizeof(IJPEGVDEC_DynamicParams));
    mDynParams->size = sizeof(IJPEGVDEC_DynamicParams);
    mDynParams->lateAcquireArg = -1;
    mDynParams->decodeHeader = XDM_DECODE_AU;


    /*Not Supported: Set default*/
    mDynParams->displayWidth = 0;
    mDynParams->frameSkipMode = IVIDEO_NO_SKIP;
    mDynParams->newFrameFlag = XDAS_TRUE;

    mMjpegDynParams = (IJPEGVDEC_DynamicParams *) mDynParams;


    mMjpegDynParams->decodeThumbnail = 0;
    mMjpegDynParams->thumbnailMode = IJPEGVDEC_THUMBNAIL_DOWNSAMPLE;
    mMjpegDynParams->downsamplingFactor = IJPEGVDEC_NODOWNSAMPLE;
    mMjpegDynParams->streamingCompliant = 1;
    ===========

    Best Regards
    Gao
  • Hi Gao,
    Latest JPEG decoder integrated in IPUMM is 01.00.16.01. This has one bug fixes related to green artifacts due to missing hufftable in the JPEG streams. Are you seeing green video during playback of this stream?

    Are you on GLSDK7.0x or PSDKLA?
    I recommend you to directly try with ipumm firmware from PSDKLA3.04 and check if the issue is reproduced or not.

    Your setting for JPEGdecoder looks fine.

    Ram
  • hi ,
    Can you provide the Profile and level of decoder format ?
  • Hi TI's JPEG decoder supports baseline and a partial support for extended modes.
    Please refer JPEG decoder's datasheet and UserGuide from IPUMM repo.

    Ram