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.

H264hdfvenc DynamicParams problem

Hi,

I am currently doing a compress card with a dm6467 and TI H264 codecs. I use Gstreamer for the "video compression chain".

I have a problem with the IH264FHDVENC_DynamicParams. When I set IVIDENC1_DynamicParams.size to sizeof(IH264FHDVENC_DynamicParams) and i set all values of the IH264FHDVENC_DynamicParams specific parts with the default value given in the user guide, i can't instantiate the codec. The values are the following:

 

    IH264FHDVENC_DynamicParams extHDDynParams = {

    Venc1_DynamicParams_DEFAULT,

#ifdef H241_MULTISLICE

        {IH264_SLICECODING_DEFAULT, IH264_SLICEMODE_BYTES, 1400, {0}, IH264_BYTE_STREAM},

#else

        {IH264_SLICECODING_DEFAULT, IH264_SLICEMODE_NONE, 0, {0}, IH264_BYTE_STREAM},

#endif

        -1,     // OutBufSize                   -1=Codec defined buffer slice

        28,     // QPISlice

        28,     // QPSlice

        51,     // RateCtrlQpMax

        0,      // RateCtrlQpMin

        0,      // NumRowsInSlice

        0,      // LfDisableIdc

        0,      // LFAlphaC0Offset

        0,      // LFBetaOffset

        0,      // ChromaQPOffset

        0,      // SecChromaQPOffset

        /* Support for 1080 Encoder */

        0,      // PicAFFFlag;                  0 = PicAFF disabled

        IH264FHDVENC_POC_TYPE_0,      // PicOrderCountType;           0 = POC 0

        0,      // AdaptiveMBs;                 0 = No Adaptive MBs

        0,      // SEIParametersFlag;           0 = SEI switched off

        0,      // VUIParametersFlag;           0 = VUI switched off

        {0,0},  // VUIData;                     0 = XDM single buf desc

        0,      // NALUnitCallback;             0 = No callback

        0,      // SkipStartCodesInCallback;    0 = Start codes enabled

        IH264FHDVENC_4x4_IP_FRAME,              // Intra4x4EnableFlag

        0,      // BlockingCallFlag;            0 = Blocking call

        IH264FHDVENC_ME1080i,      // MESelect;                    1 = 1080i ME

        0,      // ME1080iMode;                 0 = High video quality

        0,      // MVDataFlag;                  0 = MV data disabled

        1,      // Transform8x8DisableFlag      1 = 8x8 Transforms Disabled

        IH264FHDVENC_8x8_NONE,                  // Intra8x8EnableFlag

        IH264FHDVENC_ONE_FIELD_DEFAULT,         // InterlaceReferenceMode

        IH264FHDVENC_CCV_LINEDROP,              // ChromaConversionMode

        1000, // maxDelay

        0,      // MaxSlicesSupported

    };

