Man Linux: Main Page and Category List

NAME

       MP4AddRtpVideoHint - Add an RTP video specific hint

SYNTAX

       #include <mp4.h>

       bool MP4AddRtpVideoHint(
            MP4FileHandle hFile,
            MP4TrackId trackId,
            bool isBFrame = false,
            u_int32_t timestampOffset = 0
       );

ARGUMENTS

       hFile  Specifies the mp4 file to which the operation applies.

       trackId
              Specifies the hint track to which the operation applies.

       isBFrame
              Specifies if this hint will contain packets for a video B frame

       timestampOffset
              Specifies a positive offset to add to the RTP timestamp for this
              hint. Caveat: the value is in the hint track timescale.

RETURN VALUES

       Upon success, true (1). Upon an error, false (0).

DESCRIPTION

       MP4AddRtpVideoHint is an extended version of MP4AddRtpHint specifically
       to handle MPEG video frames.

       The  isBFrame parameter allows the packets in the RTP hint to be marked
       as belonging to a video B frame. This can  be  useful  to  a  streaming
       server  if  packets  must  be  dropped  due  to  system load or network
       congestion. No other video frames are dependent on the  contents  of  B
       frames, so they are least damaging type of frames to drop.

       The  timestampOffset  parameter allows an offset to be added to the RTP
       timestamp of the packets in the RTP hint. This is  necessary  for  MPEG
       video that contains B frames since the video frames are transmitted out
       of order with respect to when they should be  rendered.  I.e  I  and  P
       frames are transmitted before any B frames that depend on them. The RTP
       timestamp must represent the rendering time of the data in the  packets
       hence an offset must be added.

       Note:  The timestampOffset is equivalent to the sample rendering offset
       of a video media track. See MP4GetSampleRenderingOffset().

SEE ALSO

       MP4(3) MP4AddRtpHint(3) MP4AddRtpPacket(3) MP4WriteRtpHint (3)