Search code examples
videovideo-streamingvideo-processingsiph.264

h264 packetization mode for FUA


We have got into couple of interop issues where, The video mode that is required by couple of endpoints in market are little different and only understands H.264 packetization modes (FUA type) (i.e) FU -A NAL unit type.(while others do not play the video on receiving a fu-a nal type payload)

Does anyone know what is this FUA type of packetization mode? How is it different from packetization modes 0,1,2 as defined in RFC3984? Is the video encoder/decoder supports it, how can it be appropriately signalled in SIP SDP session wherein the attributes do not get changed even when traversing through SIP B2BUAs?


Solution

  • FUA is used in packetization modes 1 & 2. packetization-mode defaults to 0 (single-NAL mode); if both sides agree to modes 1 or 2 you will typically see an FU-A when a NAL exceeds the UDP MTU or configured maximum packet size.

    The packetization/de-packetization layer should take NALs and generate FU-A's when needed, and on reception take a series of FU-A's and reassemble a NAL to feed to the decoder.

    See RFC 3984 and RFC 3984bis (of which I'm an author).

    A B2BUA should not accept or offer a packetization-mode it's not ready to process, though it may be simply passing through the offer/answer from the other UA.

    Also note that (if compliant with RFC 3984) a UA must support packetization-mode 0, though it's not required to offer it on an INVITE.