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.

What may cause M3 codec don't send h264 bitstream?

Other Parts Discussed in Thread: TVP7002

Hello,TI er!

I embedded a CallBack funtion to IpcBitsInLinkHLOS LINK to send a sem to signal our thread to receive h.264 bitstream,but after our board run for a while,about 10minutes,the CallBack funtion don't run anymore.It seems the m3 codec don't work any longer.m3 codec's cpu load drops to about 8%.

The rdk we use is 3.0

[m3vpss ]
[c6xdsp ]
[m3video] 380401: LOAD: CPU: 8.1% HWI: 1.2%, SWI:1.0%
[m3vpss ] 380394: LOAD: CPU: 28.6% HWI: 4.5%, SWI:2.0%
[c6xdsp ] 480677: LOAD: CPU: 2.0% HWI: 0.2%, SWI:0.1%
[m3video]
[m3vpss ]
[c6xdsp ]
[m3video] 380401: LOAD: TSK: IPC_IN_M30 : 0.9%
[m3vpss ] 380394: LOAD: TSK: IPC_OUT_M30 : 1.5%
[c6xdsp ] 480677: LOAD: TSK: IPC_FRAMES_IN0 : 0.1%
[m3video] 380401: LOAD: TSK: IPC_BITS_OUT0 : 0.4%
[m3vpss ] 380395: LOAD: TSK: IPC_FRAMES_OUT0 : 0.6%
[c6xdsp ] 480677: LOAD: TSK: IPC_FRAMES_IN1 : 0.1%
[m3video] 380401: LOAD: TSK: ENC0 : 1.8%
[m3vpss ] 380395: LOAD: TSK: IPC_FRAMES_OUT1 : 0.6%
[c6xdsp ] 480677: LOAD: TSK: MISC : 1.5%
[m3video] 380401: LOAD: TSK: DEC0 : 0.7%
[m3vpss ] 380395: LOAD: TSK: CAPTURE : 0.8%
[c6xdsp ]
[m3video] 380402: LOAD: TSK: ENC_PROCESS_TSK_1 : 0.8%
[m3vpss ] 380395: LOAD: TSK: NSF0 : 3.0%
[m3video] 380402: LOAD: TSK: ENC_PROCESS_TSK_2 : 0.8%
[m3vpss ] 380395: LOAD: TSK: DISPLAY0 : 0.6%

[m3video] 380402: LOAD: TSK: MISC : 0.5%
[m3vpss ] 380395: LOAD: TSK: DISPLAY1 : 0.4%
root@dm816x:/mnt/opt/dvr_rdk/ti816x/bin# [m3video]
[m3vpss ] 380395: LOAD: TSK: DISPLAY2 : 0.2%
[m3vpss ] 380395: LOAD: TSK: NULL0 : 1.3%
[m3vpss ] 380396: LOAD: TSK: DUP0 : 0.2%
[m3vpss ] 380396: LOAD: TSK: DUP1 : 0.3%
[m3vpss ] 380396: LOAD: TSK: DUP2 : 0.3%
[m3vpss ] 380396: LOAD: TSK: DUP3 : 0.8%
[m3vpss ] 380396: LOAD: TSK: Scalar0 : 1.0%
[m3vpss ] 380397: LOAD: TSK: SWMS0 : 2.3%
[m3vpss ] 380397: LOAD: TSK: SWMS1 : 1.1%
[m3vpss ] 380397: LOAD: TSK: SWMS2 : 0.3%
[m3vpss ] 380397: LOAD: TSK: MERGE0 : 0.2%
[m3vpss ] 380397: LOAD: TSK: MERGE1 : 0.5%
[m3vpss ] 380397: LOAD: TSK: MERGE2 : 0.7%
[m3vpss ] 380397: LOAD: TSK: SELECT0 : 0.8%
[m3vpss ] 380397: LOAD: TSK: SELECT1 : 0.7%
[m3vpss ] 380398: LOAD: TSK: SELECT2 : 0.5%
[m3vpss ] 380398: LOAD: TSK: MISC : 3.4%
[m3vpss ]

