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.

H264HPVENC sliceCodingParams doesn't apply

Other Parts Discussed in Thread: TMS320C6678

Hello, I have a new issue with the H264hp encoder. It seems to me its bug. I couldn't set sliceCodingParams.streamFormat to IH264HP_NALU_STREAM. Actualy I set but have no results. In out data i have start code prefix otherwise. I attach a project file. And output image.

  • Hi,

    Please check whether you set sliceCodingPreset to user defined mode( sliceCodingPreset = 1) before setting streamFormat = NALU (streamFormat = 1). With default slice coding preset, byte stream fomat will be taken.

    You can check it with the test application provided with the latest release which can be downloaded from here.

  • Yep, I check it. And now when I try to set NALU format initializing return unsuccessful return. Does it profile support? What kind of additional fields should I set for that.

  • Can you please mention the platform and version of H.264 encoder?

    With Regards,

    Pramod

  • Hello, thank you for response.

    I use tms320c6678 on TMDSEVM6678LE Rev.2A board.

    Encoder library: C66x_h264hpvenc_01_00_00_01_ELF

    XDM_GETVERSION return: DEV.100.V.

    I use the library for encode and I want to know how to use NAL stream mode. Actually, I want to have a bitstream with limited NAL unit size (for packetize in RTP with packetization_mode=0). However it doesn't matter for me how implement it. It could be one byte array separated by start code or multiple arrays without separated. And so that I have a question. How can I implement it on your codec?

  • Hi llya,

    The latest version of the codec that you are using (C66x_h264hpvenc_01_00_00_01_ELF) doesn't have support for slice level call back. The library with slice level call back feature is not yet publically available.

    Please reply if you really need this feature or you just tried this as part of your debugging for cache coherence issue as you mentioned in this thread?

    Thanks and regards

    Sudheesh

  • I described above that i realy need. It could be just a stream separated by start code but I need a specific parameter value for set max NAL unit size in bytes. It's need to packetize stream to RTP in packetization_mode=0 (default). For example if I set this value in 1500 it means that no one NAL will be more than 1500 bytes.

    But if it will be just a callback on each NAL it will be good.

  • Fixed NAL unit size( similar to H.241 based MTU packetization) is not supported by design of the codec because of multicore concurrency (cores start encoding different rows of current picture in parallel) and performance issues.

    It will be like a call back on each NAL.

    We will make arrangements to give you the library with this feature ASAP.

  • Ok, am I right that the codec didn't support limitation of NAL size? I don't need a _fixed_ size. Just limit. Ok, if so does it means that I cann't to packetize to RTP packetization_mode=0?

  • Codec won't support limiting NAL sizes to a particular value. 

    Please see this thread also. It may be helpful to you.

    Thanks

    Sudheesh

  • Hi Llya, we are going to have a NAL call back function in our next official H264 HP enc release which is planned in the ~ two weeks. Please see attached user guide Appendix B for more details. If you need this feature urgently please let us know and we can send you an engineer release for testing it.

    3286.H264_Encoder_C6678_UserGuide.pdf

    Thank you,

    Paula