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.

DM368 H264 v2.20.0 sliceMode=1 not working?



I am trying to use MultiSlice feature of the v2.20 H264 encoder.

i.e.. SliceMode =1 (slice size in bits) ,  SliceSize = 11680

This doesn't appear to be working, although SliceMode = 3, SliceSize = 12 worked.

Is there another parameter that would turn off the SliceMode =1 option?

Here are my config params:

params.videncParams.size=124

params.videncParams.encodingPreset=3

params.videncParams.rateControlPreset=1

params.videncParams.maxHeight=576

params.videncParams.maxWidth=928

params.videncParams.maxFrameRate=30000

params.videncParams.maxBitRate=4000000

params.videncParams.dataEndianness=1

params.videncParams.maxInterFrameInterval=1

params.videncParams.inputChromaFormat=9

params.videncParams.inputContentType=0

params.videncParams.reconChromaFormat=-1

params.profileIdc=100

params.levelIdc=40

params.Log2MaxFrameNumMinus4=0

params.ConstraintSetFlag=0

params.entropyMode=1

params.transform8x8FlagIntraFrame=0

params.transform8x8FlagInterFrame=0

params.enableVUIparams=0

params.meAlgo=0

params.seqScalingFlag=0

params.encQuality=3

params.enableARM926Tcm=1

params.enableDDRbuff=0

params.sliceMode=1

params.numTemporalLayers=0

params.svcSyntaxEnable=0

params.EnableLongTermFrame=0

params.outputDataMode=1

params.sliceFormat=1

dynParams.videncDynamicParams.size=212

dynParams.videncDynamicParams.inputHeight=576

dynParams.videncDynamicParams.inputWidth=928

dynParams.videncDynamicParams.refFrameRate=30000

dynParams.videncDynamicParams.targetFrameRate=30000

dynParams.videncDynamicParams.targetBitRate=3000000

dynParams.videncDynamicParams.intraFrameInterval=30

dynParams.videncDynamicParams.generateHeader=0

dynParams.videncDynamicParams.captureWidth=928

dynParams.videncDynamicParams.forceFrame=-1

dynParams.videncDynamicParams.interFrameInterval=0

dynParams.videncDynamicParams.mbDataFlag=0

dynParams.sliceSize=11680

dynParams.airRate=0

dynParams.intraFrameQP=28

dynParams.interPFrameQP=28

dynParams.initQ=30

dynParams.rcQMax=51

dynParams.rcQMin=0

dynParams.rcQMaxI=51

dynParams.rcQMinI=0

dynParams.rcAlgo=1

dynParams.maxDelay=2000

dynParams.aspectRatioX=1

dynParams.aspectRatioY=1

dynParams.lfDisableIdc=0

dynParams.enableBufSEI=0

dynParams.enablePicTimSEI=0

dynParams.perceptualRC=1

dynParams.idrFrameInterval=30

dynParams.mvSADoutFlag=0

dynParams.resetHDVICPeveryFrame=0

dynParams.enableROI=0

dynParams.metaDataGenerateConsume=0

dynParams.maxBitrateCVBR=768000

dynParams.interlaceRefMode=0

dynParams.enableGDR=0

dynParams.GDRduration=5

dynParams.GDRinterval=30

dynParams.LongTermRefreshInterval=0

dynParams.UseLongTermFrame=0

dynParams.SetLongTermFrame=0

dynParams.CVBRsensitivity=0

dynParams.CVBRminbitrate=0

dynParams.LBRmaxpicsize=0

dynParams.LBRminpicsize=0

dynParams.LBRskipcontrol=327684

dynParams.maxHighCmpxIntCVBR=0

