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.

Help ! About dm368 1080p at 30fps ??

I used h264 encoder ( version 2.0) in the newest DVSDK to run my application at 1080p, but I found it did not reach 30fps , only at 20 - 21fps. It's really exhausted me .  My  h264 encode configurations are below:

params.size                        = sizeof(IH264VENC_Params);

params.rateControlPreset  = IVIDEO_STORAGE;

params.encodingPreset     = XDM_USER_DEFINED;   //XDM_HIGH_SPEED;

params.maxWidth             = 1920;

params.maxHeight            = 1072;

params.maxFrameRate         = 30000;

params.maxBitRate           = 10*1000*1000;

params.reconChromaFormat       = XDM_YUV_420SP;

params.inputChromaFormat        = XDM_YUV_420SP;   

params.dataEndianness                = XDM_BYTE;

params.inputContentType            = IVIDEO_PROGRESSIVE;

params.maxInterFrameInterval     1;

 

extH264Params.levelIdc = 31;

extH264Params.profileIdc = 100;

extH264Params.entropyMode = 1;                           

extH264Params.transform8x8FlagIntraFrame = 1;

extH264Params.seqScalingFlag = 1;

extH264Params.transform8x8FlagInterFrame = 0;

extH264Params.aspectRatioX = 1;

extH264Params.aspectRatioY = 1;

extH264Params.pixelRange = 1;

extH264Params.timeScale = 60;

extH264Params.numUnitsInTicks = 1;

extH264Params.enableVUIparams = 1;       

//extH264Params.resetHDVICPeveryFrame = 1; 

extH264Params.disableHDVICPeveryFrame = 0;

extH264Params.meAlgo = 0;

extH264Params.unrestrictedMV = 0;          

extH264Params.encQuality = 0                          //2: for LITE

extH264Params.enableARM926Tcm = 0;

extH264Params.enableDDRbuff    = 0;       

extH264Params.sliceMode            = 0;        //0: for LITE

extH264Params.outputDataMode  = 1;       

extH264Params.sliceFormat         = 1;

 

dynamicParams.size                  = sizeof(IH264VENC_DynamicParams);

dynamicParams.inputHeight         = 1072;

dynamicParams.inputWidth          = 1920;

dynamicParams.targetBitRate        = 4*1000*1000;

dynamicParams.intraFrameInterval    = 30;

dynamicParams.generateHeader      = XDM_ENCODE_AU;

dynamicParams.captureWidth        = 1920

dynamicParams.forceFrame                = IVIDEO_NA_FRAME;

dynamicParams.interFrameInterval = XDM_DEFAULT;        

dynamicParams.mbDataFlag           = XDM_DEFAULT;

dynamicParams.targetFrameRate   = 30000;

dynamicParams.refFrameRate      = 30000;

 

extH264DynParams.intraFrameQP       = 28;      

extH264DynParams.interPFrameQP     = 28;      

extH264DynParams.initQ                    = 28;      

extH264DynParams.rcQMax               = 45;      

extH264DynParams.rcQMin                = 0;       

extH264DynParams.rcQMaxI              = 42;      

extH264DynParams.rcQMinI               = 0;       

extH264DynParams.airRate                 = 0;        //0: for LITE

extH264DynParams.lfDisableIdc          = 0;

extH264DynParams.maxDelay            = 2000;// 1000;

extH264DynParams.meMultiPart          = 0;

extH264DynParams.perceptualRC       = 0;        //0: for LITE

extH264DynParams.idrFrameInterval   = 30;

extH264DynParams.mvSADoutFlag     = 0;

extH264DynParams.enableROI            = 0;

extH264DynParams.intraSliceNum       = 0;

extH264DynParams.enableBufSEI       = 1;

extH264DynParams.enablePicTimSEI = 1;       

extH264DynParams.rcAlgo                 = 1;       

extH264DynParams.metaDataGenerateConsume = 0;

extH264DynParams.resetHDVICPeveryFrame = 1;

extH264DynParams.sliceSize               = 0;

extH264DynParams.intraThrQF          = 5;

Can anybody tell me what's wrong with my application ????   

 

By the way, I found the user guide of the newest h264enc introduce a LITE mode. can  the encode  reach 1080@30fps only by setting LITE mode? 

However, when I open the LITE mode by setting

params.encodingPreset           = XDM_HIGH_SPEED;

extH264Params.encQuality      = 2;

the H264 encoder creating will fail,  so I can not run my application in LITE mode. Is there something wrong in my setting?

 

