#include <gst/rtsp/gstrtspurl.h>
#include "rtsp-media.h"
+#include "rtsp-auth.h"
#ifndef __GST_RTSP_MEDIA_FACTORY_H__
#define __GST_RTSP_MEDIA_FACTORY_H__
gchar *launch;
gboolean shared;
gboolean eos_shutdown;
+ GstRTSPAuth *auth;
+ guint buffer_size;
GMutex *medias_lock;
GHashTable *medias;
struct _GstRTSPMediaFactoryClass {
GObjectClass parent_class;
- gchar * (*gen_key) (GstRTSPMediaFactory *factory, const GstRTSPUrl *url);
+ gchar * (*gen_key) (GstRTSPMediaFactory *factory, const GstRTSPUrl *url);
- GstElement * (*get_element) (GstRTSPMediaFactory *factory, const GstRTSPUrl *url);
- GstRTSPMedia * (*construct) (GstRTSPMediaFactory *factory, const GstRTSPUrl *url);
- void (*configure) (GstRTSPMediaFactory *factory, GstRTSPMedia *media);
- GstElement * (*create_pipeline)(GstRTSPMediaFactory *factory, GstRTSPMedia *media);
+ GstElement * (*get_element) (GstRTSPMediaFactory *factory, const GstRTSPUrl *url);
+ GstRTSPMedia * (*construct) (GstRTSPMediaFactory *factory, const GstRTSPUrl *url);
+ void (*configure) (GstRTSPMediaFactory *factory, GstRTSPMedia *media);
+ GstElement * (*create_pipeline) (GstRTSPMediaFactory *factory, GstRTSPMedia *media);
+
+ /* signals */
+ void (*media_constructed)(GstRTSPMediaFactory *factory, GstRTSPMedia *media);
};
GType gst_rtsp_media_factory_get_type (void);
gboolean eos_shutdown);
gboolean gst_rtsp_media_factory_is_eos_shutdown (GstRTSPMediaFactory *factory);
+void gst_rtsp_media_factory_set_auth (GstRTSPMediaFactory *factory, GstRTSPAuth *auth);
+GstRTSPAuth * gst_rtsp_media_factory_get_auth (GstRTSPMediaFactory *factory);
+
+void gst_rtsp_media_factory_set_buffer_size (GstRTSPMediaFactory * factory, guint size);
+guint gst_rtsp_media_factory_get_buffer_size (GstRTSPMediaFactory * factory);
+
+
/* creating the media from the factory and a url */
GstRTSPMedia * gst_rtsp_media_factory_construct (GstRTSPMediaFactory *factory,
const GstRTSPUrl *url);