summaryrefslogtreecommitdiffstats
path: root/gst/rtsp/gstrtspsrc.h
diff options
context:
space:
mode:
authorWim Taymans <wim.taymans@gmail.com>2006-09-19 17:25:15 +0000
committerWim Taymans <wim.taymans@gmail.com>2006-09-19 17:25:15 +0000
commita7d7309e18dca433661058e54651c2d1b78edc6a (patch)
treedac7af9ddafd02e800262888aebbc4feb9542abc /gst/rtsp/gstrtspsrc.h
parent34fd3a416d9249ea78df1a3fcbc8584afc8887dd (diff)
gst/rtsp/gstrtspsrc.*: Reorganize stream parsing and creation.
Original commit message from CVS: * gst/rtsp/gstrtspsrc.c: (find_stream_by_pt), (gst_rtspsrc_create_stream), (gst_rtspsrc_free_stream), (gst_rtspsrc_media_to_caps), (gst_rtspsrc_stream_setup_rtp), (gst_rtspsrc_stream_configure_transport), (find_stream_by_channel), (gst_rtspsrc_push_event), (gst_rtspsrc_loop), (gst_rtspsrc_send), (gst_rtspsrc_parse_methods), (gst_rtspsrc_open), (gst_rtspsrc_parse_rtpinfo), (gst_rtspsrc_play): * gst/rtsp/gstrtspsrc.h: Reorganize stream parsing and creation. Detect container formats in interleaved mode. Keep more state about the streams. Assume a server also supports PLAY if it does not say. Add unicast and interleaved properties to TCP transport requests to make some servers happy (WMServer). * gst/rtsp/sdpmessage.h: Add some defines for the standard Bandwidth types.
Diffstat (limited to 'gst/rtsp/gstrtspsrc.h')
-rw-r--r--gst/rtsp/gstrtspsrc.h31
1 files changed, 20 insertions, 11 deletions
diff --git a/gst/rtsp/gstrtspsrc.h b/gst/rtsp/gstrtspsrc.h
index 3b3f7240..ab85dbfc 100644
--- a/gst/rtsp/gstrtspsrc.h
+++ b/gst/rtsp/gstrtspsrc.h
@@ -60,28 +60,37 @@ typedef enum
typedef struct _GstRTSPStream GstRTSPStream;
struct _GstRTSPStream {
- gint id;
+ gint id;
- GstRTSPSrc *parent;
+ GstRTSPSrc *parent;
+ /* pad we expose or NULL when it does not have an actual pad */
+ GstPad *srcpad;
GstFlowReturn last_ret;
/* for interleaved mode */
- gint rtpchannel;
- gint rtcpchannel;
- GstCaps *caps;
+ gint rtpchannel;
+ gint rtcpchannel;
+ GstCaps *caps;
/* our udp sources for RTP */
- GstElement *rtpsrc;
- GstElement *rtcpsrc;
+ GstElement *rtpsrc;
+ GstElement *rtcpsrc;
/* our udp sink back to the server */
- GstElement *rtcpsink;
+ GstElement *rtcpsink;
/* the RTP decoder */
- GstElement *rtpdec;
- GstPad *rtpdecrtp;
- GstPad *rtpdecrtcp;
+ GstElement *rtpdec;
+ GstPad *rtpdecrtp;
+ GstPad *rtpdecrtcp;
+
+ /* state */
+ gint pt;
+ gboolean container;
+ gchar *setup_url;
+ guint32 ssrc;
+ guint32 seqbase;
};
struct _GstRTSPSrc {