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.

Control the maximum H.264 NAL unit size

Hello,

I have a question regarding the H.264 encoder running on C6678.  Is there a way to control the maximum NAL unit size in the current implementation? I need that for H.264 over RTP.

Thanks,

Daniel

  • Hi Daniel,

    I have moved your thread to Multimedia Software Codecs Forum to get appropriate response.

    Thanks.

  • Hi Daniel,

    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.

    However, you can limit the number of MBs(sliceUnitSize in cfg file) per slice by selecting sliceMode = 1.
    sliceUnitSize is aligned to multiple of MB row width, if it is not given like that.

    Codec supports slice level callback feature also, where you will get the output at the end of a slice. Please see Appendix B of userguide for that.

    Please see this link also. It may be helpful for you.

    Thanks and regards

    Sudheesh

  • Hi Sudheesh,

    What are the reasons to have this restriction on sliceUnitSize should be aligned to multiple of MB row width ?

    Thanks,

    Praveen

  • Hi Praveen,

    Codec does concurrent encoding of partitioned slices within a frame, assuming a slice as an integral number of MB rows.
    Slice start within a  MB row has not been considered as per the design of the codec from performance point of view.

    Thanks and regards

    Sudheesh