I can't see what i'm doing wrong. Can someone help me on this?
I use arago 2011.6 with code sourcery 2009 Q1. My codecs are from cs2dm6467_1_00_00_10.
Thank you.
Marc

 

  • Will reply back by Monday

    regards

    YD

  • 6765.D1_fhdenc.zipHi,

    I am also have problem with my fhd264encoder on dm6467T. I'm using the encoder to encode one 704x576 video , the encoded stream seems weird.  Here is my debug output after every VIDENC1_process():

    outArgs.BytesGenerated:30973, recFrames:1
    outArgs.BytesGenerated:11, recFrames:2
    outArgs.BytesGenerated:12, recFrames:3
    outArgs.BytesGenerated:12, recFrames:4
    outArgs.BytesGenerated:12, recFrames:5
    outArgs.BytesGenerated:114808, recFrames:6
    outArgs.BytesGenerated:12, recFrames:7
    outArgs.BytesGenerated:12, recFrames:8
    outArgs.BytesGenerated:12, recFrames:9
    outArgs.BytesGenerated:12, recFrames:10
    outArgs.BytesGenerated:113789, recFrames:11
    outArgs.BytesGenerated:12, recFrames:12
    outArgs.BytesGenerated:12, recFrames:13
    outArgs.BytesGenerated:12, recFrames:14
    outArgs.BytesGenerated:12, recFrames:15
    outArgs.BytesGenerated:105284, recFrames:16
    outArgs.BytesGenerated:12, recFrames:17
    outArgs.BytesGenerated:12, recFrames:18
    outArgs.BytesGenerated:12, recFrames:19
    outArgs.BytesGenerated:12, recFrames:20
    outArgs.BytesGenerated:113653, recFrames:21
    outArgs.BytesGenerated:12, recFrames:22
    outArgs.BytesGenerated:12, recFrames:23
    outArgs.BytesGenerated:12, recFrames:24
    outArgs.BytesGenerated:12, recFrames:25
    outArgs.BytesGenerated:105001, recFrames:26
    outArgs.BytesGenerated:12, recFrames:27
    outArgs.BytesGenerated:12, recFrames:28
    outArgs.BytesGenerated:12, recFrames:29
    outArgs.BytesGenerated:12, recFrames:30
    outArgs.BytesGenerated:105169, recFrames:31

    As you can see, I've set intraFrameInterval to 5,    I can't understand why all P frames only have 12 bytes size.  I attached the recorded stream file <D1_fhdenc.zip>

    You can see the stream has the following pattern.

    SPS  || PPS ||  many I Frames... ||  4 x P Frames(12 Bytes) || many I Frames... ||   4 x P Frames ||  many I Frames... || ...

    so 1.  Why  only the first encoded packet of stream has SPS&PPS before I  Frame?  unlike the other 264 steams have SPS&PPS before every I frame.

          2. Why the encoded stream contains so many I frames in one encoded packet? (because I saw many 0000000165 identifieres. )

         3. Why all of the P frames have only 12 bytes?

    I don't know whether it's because of the enc params or sth. else.

    I am using   : DVSDK: dvsdk_1_40_02_33 + xdais_6_25_02_11

                            HDVICP: dm6467_hdvicp_1_01_020_production 

                            CODEC: dm6467_h264fhdvenc_01_10_02_05_production

                            CODEC SERVER: encode1080pdemo   (replaced the codec of encode1080pdemo/combo  with 01_10_02_05_production)T

    Thank you.

    regards,

    Bowen

  • Mark,

    Can you please mention what is the DVSDK version you are using?

    Bowen,

    Can you please try h264fhdenc using the DVSDK version "dvsdk_dm6467_3_10_00_19". I will come back on your sub questions.

    Regards,

    Mahantesh

  • Hi,

    I'm not using a dvsdk but a mix used for making the arago 2011.06 image for gstreamer.

    The packages are the following:

    - bios (dspbios) 5.41.10.36

    - biosutil 1.02.02

    - codec engine 2.26.02.11

    - cs2dm6467 1.00.00.10

    - dmai 2.10.00.01

    - dsplink 1.65.00.03

    - dvsdk demo 3.10.00.16

    - edma3lld 1.11.02.05

    - framework component 2.26.00.01

    - linuxutils 2.26.01.02

    - xdais 6.26.01.03

    - xdctools 3.16.05.41

    And i use the cgt6x 7.2.4.

     

    Thank you.

     

    Marc

  • Can I still use MVL linux-2.6.10 / old kernel Image / old filesystem  with dvsdk_dm6467_3_10_00_19.

    Or I have to use new kernel / fs / drivers ?

     

  • Bowen,

    You have to use all new tools with new DVSDK.

    Regards,

    Mahantesh

  • Marc,

    Can you do the GETSTATUS command if you can and mention the exact error the encoder is returning. And can you also try using the params in the attched config file.

    Regards,

    Mahantesh

     

    6052.h264fhdenc1.zip