#define GST_RTSP_STREAM_LOCK(rtsp) (g_rec_mutex_lock (GST_RTSP_STREAM_GET_LOCK(rtsp)))
#define GST_RTSP_STREAM_UNLOCK(rtsp) (g_rec_mutex_unlock (GST_RTSP_STREAM_GET_LOCK(rtsp)))
+#ifdef TIZEN_FEATURE_RTSP_MODIFICATION
+typedef enum {
+ GST_RTSPSRC_ERROR_NONE = 0,
+ GST_RTSPSRC_ERROR_UNSUPPORTED_AUDIO,
+ GST_RTSPSRC_ERROR_UNSUPPORTED_VIDEO,
+ GST_RTSPSRC_ERROR_CONNECTION_FAIL,
+ GST_RTSPSRC_ERROR_DNS_FAIL,
+ GST_RTSPSRC_ERROR_SERVER_DISCONNECTED,
+ GST_RTSPSRC_ERROR_BAD_SERVER,
+ GST_RTSPSRC_ERROR_INVALID_PROTOCOL,
+ GST_RTSPSRC_ERROR_INVALID_URL,
+ GST_RTSPSRC_ERROR_UNEXPECTED_MSG,
+ GST_RTSPSRC_ERROR_OUT_OF_MEMORIES,
+ GST_RTSPSRC_ERROR_RTSP_TIMEOUT,
+ GST_RTSPSRC_ERROR_BAD_REQUEST,
+ GST_RTSPSRC_ERROR_NOT_AUTHORIZED,
+ GST_RTSPSRC_ERROR_PAYMENT_REQUIRED,
+ GST_RTSPSRC_ERROR_FORBIDDEN,
+ GST_RTSPSRC_ERROR_CONTENT_NOT_FOUND,
+ GST_RTSPSRC_ERROR_METHOD_NOT_ALLOWED,
+ GST_RTSPSRC_ERROR_NOT_ACCEPTABLE,
+ GST_RTSPSRC_ERROR_PROXY_AUTHENTICATION_REQUIRED,
+ GST_RTSPSRC_ERROR_SERVER_TIMEOUT,
+ GST_RTSPSRC_ERROR_GONE,
+ GST_RTSPSRC_ERROR_LENGTH_REQUIRED,
+ GST_RTSPSRC_ERROR_PRECONDITION_FAILED,
+ GST_RTSPSRC_ERROR_REQUEST_ENTITY_TOO_LARGE,
+ GST_RTSPSRC_ERROR_REQUEST_URI_TOO_LARGE,
+ GST_RTSPSRC_ERROR_UNSUPPORTED_MEDIA_TYPE,
+ GST_RTSPSRC_ERROR_PARAMETER_NOT_UNDERSTOOD,
+ GST_RTSPSRC_ERROR_CONFERENCE_NOT_FOUND,
+ GST_RTSPSRC_ERROR_NOT_ENOUGH_BANDWIDTH,
+ GST_RTSPSRC_ERROR_NO_SESSION_ID,
+ GST_RTSPSRC_ERROR_METHOD_NOT_VALID_IN_THIS_STATE,
+ GST_RTSPSRC_ERROR_HEADER_FIELD_NOT_VALID_FOR_SOURCE,
+ GST_RTSPSRC_ERROR_INVALID_RANGE,
+ GST_RTSPSRC_ERROR_PARAMETER_IS_READONLY,
+ GST_RTSPSRC_ERROR_AGGREGATE_OP_NOT_ALLOWED,
+ GST_RTSPSRC_ERROR_ONLY_AGGREGATE_OP_ALLOWED,
+ GST_RTSPSRC_ERROR_BAD_TRANSPORT,
+ GST_RTSPSRC_ERROR_DESTINATION_UNREACHABLE,
+ GST_RTSPSRC_ERROR_INTERNAL_SERVER_ERROR,
+ GST_RTSPSRC_ERROR_NOT_IMPLEMENTED,
+ GST_RTSPSRC_ERROR_BAD_GATEWAY,
+ GST_RTSPSRC_ERROR_SERVICE_UNAVAILABLE,
+ GST_RTSPSRC_ERROR_GATEWAY_TIME_OUT ,
+ GST_RTSPSRC_ERROR_RTSP_VERSION_NOT_SUPPORTED,
+ GST_RTSPSRC_ERROR_OPTION_NOT_SUPPORTED,
+}_GstRTSPSrcError;
+typedef _GstRTSPSrcError GstRTSPSrcError;
+#endif
+
typedef struct _GstRTSPConnInfo GstRTSPConnInfo;
struct _GstRTSPConnInfo {
gulong manager_ptmap_id;
gboolean use_buffering;
+#ifdef TIZEN_FEATURE_RTSP_MODIFICATION
+ /* media type */
+ gboolean is_audio_codec_supported;
+ gboolean is_video_codec_supported;
+ gchar *audio_codec;
+ gchar *video_codec;
+ gchar *video_frame_size;
+#endif
+
GstRTSPConnInfo conninfo;
/* a list of RTSP extensions as GstElement */
GstRTSPExtensionList *extensions;
+
+#ifdef TIZEN_FEATURE_RTSP_MODIFICATION
+ GCond open_end;
+ GMutex pause_lock;
+ guint64 start_position;
+#endif
};
struct _GstRTSPSrcClass {