Your kindly help is greatly appreciated. Thank u very much!

  • Hi Katee,

    I reviewed your encoder settings, it looks fine to me. You can achieve 1080p@30fps only in LITE mode.

    So is your create failing for LITE mode?

    Can you make the below changes and check:

    params.encodingPreset           = XDM_USER_DEFINED;

    extH264Params.encQuality      = 2;

     

    Also, can you look into the release notes and confirm which version of codec you are using? Can you also inform which board you are using for profiling (DM365 or DM368)?

     

    rgds, mahant

     


  • Hi,  Mahant , thank u  so much for your help.  I have already solved this problem . Like u said , 1080p@30fps only can be achieved in LITE mode ,  but i created fail at the beginning . Finally i found  that i forgot to add the EDMA3 configurations to my encode cfg file ,  when i add it to the cfg file ,the frame rate reach the 30fps.

    But now i have another problem, my output will displays the previous queued frame in place of current queued frame most of the time   (frame-skipping) .

    Can u help me to explain this problem or solve it?  Thanks !

  • Katee,

    Since it is encoder, is this preview dsiplay you are reffering to ?  What is the resolution of preview ? Are you using DVSDK 3.1 for your experiments?

    regards

    Yashwant

  • Hi Yashwant , 

    I am really sorry that i didn't describe the problem clearly . 

    I meant  that when i run 1080p@30fps  ,the output video will display  the previous queued frame in place of current queued frame most of the time  by setting continuous mode.

    If i set the single-shot mode, this problem will not exist.

    I think there is something wrong with the VPFE driver, but I am sure this problem is in my  video capture thread , not in preview display.

    regards

    Katee

     

  • Hi,

      can you tell me how to add the EDMA3 configurations to the encode cfg file?

  • Hi,Katee.

    I set dm368 as you said,however,the frame rate just reaches 21fps.It cannot be up to 30fps.I don't know how to add the EDMA3 configurations to the encode config file. Can ou give me a demo?

    Best regards!

  • Hi , xiang xu :

     I 'm sorry to reply u late .

    You can modify .cfg of your project like below:

    var EDMA3 = xdc.useModule('ti.sdo.fc.edma3.Settings');
    EDMA3.globalInit = true;
    EDMA3.maxQdmaChannels = [10,10,10,10];
    EDMA3.trace = false;
    EDMA3.debug = false;
    EDMA3.maxRequests = 128
    Then you can open the LITE mode in your H264 encoder, which can be up to 30fps....
  • Hi,Katee:

    Thanks for your reply and patience.

    I forgot to tell you that my H264 encoder version is V01_10_00_08 which has no member such as

    extH264Params.enableDDRbuff    = 0;       

    extH264Params.sliceMode            = 0;        //0: for LITE

    extH264Params.outputDataMode  = 1;       

    extH264Params.sliceFormat         = 1;

    The H264 encoder creates failed When I set extH264Params.encQuality = 2 (params.encodingPreset     = XDM_USER_DEFINED).

    Where can I get the h264 encoder ( version 2.0) as he mentioned?

    Your prompt reply will be greatly appreciated.

    Best regards!

     

     

     

  • Hi ,xiang xu :

    30fps needs the version 2.0 or above . U can ask for the TI supportor for help (so did I ) , he/she can give u the latest version .

    Thanks.

  • Hi,

    Version 2.00.00 H.264 codec will be available on ti.com download site by 25th June.

    regards

    Yashwant

  • Former Member
    0 Former Member in reply to Yashwant Dutt

    Yashwant Dutt said:

    Hi,

    Version 2.00.00 H.264 codec will be available on ti.com download site by 25th June.

    regards

    Yashwant

     

    Please note that this version 2.00.00 of H.264 codec gets rid of the LITE mode. DM368 ARM frequency has been increased from 405MHz to 432MHz, which enables TI to support full Platinum codec at 1080p30 resolution on the DM368.

    ~Jacob

  • Hi,Yashwant,

    where can i get the Version 2.00.00 H.264 codec on the DM368?

     

    billy

  • Hi Billy,

    There is  a delay of 1 week in releasing the codecs. It will be available in 1st week of July. I will update the post, the moment it is done.

    regards

    Yashwant

  • Thanks a lot! It's very important for us.

  • Hi, Katee.

    Your Problem...

    [ But now i have another problem, my output will displays the previous queued frame in place of current queued frame most of the time (frame-skipping) . ]

    I met the same problem in 1080p@30fps.

    Did you solve the problem?

    If you solved the problem,

    Would you explain the solution?

    Best regards!