rtsp-stream: Fix mismatch between allowed and configured protocols
[platform/upstream/gstreamer.git] / gst / rtsp-sink / gstrtspclientsink.h
index a8aef5b..f7845c0 100644 (file)
@@ -86,6 +86,9 @@ struct _GstRTSPConnInfo {
   GstRTSPConnection  *connection;
   gboolean            connected;
   gboolean            flushing;
+
+  GMutex              send_lock;
+  GMutex              recv_lock;
 };
 
 typedef struct _GstRTSPStreamInfo GstRTSPStreamInfo;
@@ -115,6 +118,8 @@ struct _GstRTSPStreamContext {
   guint8        channel[2];
 
   GstRTSPStreamTransport *stream_transport;
+
+  guint ulpfec_percentage;
 };
 
 /**
@@ -214,6 +219,11 @@ struct _GstRTSPClientSink {
   /* TRUE when stream info has been collected */
   gboolean         streams_collected;
 
+  /* TRUE when streams have been blocked */
+  guint            n_streams_blocked;
+  GMutex           block_streams_lock;
+  GCond            block_streams_cond;
+
   guint            next_pad_id;
   gint             next_dyn_pt;
 
@@ -227,6 +237,11 @@ struct _GstRTSPClientSink {
   GMutex          preroll_lock;
   GCond           preroll_cond;
 
+  /* TRUE if connection to server has been scheduled */
+  gboolean        open_conn_start;
+  GMutex          open_conn_lock;
+  GCond           open_conn_cond;
+
   GstClockTime    rtx_time;
 
   GstRTSPProfile profiles;