Implement marker bit, which is used for several RTP payloads currently

under review. See "[FFmpeg-devel] RTP mark bit not passed to parse_packet"
thread on mailinglist.

Originally committed as revision 17616 to svn://svn.ffmpeg.org/ffmpeg/trunk
pull/126/head
Ronald S. Bultje 16 years ago
parent a68d44ed6f
commit 144ae29dde
  1. 2
      libavformat/rtpdec.c
  2. 1
      libavformat/rtpdec.h

@ -437,6 +437,8 @@ int rtp_parse_packet(RTPDemuxContext *s, AVPacket *pkt,
return -1; return -1;
} }
payload_type = buf[1] & 0x7f; payload_type = buf[1] & 0x7f;
if (buf[1] & 0x80)
flags |= RTP_FLAG_MARKER;
seq = AV_RB16(buf + 2); seq = AV_RB16(buf + 2);
timestamp = AV_RB32(buf + 4); timestamp = AV_RB32(buf + 4);
ssrc = AV_RB32(buf + 8); ssrc = AV_RB32(buf + 8);

@ -93,6 +93,7 @@ typedef struct {
} RTPStatistics; } RTPStatistics;
#define RTP_FLAG_KEY 0x1 ///< RTP packet contains a keyframe #define RTP_FLAG_KEY 0x1 ///< RTP packet contains a keyframe
#define RTP_FLAG_MARKER 0x2 ///< RTP marker bit was set for this packet
/** /**
* Packet parsing for "private" payloads in the RTP specs. * Packet parsing for "private" payloads in the RTP specs.
* *

Loading…
Cancel
Save