dynParams.disableMVDCostFactor=0

  • Hi Robert

    Please use latest encoder 02.30.00.04 from http://software-dl.ti.com/dsps/dsps_public_sw/codecs/DM36x/index_FDS.html and let us if you are still seeing the issue.

    Thanks,

    Veeranna

  •  Veeranna,

    I have updated to v2.30.00.04 of the encoder.  But I still have the problem.

    Any suggestions on what to try w/r/t sliceMode = 1

    Just to clarify...

    SliceSize is in bits and not bytes right?

    What is the range of valid slizeSize?

    When I make it small (500) I get an error returned from VIDENC1_control(...,XDM_SETPARAMS,....)

    I know there is not more that one slice because when I scrub the encoded data buffer for the NAL seperator, I can only find one NAL

    Thanks,

    Bob L.

     

  • Hi Robert,

    slice size is in bits and min value for this 1024 bits, we will check if this info is missed in UserGuide. To debug such issue you better run with debug version codec lib so it prints more information about cause.

    Thanks,

    Veeranna

  • Hi Veeranna,

    I am now using the debug library.

    I do not see any references to the sliceMode=1 failing.

    Please review my encoder settings above to make sure I am not eliminating slice mode = 1 somehow.

    Here is the screen output for the encoder initialization and compression of first 3 frames:

    video encoder configured for w=928, h=576
    sliceMode = 1
    sliceSize = 11680 bits

    Calling VIDENC1_create
    CODEC_DEBUG_ENABLE: Inside Funtion to get memtab Requirement -> H264VENC_TI_numAlloc
    CODEC_DEBUG_ENABLE: Number of memtabs required: 16
    CODEC_DEBUG_ENABLE: Inside Funtion to Get Memory Requirements of the current algoirthm  instance -> H264VENC_TI_alloc
    CODEC_DEBUG_ENABLE: H264VENC_TI_Obj-memTab[0].size =         0x0724
    CODEC_DEBUG_ENABLE: tH264EncState-memTab[1].size =         0x14a8
    CODEC_DEBUG_ENABLE: tH264EncState-memTab[2].size =         0x14a8
    CODEC_DEBUG_ENABLE: EXT_MEM_SCRATCH-memTab[3].size =         0x5000
    CODEC_DEBUG_ENABLE: EXT_MEM_PERSIST-memTab[4].size =         0x0800
    CODEC_DEBUG_ENABLE: MAX_REF_BUFFERS-memTab[5].size =         0x1f8000
    CODEC_DEBUG_ENABLE: LIST_SLICE_SIZES-memTab[6].size =         0x0320
    CODEC_DEBUG_ENABLE: uiMaxCodeSize-memTab[7].size =         0xccdc
    CODEC_DEBUG_ENABLE: uiMaxCodeSize-memTab[8].size =         0xce68
    CODEC_DEBUG_ENABLE: KALEIDO_COMMANDS-memTab[9].size =         0x10680
    CODEC_DEBUG_ENABLE: AIR_BIT_STORAGE-memTab[10].size =         0x20000
    CODEC_DEBUG_ENABLE: AIR_BIT_STORAGE-memTab[11].size =         0x40000
    CODEC_DEBUG_ENABLE: tStPhysicalAddrHandle-memTab[12].size =     0x0280
    CODEC_DEBUG_ENABLE: IMCOP_TO_DDR-memTab[13].size =         0xc000
    CODEC_DEBUG_ENABLE: MEGAPIX_IMCOP_TO_DDR-memTab[14].size =         0x4780
    CODEC_DEBUG_ENABLE: Privacy Masking[15].size =         0x1f40
    CODEC_DEBUG_ENABLE: Exiting Funtion H264VENC_TI_alloc

    CODEC_DEBUG_ENABLE: Inside Init Obj Function
    CODEC_DEBUG_ENABLE: Intialises the memory allocated for a given handle object instance
    CODEC_DEBUG_ENABLE: Checking MemTab Parameters-> Base_Null, Base_Not_Aligned and Overlap
    CODEC_DEBUG_ENABLE: Checking MemTab Parameters-> Base_Null, Base_Not_Aligned and Overlap Completed
    CODEC_DEBUG_ENABLE: Checking Input parameter Values
    CODEC_DEBUG_ENABLE: Checking of Input parameter Completed
    CODEC_DEBUG_ENABLE: Inside H264VENC_TI_Copy_codearm968 Function to Copy Code & Data Sections
    CODEC_DEBUG_ENABLE: Succesfully Copied Code & Data Sections
    CODEC_DEBUG_ENABLE: Inside H264VENC_TI_Copy_codearm968_3 Function to Copy Code & Data Sections
    CODEC_DEBUG_ENABLE: Succesfully Copied Code & Data Sections
    CODEC_DEBUG_ENABLE: Inside H264VENC_TI_Copy_codearm968_4 Function to Copy Code & Data Sections
    CODEC_DEBUG_ENABLE: Succesfully Copied Code & Data Sections
    CODEC_DEBUG_ENABLE: Initializing SPS parameters
    CODEC_DEBUG_ENABLE: SPS parameters initialization Completed
    CODEC_DEBUG_ENABLE: Initializing PPS parameters
    CODEC_DEBUG_ENABLE: SPS parameters initialization Completed
    CODEC_DEBUG_ENABLE: Inside Slice Initilization Call
    CODEC_DEBUG_ENABLE: Slice Initilization Completed
    CODEC_DEBUG_ENABLE: Inside IRES Call to get Number of Resources -> H264VENC_TI_numResourceDescriptors
    CODEC_DEBUG_ENABLE: Number of Resources Required - 50
    CODEC_DEBUG_ENABLE: Inside IRES Call to Get Resource -> H264VENC_TI_getResouceDescriptors
    CODEC_DEBUG_ENABLE: Exiting IRES Call to Get Resource function
    CODEC_DEBUG_ENABLE: Inside DDR allocation
    CODEC_DEBUG_ENABLE: Inside IRES Call to Init Resource -> H264VENC_TI_initResources

    CODEC_DEBUG_ENABLE: Resource Number - 0
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 0
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f07000

    CODEC_DEBUG_ENABLE: Resource Number - 1
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 1
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f07020

    CODEC_DEBUG_ENABLE: Resource Number - 2
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 4
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f07080

    CODEC_DEBUG_ENABLE: Resource Number - 3
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 5
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f070a0

    CODEC_DEBUG_ENABLE: Resource Number - 4
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 6
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f070c0

    CODEC_DEBUG_ENABLE: Resource Number - 5
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 7
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f070e0

    CODEC_DEBUG_ENABLE: Resource Number - 6
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 8
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f07100

    CODEC_DEBUG_ENABLE: Resource Number - 7
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 9
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f07120

    CODEC_DEBUG_ENABLE: Resource Number - 8
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 10
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f07140

    CODEC_DEBUG_ENABLE: Resource Number - 9
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 11
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f07160

    CODEC_DEBUG_ENABLE: Resource Number - 10
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 12
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f07180

    CODEC_DEBUG_ENABLE: Resource Number - 11
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 13
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f071a0

    CODEC_DEBUG_ENABLE: Resource Number - 12
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 14
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f071c0

    CODEC_DEBUG_ENABLE: Resource Number - 13
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 15
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f071e0

    CODEC_DEBUG_ENABLE: Resource Number - 14
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 16
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f07200

    CODEC_DEBUG_ENABLE: Resource Number - 15
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 17
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f07220

    CODEC_DEBUG_ENABLE: Resource Number - 16
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 18
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f07240

    CODEC_DEBUG_ENABLE: Resource Number - 17
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 19
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f07260

    CODEC_DEBUG_ENABLE: Resource Number - 18
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 20
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f07280

    CODEC_DEBUG_ENABLE: Resource Number - 19
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 21
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f072a0

    CODEC_DEBUG_ENABLE: Resource Number - 20
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 22
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f072c0

    CODEC_DEBUG_ENABLE: Resource Number - 21
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 23
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f072e0

    CODEC_DEBUG_ENABLE: Resource Number - 22
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 24
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f07300

    CODEC_DEBUG_ENABLE: Resource Number - 23
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 25
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f07320

    CODEC_DEBUG_ENABLE: Resource Number - 24
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 28
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f07380

    CODEC_DEBUG_ENABLE: Resource Number - 25
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 29
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f073a0

    CODEC_DEBUG_ENABLE: Resource Number - 26
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 30
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f073c0

    CODEC_DEBUG_ENABLE: Resource Number - 27
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 31
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f073e0

    CODEC_DEBUG_ENABLE: Resource Number - 28
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 32
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f07400

    CODEC_DEBUG_ENABLE: Resource Number - 29
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 33
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f07420

    CODEC_DEBUG_ENABLE: Resource Number - 30
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 34
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f07440

    CODEC_DEBUG_ENABLE: Resource Number - 31
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 35
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f07460

    CODEC_DEBUG_ENABLE: Resource Number - 32
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 36
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f07480

    CODEC_DEBUG_ENABLE: Resource Number - 33
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 37
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f074a0

    CODEC_DEBUG_ENABLE: Resource Number - 34
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 38
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f074c0

    CODEC_DEBUG_ENABLE: Resource Number - 35
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 39
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f074e0

    CODEC_DEBUG_ENABLE: Resource Number - 36
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 40
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f07500

    CODEC_DEBUG_ENABLE: Resource Number - 37
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 41
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f07520

    CODEC_DEBUG_ENABLE: Resource Number - 38
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 42
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f07540

    CODEC_DEBUG_ENABLE: Resource Number - 39
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 43
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f07560

    CODEC_DEBUG_ENABLE: Resource Number - 40
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 44
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f07580

    CODEC_DEBUG_ENABLE: Resource Number - 41
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 45
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f075a0

    CODEC_DEBUG_ENABLE: Resource Number - 42
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 46
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f075c0

    CODEC_DEBUG_ENABLE: Resource Number - 43
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 47
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f075e0

    CODEC_DEBUG_ENABLE: Resource Number - 44
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 48
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f07600

    CODEC_DEBUG_ENABLE: Resource Number - 45
    CODEC_DEBUG_ENABLE: Assigned Edma Channel Index: 49
    CODEC_DEBUG_ENABLE: Assigned Number of TCs: 1  
    CODEC_DEBUG_ENABLE: Assigned Param Space Address: 0x41f07620
    CODEC_DEBUG_ENABLE: IRES Call to Open EDMA Channel Successfully Completed
    CODEC_DEBUG_ENABLE: Inside IMCOP Resource allocation
    CODEC_DEBUG_ENABLE: IMCOP addr0  :0x11f00000
    CODEC_DEBUG_ENABLE: IMCOP addr1  :0x11f04b00
    CODEC_DEBUG_ENABLE: IMCOP addr2  :0x11f08f00
    CODEC_DEBUG_ENABLE: IMCOP addr3  :0x11f09700
    CODEC_DEBUG_ENABLE: Resource Number - 47
    CODEC_DEBUG_ENABLE: HDVICP resoruce alloted

    Calling VIDENC1_control(XDM_GETVERSION)
    CODEC_DEBUG_ENABLE: Inside Encoder Handle Structure Activate Call -> H264VENC_TI_activate
    CODEC_DEBUG_ENABLE: Inside IRES Call to Activate All Resources -> H264VENC_TI_activateAllResources
    CODEC_DEBUG_ENABLE: Control Call With GETVERSION Command
    CODEC_DEBUG_ENABLE: Inside IRES Call to Deactivate All Resources -> H264VENC_TI_deactivateAllResources
    CODEC_DEBUG_ENABLE: Inside Encoder Handle Structure Deactivate Call -> H264VENC_TI_deactivate
    encoder version = @(#)Id:H264VENC_TI Ver:02.30.00.04 Released by:DEV_210_V_H264_E_HP_DM365_02_30_00_04 Built:Jan  5 2012 16:57:32

    Calling VIDENC1_control(XDM_SETPARAMS)
    CODEC_DEBUG_ENABLE: Inside Encoder Handle Structure Activate Call -> H264VENC_TI_activate
    CODEC_DEBUG_ENABLE: Inside IRES Call to Activate All Resources -> H264VENC_TI_activateAllResources
    CODEC_DEBUG_ENABLE: Control Call With SETPARAM Command
    CODEC_DEBUG_ENABLE: Control Call With SETPARAM Command Completed Successfully
    CODEC_DEBUG_ENABLE: Inside IRES Call to Deactivate All Resources -> H264VENC_TI_deactivateAllResources
    CODEC_DEBUG_ENABLE: Inside Encoder Handle Structure Deactivate Call -> H264VENC_TI_deactivate

    Calling VIDENC1_control(XDM_GETBUFINFO)
    CODEC_DEBUG_ENABLE: Inside Encoder Handle Structure Activate Call -> H264VENC_TI_activate
    CODEC_DEBUG_ENABLE: Inside IRES Call to Activate All Resources -> H264VENC_TI_activateAllResources
    CODEC_DEBUG_ENABLE: Control Call With GETBUFINFO Command
    CODEC_DEBUG_ENABLE: Control Call With GETBUFINFO Command Completed Successfully
    CODEC_DEBUG_ENABLE: Inside IRES Call to Deactivate All Resources -> H264VENC_TI_deactivateAllResources
    CODEC_DEBUG_ENABLE: Inside Encoder Handle Structure Deactivate Call -> H264VENC_TI_deactivate
    encStatus.bufInfo.minNumInBufs = 2
    encStatus.bufInfo.minInBufSize[0] = 534528
    encStatus.bufInfo.minInBufSize[1] = 267264
    encStatus.bufInfo.minNumOutBufs = 1
    encStatus.bufInfo.minOutBufSize[0] = 801792
    CODEC_DEBUG_ENABLE: Inside Encoder Handle Structure Activate Call -> H264VENC_TI_activate
    CODEC_DEBUG_ENABLE: Inside IRES Call to Activate All Resources -> H264VENC_TI_activateAllResources
    CODEC_DEBUG_ENABLE: H264VENC_TI_encode function executing..
    CODEC_DEBUG_ENABLE: DEVICE ID CHECK completed
    CODEC_DEBUG_ENABLE: SEI USERDATA INSERTION initialization done..
    CODEC_DEBUG_ENABLE: H264VENC_TI_Init executed..
    CODEC_DEBUG_ENABLE: bitstream initialization done..
    CODEC_DEBUG_ENABLE: pAddrHndl computed and stored..
    CODEC_DEBUG_ENABLE: reset_vIMCOP_every_frame done..
    CODEC_DEBUG_ENABLE: Inside ARM926 H264VENC_TI_Encode_Frame_HeaderGen Function Call
    CODEC_DEBUG_ENABLE: Seq scaling matrix Copied in to CALC command set
    CODEC_DEBUG_ENABLE: Generating the NAL unit containing Sequence Parameter Set SPS
    CODEC_DEBUG_ENABLE: Generation of the NAL unit containing Sequence Parameter Set (SPS) Completed
    CODEC_DEBUG_ENABLE: Generating the NAL unit containing Picture Parameter Set PPS
    CODEC_DEBUG_ENABLE: Generation of NAL unit containing Picture Parameter Set PPS Completed
    CODEC_DEBUG_ENABLE: H264V_TI_DMA_Map_TC executed..
    CODEC_DEBUG_ENABLE: Inside H264VENC_TI_KALEIDO_PSC_Reset Function
    CODEC_DEBUG_ENABLE: Exiting H264VENC_TI_KALEIDO_PSC_Reset Function
    CODEC_DEBUG_ENABLE: Inside H264VENC_TI_KALEIDO_PSC_Enable_InitRam_Low Function
    CODEC_DEBUG_ENABLE: Exiting H264VENC_TI_KALEIDO_PSC_Enable_InitRam_Low Function
    CODEC_DEBUG_ENABLE: Inside H264VENC_TI_Loader_arm968 Function to Load Code & Data Sections

    CODEC_DEBUG_ENABLE: DMA of Section 0 and Parameters are:
        Source Address: 0x84de4000     Destination Address: 0x12040000     Number of Bytes: 32

    CODEC_DEBUG_ENABLE: DMA of Section 1 and Parameters are:
        Source Address: 0x84de4020     Destination Address: 0x12040100     Number of Bytes: 45124

    CODEC_DEBUG_ENABLE: DMA of Section 2 and Parameters are:
        Source Address: 0x84def064     Destination Address: 0x1206649c     Number of Bytes: 3992

    CODEC_DEBUG_ENABLE: DMA of Section 3 and Parameters are:
        Source Address: 0x84defffc     Destination Address: 0x12067734     Number of Bytes: 116
    CODEC_DEBUG_ENABLE: Succesfully Loaded Code & Data Sections
    CODEC_DEBUG_ENABLE: Inside H264VENC_TI_KALEIDO_PSC_SyncReset Function
    CODEC_DEBUG_ENABLE: Exiting H264VENC_TI_KALEIDO_PSC_SyncReset Function
    CODEC_DEBUG_ENABLE: Inside H264VENC_TI_KALEIDO_PSC_Enable Function
    CODEC_DEBUG_ENABLE: Exiting H264VENC_TI_KALEIDO_PSC_Enable Function
    CODEC_DEBUG_ENABLE: Inside ARM926 H264VENC_TI_Encode_Frame Function Call
    CODEC_DEBUG_ENABLE: Physical addresses computed and stored in the structure
    CODEC_DEBUG_ENABLE: H264VENC_TI_Encode_Frame Function Executed..
    CODEC_DEBUG_ENABLE: Generate interrupt to arm968 using KLD intc
    CODEC_DEBUG_ENABLE: H264VENC_TI_Encode_End calling..
    CODEC_DEBUG_ENABLE: Inside ARM926 H264VENC_TI_Encode_End Function Call
    CODEC_DEBUG_ENABLE: ARM926 H264VENC_TI_Encode_End Function Executed
    CODEC_DEBUG_ENABLE: H264VENC_TI_Encode_End executed..
    CODEC_DEBUG_ENABLE: Updating EncOutParams..
    CODEC_DEBUG_ENABLE: H264VENC_TII_encode executed successfully..
    CODEC_DEBUG_ENABLE: Inside IRES Call to Deactivate All Resources -> H264VENC_TI_deactivateAllResources
    CODEC_DEBUG_ENABLE: Inside Encoder Handle Structure Deactivate Call -> H264VENC_TI_deactivate
    Frame 47903988: 30236 bytes, type 3
    serving packet, size = 14
    serving packet, size = 8
    serving packet, size = 30214

    CODEC_DEBUG_ENABLE: Inside Encoder Handle Structure Activate Call -> H264VENC_TI_activate
    CODEC_DEBUG_ENABLE: Inside IRES Call to Activate All Resources -> H264VENC_TI_activateAllResources
    CODEC_DEBUG_ENABLE: H264VENC_TI_encode function executing..
    CODEC_DEBUG_ENABLE: DEVICE ID CHECK completed
    CODEC_DEBUG_ENABLE: SEI USERDATA INSERTION initialization done..
    CODEC_DEBUG_ENABLE: H264VENC_TI_Init executed..
    CODEC_DEBUG_ENABLE: bitstream initialization done..
    CODEC_DEBUG_ENABLE: pAddrHndl computed and stored..
    CODEC_DEBUG_ENABLE: reset_vIMCOP_every_frame done..
    CODEC_DEBUG_ENABLE: Inside ARM926 H264VENC_TI_Encode_Frame_HeaderGen Function Call
    CODEC_DEBUG_ENABLE: H264V_TI_DMA_Map_TC executed..
    CODEC_DEBUG_ENABLE: Inside H264VENC_TI_KALEIDO_PSC_Reset Function
    CODEC_DEBUG_ENABLE: Exiting H264VENC_TI_KALEIDO_PSC_Reset Function
    CODEC_DEBUG_ENABLE: Inside H264VENC_TI_KALEIDO_PSC_Enable_InitRam_Low Function
    CODEC_DEBUG_ENABLE: Exiting H264VENC_TI_KALEIDO_PSC_Enable_InitRam_Low Function
    CODEC_DEBUG_ENABLE: Inside H264VENC_TI_Loader_arm968_4 Function to Load Code & Data Sections

    CODEC_DEBUG_ENABLE: DMA of Section 0 and Parameters are:
        Source Address: 0x84df3000     Destination Address: 0x12040000     Number of Bytes: 32

    CODEC_DEBUG_ENABLE: DMA of Section 1 and Parameters are:
        Source Address: 0x84df3020     Destination Address: 0x12040100     Number of Bytes: 48764

    CODEC_DEBUG_ENABLE: DMA of Section 2 and Parameters are:
        Source Address: 0x84dfee9c     Destination Address: 0x12066994     Number of Bytes: 3532

    CODEC_DEBUG_ENABLE: DMA of Section 3 and Parameters are:
        Source Address: 0x84dffc68     Destination Address: 0x12067a60     Number of Bytes: 116
    CODEC_DEBUG_ENABLE: Succesfully Loaded Code & Data Sections
    CODEC_DEBUG_ENABLE: Inside H264VENC_TI_KALEIDO_PSC_SyncReset Function
    CODEC_DEBUG_ENABLE: Exiting H264VENC_TI_KALEIDO_PSC_SyncReset Function
    CODEC_DEBUG_ENABLE: Inside H264VENC_TI_KALEIDO_PSC_Enable Function
    CODEC_DEBUG_ENABLE: Exiting H264VENC_TI_KALEIDO_PSC_Enable Function
    CODEC_DEBUG_ENABLE: Inside ARM926 H264VENC_TI_Encode_Frame Function Call
    CODEC_DEBUG_ENABLE: Physical addresses computed and stored in the structure
    CODEC_DEBUG_ENABLE: H264VENC_TI_Encode_Frame Function Executed..
    CODEC_DEBUG_ENABLE: Generate interrupt to arm968 using KLD intc
    CODEC_DEBUG_ENABLE: H264VENC_TI_Encode_End calling..
    CODEC_DEBUG_ENABLE: Inside ARM926 H264VENC_TI_Encode_End Function Call
    CODEC_DEBUG_ENABLE: ARM926 H264VENC_TI_Encode_End Function Executed
    CODEC_DEBUG_ENABLE: H264VENC_TI_Encode_End executed..
    CODEC_DEBUG_ENABLE: Updating EncOutParams..
    CODEC_DEBUG_ENABLE: H264VENC_TII_encode executed successfully..
    CODEC_DEBUG_ENABLE: Inside IRES Call to Deactivate All Resources -> H264VENC_TI_deactivateAllResources
    CODEC_DEBUG_ENABLE: Inside Encoder Handle Structure Deactivate Call -> H264VENC_TI_deactivate

    Frame 47906988: 6132 bytes, type 1
    serving packet, size = 6132
    CODEC_DEBUG_ENABLE: Inside Encoder Handle Structure Activate Call -> H264VENC_TI_activate
    CODEC_DEBUG_ENABLE: Inside IRES Call to Activate All Resources -> H264VENC_TI_activateAllResources
    CODEC_DEBUG_ENABLE: H264VENC_TI_encode function executing..
    CODEC_DEBUG_ENABLE: DEVICE ID CHECK completed
    CODEC_DEBUG_ENABLE: SEI USERDATA INSERTION initialization done..
    CODEC_DEBUG_ENABLE: H264VENC_TI_Init executed..
    CODEC_DEBUG_ENABLE: bitstream initialization done..
    CODEC_DEBUG_ENABLE: pAddrHndl computed and stored..
    CODEC_DEBUG_ENABLE: reset_vIMCOP_every_frame done..
    CODEC_DEBUG_ENABLE: Inside ARM926 H264VENC_TI_Encode_Frame_HeaderGen Function Call
    CODEC_DEBUG_ENABLE: Inside ARM926 H264VENC_TI_Encode_Frame Function Call
    CODEC_DEBUG_ENABLE: Physical addresses computed and stored in the structure
    CODEC_DEBUG_ENABLE: H264VENC_TI_Encode_Frame Function Executed..
    CODEC_DEBUG_ENABLE: Generate interrupt to arm968 using KLD intc
    CODEC_DEBUG_ENABLE: H264VENC_TI_Encode_End calling..
    CODEC_DEBUG_ENABLE: Inside ARM926 H264VENC_TI_Encode_End Function Call
    CODEC_DEBUG_ENABLE: ARM926 H264VENC_TI_Encode_End Function Executed
    CODEC_DEBUG_ENABLE: H264VENC_TI_Encode_End executed..
    CODEC_DEBUG_ENABLE: Updating EncOutParams..
    CODEC_DEBUG_ENABLE: H264VENC_TII_encode executed successfully..
    CODEC_DEBUG_ENABLE: Inside IRES Call to Deactivate All Resources -> H264VENC_TI_deactivateAllResources
    CODEC_DEBUG_ENABLE: Inside Encoder Handle Structure Deactivate Call -> H264VENC_TI_deactivate

    Frame 47909989: 16813 bytes, type 1
    serving packet, size = 16813

  • Hi Robert,

    you are setting entropyMode = 1, we do not support H241 with CABAC encoding mode. you need to set entropyMode = 0.

    Thanks,

    Veeranna

  • Veeranna,

    Thank you.  entropyMode = 0 resolved my issue.

    Is this limitation documented in the User's Guide?  I could not find it.

    Or is there other documentation regarding H241.

    Thank you,

    Bob Landle

     

     

     

  • Hi Veeranna,

    as u have posted earlier that the h264 codecs given by ti does not support CABAC

    but as given in user guide it and basic h264 profiling that high and main profile supports CABAC

    so

    Is the design of h264 by ti does not support CABAC or some other reason.

    It will be a great help if u can clear it out.

    thanks

    kailash

  • Hi Kailash,

    TI's H264 encoder supports CABAC encoding, what I meant is H241(slicemode=1) is not supported with CABAC mode enable. If you want use slicemode=1, set it to CAVLC mode, if you don't want use slicemode=1 feature, you can set CABAC.

    Thanks,

    Veeranna

  • Hi Veeranna

    These following are my settings for dm365 encode

    using latest codec from the link u gave in the above post

    but it always show encoder create fail

    params.size = sizeof(IH264VENC_Params);
    //printf("\n params.size = %d ",(int)params.size);
    //memcpy(&h264params, &IH264VENC_PARAMS, sizeof(IH264VENC_Params));
    h264params.videncParams = params;
    h264params.profileIdc =77;
    //h264params.levelIdc = 31;
    h264params.entropyMode= 1;
    //h264params.transform8x8FlagIntraFrame = 0;
    //h264params.transform8x8FlagInterFrame = 0;
    h264params.Log2MaxFrameNumMinus4 = 6;
    h264params.ConstraintSetFlag = 0;
    h264params.numTemporalLayers = 0;
    h264params.enableVUIparams = 0;

    h264params.svcSyntaxEnable = 0;

    h264params.meAlgo = 0;
    h264params.EnableLongTermFrame = 0;
    //h264params.seqScalingFlag = 0;
    h264params.encQuality = 2;
    h264params.enableARM926Tcm = 0;
    h264params.enableDDRbuff = 0;
    h264params.sliceMode =0;
    h264params.outputDataMode=1;
    h264params.sliceFormat =1;

    but if i use entropymode as 0 ie cavlc it works fine

    what is the problem

    thanks

    kailash