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/TMS320DM8127: About H.264 and MJPG Encode Error

Part Number: TMS320DM8127

Tool/software: Linux

Hi,

In our project, we need the output streams as:1080P 60fps(H.264)+D1 30fps(H.264)+D1 15fps(MJPG)

We modify the code form IPNC 3.5 example and got the output, but in a while we got the error message as following and the system crash.

[m3video] Extended error 18400 for reqObjIndex 0
[m3video] 34918:WARN
[m3video] ENCLINK:ERROR in Enclink_h264EncodeFrameBatch.Status[-1] for IVAHD_0
[m3video] 34918:WARN
[m3video] ENC : IVAHDID : 0 ENCLINK:ERROR in EncLink_SubmitBatch.Status[-1]

I modify the setting and the following is ok.

1. 1080P 30fps(H.264)+D1 30fps(H.264)+1080P 15fps(D1)

2. 1080P 30fps(H.264)+D1 30fps(H.264)+D1 15fps(H.264)

3.1080P 30fps(H.264)+D1 30fps(MJPG)

4.1080P 30fps(H.264)+D1 30fps(H.264)

but if set the streming have :D1(H.264)+D1(MJPG)

we will get the error message:

[m3video] Extended error 18400 for reqObjIndex 0
[m3video] 34918:WARN
[m3video] ENCLINK:ERROR in Enclink_h264EncodeFrameBatch.Status[-1] for IVAHD_0
[m3video] 34918:WARN
[m3video] ENC : IVAHDID : 0 ENCLINK:ERROR in EncLink_SubmitBatch.Status[-1]

I found some issues as following links:

http://www.deyisupport.com/question_answer/dsp_arm/davinci_digital_media_processors/f/39/p/71844/174557.aspx#174557

http://e2e.ti.com/support/dsp/davinci_digital_media_processors/f/717/t/265927

http://e2e.ti.com/support/dsp/davinci_digital_media_processors/f/716/p/584833/2147862

https://e2e.ti.com/support/dsp/davinci_digital_media_processors/f/716/p/478960/1725480

and try to modify the setting 

1.

#define UTILS_ENCDEC_GET_BITBUF_SIZE(width,height,bitrate,framerate) \
(((width) * (height))/UTILS_ENCDEC_BITBUF_SCALING_FACTOR)

to 

#define UTILS_ENCDEC_GET_BITBUF_SIZE(width,height,bitrate,framerate) \
(((width) * (height))*3/2)

2.

targetBitRate (MJPG) 1000*1000~17*1000

but can't fix the error.

Does any one know how to fix the error?

Thanks,

  • Hi,

    IVAHD can only encode/decode 1080p(60) FPS. So you will not be able to run your usecase.

    Please refer to the codec datasheet for more information.

  • hi,

    I find the datasheet as following:

    1.H264_Encoder_HDVICP2_UserGuide.pdf (Literature Number: SPRUHG3 October 2012)

    P.165

    2.and the H264_Encoder_HDVICP2_DataSheet.pdf(SPRS843 – Sep 2012)

    P1

  • Hi,

    I am not saying other resolutions are not possible.

    IVA can encode or decode 1080p at 60FPS.

    So if you try to encode 1080p 30fps + 720p 30 fps is possible but 1080p 60fps + 720p 30 is not possible because IVA can not encode at that speed.

  • Hi Kao,

    Codec can be created for the resolutions mention by you. But 1080P 60fps(H.264)+D1 30fps(H.264)+D1 15fps(MJPG) is not possible. 

    Max One 1080p @ 60 is possible. That's why you don't see any error while running 1080P 30fps(H.264)+D1 30fps(H.264)+1080P 15fps(MJPEG).

    Data sheet will provide you the performance numbers. Rest you can do the math to know the working combination.

  • Hello,

    Please check this link:
    www.ti.com/.../TMS320DM8127
    As you could see DM8127 has only on HDVICP module.
    This module is capable encode or decode 1x 1080p60 or 2x 1080p30 or 4x 720p30 etc.
    As Prashanth said only one 1080p60 is possible on one HDVICP module.
    I see that you linked e2e thread for dm8168 but dm8168 has 3xHDVICP modules.


    BR
    Margarita
  • Hi,

    I modify my outputs to: 1080P 30fps(H.264)+D1 30fps(H.264)+D1 5fps(MJPEG)

    but its still have error as:

    [m3video] ENCLINK:H264Enc !!WARNING!!!Unable to handle runtime output buffer request
    [m3video] Extended error 18400 for reqObjIndex 0
    [m3video] 43815:WARN
    [m3video] ENCLINK:ERROR in Enclink_h264EncodeFrameBatch.Status[-1] for IVAHD_0
    [m3video] 43816:WARN
    [m3video] ENC : IVAHDID : 0 ENCLINK:ERROR in EncLink_SubmitBatch.Status[-1]
    [m3video] Extended error 18000 for reqObjIndex 0
    [m3video] 43835:WARN

    but the outputs: 1080P 30fps(H.264)+D1 30fps(H.264)+1080P5fps(MJPEG)

    is ok 

     

  • hi,

    If i set the output:

    CH1:720P H.264 60fps

    CH2:D1 H.264 30fps

    CH3:D1 MJPG 30fps

    then 

    set the Parameter: targetFrameRate for each channels as:

    1.Ch1 = 0,ch2= 0,ch3= 30 will got the message ( but the output image of Ch3 is ok)

    [m3video] 70751:!ERROR!:ENCLINK::links_m3video/iva_enc/encLink_jpeg.c:[230]::INTERNAL ERROR:-1
    [m3video] ALGPROCESS FAILED
    [m3video] JPEG Extended error 400
    [m3video] 70751:WARN
    [m3video] ENCLINK:ERROR in Enclink_JPEGEncodeFrame.Status[-1]
    [m3video] 70751:WARN
    [m3video] ENC : IVAHDID : 0 ENCLINK:ERROR in EncLink_SubmitBatch.Status[-1]

    2.Ch1 = 0,ch2= 30,ch3= 30 will got the message

    [m3video] Extended error 18400 for reqObjIndex 0
    [m3video] 73382:WARN
    [m3video] ENCLINK:ERROR in Enclink_h264EncodeFrameBatch.Status[-1] for IVAHD_0
    [m3video] 73382:WARN
    [m3video] ENC : IVAHDID : 0 ENCLINK:ERROR in EncLink_SubmitBatch.Status[-1]

    if i set the targetFrameRate it will skip the encode  frame in function : EncLink_doSkipFrame

    in this test and previous test 

    I thought  if Ch2 H.264 D1 and Ch3 MJPG D1 is working at the same time, there will be a error occurred.

    How to fix it?

    thanks,