Mercurial > libavformat.hg
comparison rtp_internal.h @ 3977:1f1c4535f421 libavformat
Remove access into RTPDemuxContext in rtsp.c, which allows making it opaque
(and thus preparing for the introduction of RDTDemuxContext) in a next patch.
See discussion in "RDT/Realmedia patches #2" thread on ML.
author | rbultje |
---|---|
date | Sat, 04 Oct 2008 04:16:44 +0000 |
parents | 64056a0c38ce |
children | 8adccfc01be3 |
comparison
equal
deleted
inserted
replaced
3976:64056a0c38ce | 3977:1f1c4535f421 |
---|---|
39 int received_prior; ///< packets received in last interval | 39 int received_prior; ///< packets received in last interval |
40 uint32_t transit; ///< relative transit time for previous packet | 40 uint32_t transit; ///< relative transit time for previous packet |
41 uint32_t jitter; ///< estimated jitter. | 41 uint32_t jitter; ///< estimated jitter. |
42 } RTPStatistics; | 42 } RTPStatistics; |
43 | 43 |
44 typedef struct PayloadContext PayloadContext; | |
45 /** | 44 /** |
46 * Packet parsing for "private" payloads in the RTP specs. | 45 * Packet parsing for "private" payloads in the RTP specs. |
47 * | 46 * |
48 * @param s stream context | 47 * @param s stream context |
49 * @param st stream that this packet belongs to | 48 * @param st stream that this packet belongs to |
58 AVPacket * pkt, | 57 AVPacket * pkt, |
59 uint32_t *timestamp, | 58 uint32_t *timestamp, |
60 const uint8_t * buf, | 59 const uint8_t * buf, |
61 int len, int flags); | 60 int len, int flags); |
62 | 61 |
63 typedef struct RTPDynamicProtocolHandler_s { | 62 struct RTPDynamicProtocolHandler_s { |
64 // fields from AVRtpDynamicPayloadType_s | 63 // fields from AVRtpDynamicPayloadType_s |
65 const char enc_name[50]; /* XXX: still why 50 ? ;-) */ | 64 const char enc_name[50]; /* XXX: still why 50 ? ;-) */ |
66 enum CodecType codec_type; | 65 enum CodecType codec_type; |
67 enum CodecID codec_id; | 66 enum CodecID codec_id; |
68 | 67 |
73 PayloadContext *(*open) (); ///< allocate any data needed by the rtp parsing for this dynamic data. | 72 PayloadContext *(*open) (); ///< allocate any data needed by the rtp parsing for this dynamic data. |
74 void (*close)(PayloadContext *protocol_data); ///< free any data needed by the rtp parsing for this dynamic data. | 73 void (*close)(PayloadContext *protocol_data); ///< free any data needed by the rtp parsing for this dynamic data. |
75 DynamicPayloadPacketHandlerProc parse_packet; ///< parse handler for this dynamic packet. | 74 DynamicPayloadPacketHandlerProc parse_packet; ///< parse handler for this dynamic packet. |
76 | 75 |
77 struct RTPDynamicProtocolHandler_s *next; | 76 struct RTPDynamicProtocolHandler_s *next; |
78 } RTPDynamicProtocolHandler; | 77 }; |
79 | 78 |
80 // moved out of rtp.c, because the h264 decoder needs to know about this structure.. | 79 // moved out of rtp.c, because the h264 decoder needs to know about this structure.. |
81 struct RTPDemuxContext { | 80 struct RTPDemuxContext { |
82 AVFormatContext *ic; | 81 AVFormatContext *ic; |
83 AVStream *st; | 82 AVStream *st; |