What may cause this problem?thanks for any reply.

  • Pls attach full logs of Vsys_printDetailedStatistics and Vsys_printBufferStatistics. Logs should be collected atleast 2 times with 1 min interval.

  • Should I call Vsys_printBufferStatistics( ) to get buffer information?

    But It just print

    "

    VDEC:Buffer Statistics
    ChId | InBufCnt | OutBufCnt

    "

    Any wrong?

  • Are you running remote debug client. Is your usecase populating all links Ids for gVdecModuleContext,gVencModuleContext,gVcapModuleContext,gVdisModuleContext

  • If we didn't get h.264 bitstream buf from M3 codec on time,will iM3 codec hang?

  • No it will not cause any hang

  • If M3 codec's internal bitstream buffer overflows for a reason that our thread didn't get buf on time,M3 codec can still put h264 bitstream buffer to A8?

    Or,in what situtation,M3 codec will no longer put h264 bitstream buf to A8?

    In our test, IpcBitsInLinkHLOS LINK's CallBack function don't run after a while in some case,so I think the reason is that M3 codec's buffer overflows.

  • M3 will continue to send bitstream data even if system is not realtime.Reason for not sending bitstream could be HDVICP lockup or M3 crash. As I mentioned previously share the logs of Vsys_printDetailedStatistics and Vsys_printBufferStatistics to be able to debug the issue. Also log the console logs when the issue happens. As I indicated previously ensure you are running remote_debug_client.

  • Below is print information.

    M3  codec seems to hang in RED LINE.

     

    ===================printBufferStatus:==================

    IPCBITSOUTLINK:Buffer Statistics
    Num Alloc Pools:1
    PoolId | TotalBufCnt | FreeBufCnt | BufSize
    0| 16| 0| 921600

    VDEC:Buffer Statistics
    ChId | InBufCnt | OutBufCnt

    [m3video]
    [m3video] *** Encode Statistics ***
    [m3video] 225107: ENC: Rcvd from prev = 6138, Returned to prev = 6138
    [m3video] ENC Out BitBuf Q Status
    [m3video] Empty Q 0 -> count 14, wrPtr 265, rdPtr 251
    [m3video] Empty Q 1 -> count 7, wrPtr 134, rdPtr 127
    [m3video] Full Q -> count 0, wrPtr 378, rdPtr 378

    ===================printDetailedStatistics:==================


    a5-aa- 0- 0- 0- 4- 1- 3- 1- 1- 0- 0- 0- 0-a5-a5-5a-5a-5a-5a-a7-55-5a-bb-
    =====================cmd = 1030101

    Channel Name Match!!

    STATUS 97
    LinesPerFrame:2ea
    ClocksPerLine:25d
    TVP7002 Detect Finish!!!
    EXT_PB_Video.VideoModel:01

    TVP7002 Start Capture!!!

    MDIN325 Enable Convert Done!

    [m3video] 232000: HDVICP-ID:0
    [m3video] All percentage figures are based off totalElapsedTime
    [m3video] totalAcquire2wait :0 %
    [m3video] totalWait2Isr :4 %
    [m3video] totalIsr2Done :0 %
    [m3video] totalWait2Done :4 %
    [m3video] totalDone2Release :0 %
    [m3video] totalAcquire2Release :4 %
    [m3video] totalAcq2acqDelay :95 %
    [m3video] totalElapsedTime in msec : 120582
    [m3video] numAccessCnt: 26052
    [m3video] IVA-FPS : 217
    [m3video] Average time spent per frame in microsec: 185
    [m3video] 232001: HDVICP-ID:1
    [m3video] All percentage figures are based off totalElapsedTime
    [m3video] totalAcquire2wait :0 %
    [m3video] totalWait2Isr :20 %
    [m3video] totalIsr2Done :0 %
    [m3video] totalWait2Done :20 %
    [m3video] totalDone2Release :0 %
    [m3video] totalAcquire2Release :20 %
    [m3video] totalAcq2acqDelay :79 %
    [m3video] totalElapsedTime in msec : 120591
    [m3video] numAccessCnt: 26052
    [m3video] IVA-FPS : 217
    [m3video] Average time spent per frame in microsec: 925
    [m3video] 232002: HDVICP-ID:2
    [m3video] All percentage figures are based off totalElapsedTime
    [m3video] totalAcquire2wait :0 %
    [m3video] totalWait2Isr :19 %
    [m3video] totalIsr2Done :0 %
    [m3video] totalWait2Done :19 %
    [m3video] totalDone2Release :0 %
    [m3video] totalAcquire2Release :20 %
    [m3video] totalAcq2acqDelay :79 %
    [m3video] totalElapsedTime in msec : 120539
    [m3video] numAccessCnt: 26016
    [m3video] IVA-FPS : 216
    [m3video] Average time spent per frame in microsec: 880
    [m3video]
    [m3video] *** ENCODE Statistics ***
    [m3video]
    [m3video] Elasped Time : 11 secs
    [m3video]
    [m3video]
    [m3video] CH | In Recv In Skip In User Out Latency
    [m3video] Num | FPS FPS Skip FPS FPS Min / Max
    [m3video] --------------------------------------------
    [m3video] 0 | 18 0 0 18 89 / 166
    [m3video] 1 | 18 0 0 18 76 / 113
    [m3video] 2 | 18 0 0 18 83 / 158
    [m3video]
    [m3video] Multi Channel Encode Average Submit Batch Size
    [m3video] Max Submit Batch Size : 24
    [m3video] IVAHD_0 Average Batch Size : 1
    [m3video] IVAHD_0 Max achieved Batch Size : 1
    [m3video] IVAHD_1 Average Batch Size : 1
    [m3video] IVAHD_1 Max achieved Batch Size : 1
    [m3video] IVAHD_2 Average Batch Size : 1
    [m3video] IVAHD_2 Max achieved Batch Size : 1
    [m3video]
    [m3video] Multi Channel Encode Batch break Stats
    [m3video] Total Number of Batches created: 203
    [m3video] All numbers are based off total number of Batches created
    [m3video] Batch breaks due to batch sizeexceeding limit: 0 %
    [m3video] Batch breaks due to ReqObj Que being empty: 100 %
    [m3video] Batch breaks due to changed resolution class: 0 %
    [m3video] Batch breaks due to interlace and progressivecontent mix: 0 %
    [m3video] Batch breaks due to channel repeat: 0 %
    [m3video] Batch breaks due to different codec: 0 %
    [m3video] Total Number of Batches created: 203
    [m3video] All numbers are based off total number of Batches created
    [m3video] Batch breaks due to batch sizeexceeding limit: 100 %
    [m3video] Batch breaks due to ReqObj Que being empty: 0 %
    [m3video] Batch breaks due to changed resolution class: 0 %
    [m3video] Batch breaks due to interlace and progressivecontent mix: 0 %
    [m3video] Batch breaks due to channel repeat: 0 %
    [m3video] Batch breaks due to different codec: 0 %
    [m3video] Total Number of Batches created: 204
    [m3video] All numbers are based off total number of Batches created
    [m3video] Batch breaks due to batch sizeexceeding limit: 100 %
    [m3video] Batch breaks due to ReqObj Que being empty: 0 %
    [m3video] Batch breaks due to changed resolution class: 0 %
    [m3video] Batch breaks due to interlace and progressivecontent mix: 0 %
    [m3video] Batch breaks due to channel repeat: 0 %
    [m3video] Batch breaks due to different codec: 0 %
    [m3video]
    [m3video] *** DECODE Statistics ***
    [m3video]
    [m3video] Elasped Time : 11 secs
    [m3video]
    [m3video]
    [m3video] CH | In Recv In User Out
    [m3video] Num | FPS Skip FPS FPS
    [m3video] -----------------------------------
    [m3video] 0 | 0 0 0
    [m3video]
    [m3video] Multi Channel Decode Average Submit Batch Size
    [m3video] Max Submit Batch Size : 24
    [m3video] IVAHD_0 Average Batch Size : 0
    [m3video] IVAHD_0 Max achieved Batch Size : 0
    [m3video] IVAHD_1 Average Batch Size : 0
    [m3video] IVAHD_1 Max achieved Batch Size : 0
    [m3video] IVAHD_2 Average Batch Size : 0
    [m3video] IVAHD_2 Max achieved Batch Size : 0
    [m3video]
    [m3video] Multi Channel Decode Batch break Stats
    [m3video] Total Number of Batches created: 0
    [m3video] All numbers are based off total number of Batches created
    [m3video] Batch breaks due to batch sizeexceeding limit: 0 %
    [m3video] Batch breaks due to ReqObj Que being empty: 0 %
    [m3video] Batch breaks due to changed resolution class: 0 %
    [m3video] Batch breaks due to interlace and progressivecontent mix: 0 %
    [m3video] Batch breaks due to channel repeat: 0 %
    [m3video] Batch breaks due to different codec: 0 %
    [m3video] Total Number of Batches created: 0
    [m3video] All numbers are based off total number of Batches created
    [m3video] Batch breaks due to batch sizeexceeding limit: 0 %
    [m3video] Batch breaks due to ReqObj Que being empty: 0 %
    [m3video] Batch breaks due to changed resolution class: 0 %
    [m3video] Batch breaks due to interlace and progressivecontent mix: 0 %
    [m3video] Batch breaks due to channel repeat: 0 %
    [m3video] Batch breaks due to different codec: 0 %
    [m3video] Total Number of Batches created: 0
    [m3video] All numbers are based off total number of Batches created
    [m3video] Batch breaks due to batch sizeexceeding limit: 0 %
    [m3video] Batch breaks due to ReqObj Que being empty: 0 %
    [m3video] Batch breaks due to changed resolution class: 0 %
    [m3video] Batch breaks due to interlace and progressivecontent mix: 0 %
    [m3video] Batch breaks due to channel repeat: 0 %
    [m3video] Batch breaks due to different codec: 0 %
    [m3video]

    [m3vpss ]
    [m3vpss ] 233974: LOAD: CPU: 16.5% HWI: 2.7%, SWI:1.8%
    [m3vpss ]
    [m3vpss ] 233974: LOAD: TSK: IPC_OUT_M30 : 0.4%
    a========
    [m3vpss ] 233974: LOAD: TSK: IPC_FRAMES_OUT0 : 0.5%
    [m3vpss ] 233974: LOAD: TSK: IPC_FRAMES_OUT1 : 0.2%
    a========
    [m3vpss ] 233974: LOAD: TSK: CAPTURE : 0.5%
    [m3vpss ] 233974: LOAD: TSK: NSF0 : 1.0%
    a========
    [m3vpss ] 233975: LOAD: TSK: DISPLAY0 : 0.4%
    a========
    [m3vpss ] 233975: LOAD: TSK: DISPLAY1 : 0.3%
    [m3vpss ] 233975: LOAD: TSK: DISPLAY2 : 0.2%
    a========
    [m3vpss ] 233975: LOAD: TSK: NULL0 : 0.8%
    [m3vpss ] 233975: LOAD: TSK: DUP2 : 0.2%
    a========
    [m3vpss ] 233975: LOAD: TSK: DUP3 : 0.4%
    a========
    [m3vpss ] 233975: LOAD: TSK: Scalar0 : 0.6%
    [m3vpss ] 233975: LOAD: TSK: SWMS0 : 0.6%
    a========
    [m3vpss ] 233976: LOAD: TSK: SWMS1 : 0.6%
    [m3vpss ] 233976: LOAD: TSK: SWMS2 : 0.3%
    a========
    [m3vpss ] 233976: LOAD: TSK: MERGE0 : 0.1%
    a========
    [m3vpss ] 233976: LOAD: TSK: MERGE1 : 0.2%
    [m3vpss ] 233976: LOAD: TSK: MERGE2 : 0.2%
    a========
    [m3vpss ] 233977: LOAD: TSK: SELECT0 : 0.4%
    [m3vpss ] 233978: LOAD: TSK: SELECT1 : 0.3%
    a========
    [m3vpss ] 233978: LOAD: TSK: SELECT2 : 0.2%
    a========
    [m3vpss ] 233978: LOAD: TSK: MISC : 3.6%
    [m3vpss ]

    [m3video]
    [m3video] 234472: LOAD: CPU: 7.2% HWI: 0.8%, SWI:0.9%
    [m3video]
    [m3video] 234472: LOAD: TSK: IPC_IN_M30 : 0.2%
    a========
    [m3video] 234472: LOAD: TSK: IPC_BITS_OUT0 : 2.2%
    [m3video] 234473: LOAD: TSK: ENC0 : 0.9%
    a========
    [m3video] 234473: LOAD: TSK: DEC0 : 0.6%
    [m3video] 234473: LOAD: TSK: ENC_PROCESS_TSK_0 : 0.4%
    a========
    [m3video] 234473: LOAD: TSK: ENC_PROCESS_TSK_1 : 0.4%
    a========
    [m3video] 234473: LOAD: TSK: ENC_PROCESS_TSK_2 : 0.4%
    [m3video] 234473: LOAD: TSK: MISC : 0.4%
    a========
    [m3video]

    ===================printBufferStatus:==================

    IPCBITSOUTLINK:Buffer Statistics
    Num Alloc Pools:1
    PoolId | TotalBufCnt | FreeBufCnt | BufSize
    0| 16| 0| 921600

    VDEC:Buffer Statistics
    ChId | InBufCnt | OutBufCnt

    [m3video]
    [m3video] *** Encode Statistics ***
    [m3video] 236440: ENC: Rcvd from prev = 6750, Returned to prev = 6749
    a========
    [m3video] ENC Out BitBuf Q Status
    [m3video] Empty Q 0 -> count 13, wrPtr 288, rdPtr 275
    [m3video] Empty Q 1 -> count 7, wrPtr 338, rdPtr 331
    [m3video] Full Q -> count 0, wrPtr 221, rdPtr 221


    ===================printDetailedStatistics:==================

    131.233151 [ GetEmptyBuffersfromIPCBitsOutHLOSLINK] execute 16200, Get 16 Empty Frames(current 0)
    131.241746 [ PutFullBufferstoIPCBitsOutHLOSLINK] execute 16200, Put 0 Full Frames(current 0)

    a5-aa- 0- 0- 0- 0- 1- 3- 1- 2- 1- 1-5a-5a-5a-5a-bc-e9-5a-bb-
    ipcFrame 00000000000000000000000000000
    DMA open success...
    DMA channel = 4
    ipcFrame 6666666666666666666666666666 open fpga file successfully...
    ipcFrame 7777777777777777777777 put succefully...
    a========

    [host] Test_audio_record: err=-32, Reason: Broken pipe

    [host] Test_audio_record: err=-32, Reason: Broken pipe

    [host] Test_audio_record: err=-32, Reason: Broken pipe
    a========

    [host] Test_audio_record: err=-32, Reason: Broken pipe

    [host] Test_audio_record: err=-32, Reason: Broken pipe

    [host] Test_audio_record: err=-32, Reason: Broken pipe
    a========

    [host] Test_audio_record: err=-32, Reason: Broken pipe

    [host] Test_audio_record: err=-32, Reason: Broken pipe

    [host] Test_audio_record: err=-32, Reason: Broken pipe

    [host] Test_audio_record: err=-32, Reason: Broken pipe
    a========

    [host] Test_audio_record: err=-32, Reason: Broken pipe

    [host] Test_audio_record: err=-32, Reason: Broken pipe

    a========
    /************************M3 codec seems to hang!!!!!!!!!!!!**************************************/
    [m3video] 243315: HDVICP-ID:0
    [m3video] All percentage figures are based off totalElapsedTime
    [m3video] totalAcquire2wait :0 %
    [m3video] totalWait2Isr :4 %
    [m3video] totalIsr2Done :0 %
    [m3video] totalWait2Done :4 %
    [m3video] totalDone2Release :0 %
    [m3video] totalAcquire2Release :4 %
    [m3video] totalAcq2acqDelay :95 %
    [m3video] totalElapsedTime in msec : 127878
    [m3video] numAccessCnt: 27600
    [m3video] IVA-FPS : 217
    [m3video] Average time spent per frame in microsec: 185
    [m3video] 243316: HDVICP-ID:1
    [m3video] All percentage figures are based off totalElapsedTime
    [m3video] totalAcquire2wait :0 %
    [m3video] totalWait2Isr :20 %
    [m3video] totalIsr2Done :0 %
    [m3video] totalWait2Done :20 %
    [m3video] totalDone2Release :0 %
    [m3video] totalAcquire2Release :20 %
    [m3video] totalAcq2acqDelay :79 %
    [m3video] totalElapsedTime in msec : 127929
    [m3video] numAccessCnt: 27588
    [m3video] IVA-FPS : 217
    [m3video] Average time spent per frame in microsec: 927
    [m3video] 243317: HDVICP-ID:2
    [m3video] All percentage figures are based off totalElapsedTime
    [m3video] totalAcquire2wait :0 %
    [m3video] totalWait2Isr :19 %
    [m3video] totalIsr2Done :0 %
    [m3video] totalWait2Done :19 %
    [m3video] totalDone2Release :0 %
    [m3video] totalAcquire2Release :20 %
    [m3video] totalAcq2acqDelay :79 %
    [m3video] totalElapsedTime in msec : 127866
    [m3video] numAccessCnt: 27552
    [m3video] IVA-FPS : 216
    [m3video] Average time spent per frame in microsec: 881
    [m3video]
    [m3video] *** ENCODE Statistics ***
    [m3video]
    [m3video] Elasped Time : 11 secs
    [m3video]
    [m3video]
    [m3video] CH | In Recv In Skip In User Out Latency
    [m3video] Num | FPS FPS Skip FPS FPS Min / Max
    [m3video] --------------------------------------------
    [m3video] 0 | 11 0 0 11 89 / 610
    [m3video] 1 | 11 0 0 11 77 / 545
    [m3video] 2 | 11 0 0 11 85 / 559
    [m3video]
    [m3video] Multi Channel Encode Average Submit Batch Size
    [m3video] Max Submit Batch Size : 24
    [m3video] IVAHD_0 Average Batch Size : 1
    [m3video] IVAHD_0 Max achieved Batch Size : 1
    [m3video] IVAHD_1 Average Batch Size : 1
    [m3video] IVAHD_1 Max achieved Batch Size : 1
    [m3video] IVAHD_2 Average Batch Size : 1
    [m3video] IVAHD_2 Max achieved Batch Size : 1
    [m3video]
    [m3video] Multi Channel Encode Batch break Stats
    [m3video] Total Number of Batches created: 129
    [m3video] All numbers are based off total number of Batches created
    [m3video] Batch breaks due to batch sizeexceeding limit: 0 %
    [m3video] Batch breaks due to ReqObj Que being empty: 96 %
    [m3video] Batch breaks due to changed resolution class: 0 %
    [m3video] Batch breaks due to interlace and progressivecontent mix: 0 %
    [m3video] Batch breaks due to channel repeat: 3 %
    [m3video] Batch breaks due to different codec: 0 %
    [m3video] Total Number of Batches created: 128
    [m3video] All numbers are based off total number of Batches created
    [m3video] Batch breaks due to batch sizeexceeding limit: 100 %
    [m3video] Batch breaks due to ReqObj Que being empty: 0 %
    [m3video] Batch breaks due to changed resolution class: 0 %
    [m3video] Batch breaks due to interlace and progressivecontent mix: 0 %
    [m3video] Batch breaks due to channel repeat: 0 %
    [m3video] Batch breaks due to different codec: 0 %
    [m3video] Total Number of Batches created: 128
    [m3video] All numbers are based off total number of Batches created
    [m3video] Batch breaks due to batch sizeexceeding limit: 100 %
    [m3video] Batch breaks due to ReqObj Que being empty: 0 %
    [m3video] Batch breaks due to changed resolution class: 0 %
    [m3video] Batch breaks due to interlace and progressivecontent mix: 0 %
    [m3video] Batch breaks due to channel repeat: 0 %
    [m3video] Batch breaks due to different codec: 0 %
    [m3video]
    [m3video] *** DECODE Statistics ***
    [m3video]
    [m3video] Elasped Time : 11 secs
    [m3video]
    [m3video]
    [m3video] CH | In Recv In User Out
    [m3video] Num | FPS Skip FPS FPS
    [m3video] -----------------------------------
    [m3video] 0 | 0 0 0
    [m3video]
    [m3video] Multi Channel Decode Average Submit Batch Size
    [m3video] Max Submit Batch Size : 24
    [m3video] IVAHD_0 Average Batch Size : 0
    [m3video] IVAHD_0 Max achieved Batch Size : 0
    [m3video] IVAHD_1 Average Batch Size : 0
    [m3video] IVAHD_1 Max achieved Batch Size : 0
    [m3video] IVAHD_2 Average Batch Size : 0
    [m3video] IVAHD_2 Max achieved Batch Size : 0
    [m3video]
    [m3video] Multi Channel Decode Batch break Stats
    [m3video] Total Number of Batches created: 0
    [m3video] All numbers are based off total number of Batches created
    [m3video] Batch breaks due to batch sizeexceeding limit: 0 %
    [m3video] Batch breaks due to ReqObj Que being empty: 0 %
    [m3video] Batch breaks due to changed resolution class: 0 %
    [m3video] Batch breaks due to interlace and progressivecontent mix: 0 %
    [m3video] Batch breaks due to channel repeat: 0 %
    [m3video] Batch breaks due to different codec: 0 %
    [m3video] Total Number of Batches created: 0
    [m3video] All numbers are based off total number of Batches created
    [m3video] Batch breaks due to batch sizeexceeding limit: 0 %
    [m3video] Batch breaks due to ReqObj Que being empty: 0 %
    [m3video] Batch breaks due to changed resolution class: 0 %
    [m3video] Batch breaks due to interlace and progressivecontent mix: 0 %
    [m3video] Batch breaks due to channel repeat: 0 %
    [m3video] Batch breaks due to different codec: 0 %
    [m3video] Total Number of Batches created: 0
    [m3video] All numbers are based off total number of Batches created
    [m3video] Batch breaks due to batch sizeexceeding limit: 0 %
    [m3video] Batch breaks due to ReqObj Que being empty: 0 %
    [m3video] Batch breaks due to changed resolution class: 0 %
    [m3video] Batch breaks due to interlace and progressivecontent mix: 0 %
    [m3video] Batch breaks due to channel repeat: 0 %
    [m3video] Batch breaks due to different codec: 0 %
    [m3video]
    [m3vpss ]
    [m3vpss ] 245291: LOAD: CPU: 15.4% HWI: 2.5%, SWI:1.7%
    [m3vpss ]
    [m3vpss ] 245291: LOAD: TSK: IPC_OUT_M30 : 0.2%
    [m3vpss ] 245291: LOAD: TSK: IPC_FRAMES_OUT0 : 0.5%
    [m3vpss ] 245291: LOAD: TSK: IPC_FRAMES_OUT1 : 0.2%
    [m3vpss ] 245292: LOAD: TSK: CAPTURE : 0.5%
    [m3vpss ] 245292: LOAD: TSK: NSF0 : 0.7%
    [m3vpss ] 245292: LOAD: TSK: DISPLAY0 : 0.4%
    [m3vpss ] 245292: LOAD: TSK: DISPLAY1 : 0.3%
    [m3vpss ] 245292: LOAD: TSK: DISPLAY2 : 0.2%
    [m3vpss ] 245292: LOAD: TSK: NULL0 : 0.7%
    [m3vpss ] 245292: LOAD: TSK: DUP1 : 0.1%
    [m3vpss ] 245293: LOAD: TSK: DUP2 : 0.2%
    [m3vpss ] 245293: LOAD: TSK: DUP3 : 0.4%
    [m3vpss ] 245293: LOAD: TSK: Scalar0 : 0.6%
    [m3vpss ] 245293: LOAD: TSK: SWMS0 : 0.6%
    [m3vpss ] 245293: LOAD: TSK: SWMS1 : 0.6%
    [m3vpss ] 245293: LOAD: TSK: SWMS2 : 0.3%
    [m3vpss ] 245293: LOAD: TSK: MERGE0 : 0.1%
    [m3vpss ] 245294: LOAD: TSK: MERGE1 : 0.2%
    [m3vpss ] 245294: LOAD: TSK: MERGE2 : 0.2%
    [m3vpss ] 245295: LOAD: TSK: SELECT0 : 0.4%
    [m3vpss ] 245295: LOAD: TSK: SELECT1 : 0.3%
    [m3vpss ] 245295: LOAD: TSK: SELECT2 : 0.2%
    [m3vpss ] 245295: LOAD: TSK: MISC : 3.3%
    [m3vpss ]
    [m3video]
    [m3video] 245787: LOAD: CPU: 7.8% HWI: 0.6%, SWI:0.8%
    [m3video]
    [m3video] 245787: LOAD: TSK: IPC_IN_M30 : 0.1%
    ^C [m3video] 245787: LOAD: TSK: IPC_BITS_OUT0 : 4.3%
    [m3video] 245787: LOAD: TSK: ENC0 : 0.5%
    [m3video] 245787: LOAD: TSK: DEC0 : 0.6%

    [m3video] 245787: LOAD: TSK: ENC_PROCESS_TSK_0 : 0.1%
    root@dm816x:/mnt/opt/dvr_rdk/ti816x/bin# [m3video] 245787: LOAD: TSK: ENC_PROCESS_TSK_1 : 0.1%
    [m3video] 245788: LOAD: TSK: ENC_PROCESS_TSK_2 : 0.1%
    [m3video] 245788: LOAD: TSK: MISC : 0.6%
    [m3video]

  • console information:

    *** HeapMemMP_alloc: remainSize is not a multiple of obj->minAlign!
    Error [0xffffffff] at Line no: 1186 in file /root/DVRRDK/DVRRDK_03.00.00.00/ti_tools/syslink/syslink_2_10_02_17_patched/packages/ti/syslink/utils/hlos/knl/Linux/../../../../../../ti/syslink/ipc/hlos/knl/HeapMemMP.c
    *** HeapMemMP_alloc: remainSize is not a multiple of obj->minAlign!
    Error [0xffffffff] at Line no: 1186 in file /root/DVRRDK/DVRRDK_03.00.00.00/ti_tools/syslink/syslink_2_10_02_17_patched/packages/ti/syslink/utils/hlos/knl/Linux/../../../../../../ti/syslink/ipc/hlos/knl/HeapMemMP.c
    *** HeapMemMP_alloc: remainSize is not a multiple of obj->minAlign!
    Error [0xffffffff] at Line no: 1186 in file /root/DVRRDK/DVRRDK_03.00.00.00/ti_tools/syslink/syslink_2_10_02_17_patched/packages/ti/syslink/utils/hlos/knl/Linux/../../../../../../ti/syslink/ipc/hlos/knl/HeapMemMP.c
    *** HeapMemMP_alloc: remainSize is not a multiple of obj->minAlign!
    Error [0xffffffff] at Line no: 1186 in file /root/DVRRDK/DVRRDK_03.00.00.00/ti_tools/syslink/syslink_2_10_02_17_patched/packages/ti/syslink/utils/hlos/knl/Linux/../../../../../../ti/syslink/ipc/hlos/knl/HeapMemMP.c
    *** HeapMemMP_alloc: remainSize is not a multiple of obj->minAlign!
    Error [0xffffffff] at Line no: 1186 in file /root/DVRRDK/DVRRDK_03.00.00.00/ti_tools/syslink/syslink_2_10_02_17_patched/packages/ti/syslink/utils/hlos/knl/Linux/../../../../../../ti/syslink/ipc/hlos/knl/HeapMemMP.c
    *** HeapMemMP_alloc: remainSize is not a multiple of obj->minAlign!
    Error [0xffffffff] at Line no: 1186 in file /root/DVRRDK/DVRRDK_03.00.00.00/ti_tools/syslink/syslink_2_10_02_17_patched/packages/ti/syslink/utils/hlos/knl/Linux/../../../../../../ti/syslink/ipc/hlos/knl/HeapMemMP.c
    *** HeapMemMP_alloc: remainSize is not a multiple of obj->minAlign!
    Error [0xffffffff] at Line no: 1186 in file /root/DVRRDK/DVRRDK_03.00.00.00/ti_tools/syslink/syslink_2_10_02_17_patched/packages/ti/syslink/utils/hlos/knl/Linux/../../../../../../ti/syslink/ipc/hlos/knl/HeapMemMP.c
    *** HeapMemMP_alloc: remainSize is not a multiple of obj->minAlign!
    Error [0xffffffff] at Line no: 1186 in file /root/DVRRDK/DVRRDK_03.00.00.00/ti_tools/syslink/syslink_2_10_02_17_patched/packages/ti/syslink/utils/hlos/knl/Linux/../../../../../../ti/syslink/ipc/hlos/knl/HeapMemMP.c
    *** HeapMemMP_alloc: remainSize is not a multiple of obj->minAlign!
    Error [0xffffffff] at Line no: 1186 in file /root/DVRRDK/DVRRDK_03.00.00.00/ti_tools/syslink/syslink_2_10_02_17_patched/packages/ti/syslink/utils/hlos/knl/Linux/../../../../../../ti/syslink/ipc/hlos/knl/HeapMemMP.c
    *** HeapMemMP_alloc: remainSize is not a multiple of obj->minAlign!
    Error [0xffffffff] at Line no: 1186 in file /root/DVRRDK/DVRRDK_03.00.00.00/ti_tools/syslink/syslink_2_10_02_17_patched/packages/ti/syslink/utils/hlos/knl/Linux/../../../../../../ti/syslink/ipc/hlos/knl/HeapMemMP.c
    *** HeapMemMP_alloc: remainSize is not a multiple of obj->minAlign!
    Error [0xffffffff] at Line no: 1186 in file /root/DVRRDK/DVRRDK_03.00.00.00/ti_tools/syslink/syslink_2_10_02_17_patched/packages/ti/syslink/utils/hlos/knl/Linux/../../../../../../ti/syslink/ipc/hlos/knl/HeapMemMP.c
    *** HeapMemMP_alloc: remainSize is not a multiple of obj->minAlign!
    Error [0xffffffff] at Line no: 1186 in file /root/DVRRDK/DVRRDK_03.00.00.00/ti_tools/syslink/syslink_2_10_02_17_patched/packages/ti/syslink/utils/hlos/knl/Linux/../../../../../../ti/syslink/ipc/hlos/knl/HeapMemMP.c
    *** HeapMemMP_alloc: remainSize is not a multiple of obj->minAlign!
    Error [0xffffffff] at Line no: 1186 in file /root/DVRRDK/DVRRDK_03.00.00.00/ti_tools/syslink/syslink_2_10_02_17_patched/packages/ti/syslink/utils/hlos/knl/Linux/../../../../../../ti/syslink/ipc/hlos/knl/HeapMemMP.c
    *** HeapMemMP_alloc: remainSize is not a multiple of obj->minAlign!
    Error [0xffffffff] at Line no: 1186 in file /root/DVRRDK/DVRRDK_03.00.00.00/ti_tools/syslink/syslink_2_10_02_17_patched/packages/ti/syslink/utils/hlos/knl/Linux/../../../../../../ti/syslink/ipc/hlos/knl/HeapMemMP.c
    *** HeapMemMP_alloc: remainSize is not a multiple of obj->minAlign!
    Error [0xffffffff] at Line no: 1186 in file /root/DVRRDK/DVRRDK_03.00.00.00/ti_tools/syslink/syslink_2_10_02_17_patched/packages/ti/syslink/utils/hlos/knl/Linux/../../../../../../ti/syslink/ipc/hlos/knl/HeapMemMP.c
    *** HeapMemMP_alloc: remainSize is not a multiple of obj->minAlign!
    Error [0xffffffff] at Line no: 1186 in file /root/DVRRDK/DVRRDK_03.00.00.00/ti_tools/syslink/syslink_2_10_02_17_patched/packages/ti/syslink/utils/hlos/knl/Linux/../../../../../../ti/syslink/ipc/hlos/knl/HeapMemMP.c
    *** HeapMemMP_alloc: remainSize is not a multiple of obj->minAlign!
    Error [0xffffffff] at Line no: 1186 in file /root/DVRRDK/DVRRDK_03.00.00.00/ti_tools/syslink/syslink_2_10_02_17_patched/packages/ti/syslink/utils/hlos/knl/Linux/../../../../../../ti/syslink/ipc/hlos/knl/HeapMemMP.c

  • It looks like you are not setting  gVdecModuleContext.vdecConfig.numChn correctly.If you have 1 decode channel this should be set to 1.This is the reson Vdec statistics are not printed in Vsys_printBufferStatistics.

    Also pls share the logs of Vsys_printBufferStatistics after the hang occurred.The current logs do not indicate that anything is hung.

    The console print "*** HeapMemMP_alloc: remainSize is not a multiple of obj->minAlign!" is a serious issue. When do you get this ? It indicates some sharedRegion heap is corrupted. Do you get this  msg everytime you call some linkControl cmd ?

  • When we get that message"*** HeapMemMP_alloc: remainSize is not a multiple of obj->minAlign!",our dm8168 try to get video frame through pcie.

    fpga send video frame to dm8168's ddr,then we use dma to transfer video frame to shared region1,and then use IpcFramesOutLink_putFullVideoFrames to put video frame to M3 vpss.

    What may cause problem?

  • Are you allocating and freeing buffer from sharedRegion every time you get a frame via PCIe ? Also ensure that the size of copy is aligned to cache line size else it will corrupt memory. This error looks like buffer overflow is occurring resultingin overwrtinging beyond allocated buffer size.

  • It seems that M3 codec hang is caused by my a dirver function in which "system" functions is called about six times.

    After I delete those "system",m3 codec is still alive.

    Thanks for your detailed reply.

  • hi badri,

    Badri Narayanan said:
    Also ensure that the size of copy is aligned to cache line size else it will corrupt memory.

    why?