diff --git a/ChangeLog b/ChangeLog index 904c671c02..737ac15988 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,14 @@ +2007-07-26 Wim Taymans + + * gst-libs/gst/interfaces/Makefile.am: + * gst-libs/gst/interfaces/interfaces-marshal.list: + * gst-libs/gst/interfaces/rtspextension.c: + (gst_rtsp_extension_iface_init), + (gst_rtsp_extension_stream_select), (gst_rtsp_extension_send): + * gst-libs/gst/interfaces/rtspextension.h: + Fix marshaller for the send signal. + Add URL to stream selection interface method. + 2007-07-26 Jan Schmidt * gst-libs/gst/riff/Makefile.am: diff --git a/gst-libs/gst/interfaces/Makefile.am b/gst-libs/gst/interfaces/Makefile.am index a10012b432..8a23d27964 100644 --- a/gst-libs/gst/interfaces/Makefile.am +++ b/gst-libs/gst/interfaces/Makefile.am @@ -58,7 +58,7 @@ nodist_libgstinterfaces_@GST_MAJORMINOR@_la_SOURCES = \ interfaces-marshal.h libgstinterfaces_@GST_MAJORMINOR@_la_CFLAGS = $(GST_PLUGINS_BASE_CFLAGS) $(GST_CFLAGS) -libgstinterfaces_@GST_MAJORMINOR@_la_LIBADD = $(GST_LIBS) +libgstinterfaces_@GST_MAJORMINOR@_la_LIBADD = $(GST_LIBS) libgstinterfaces_@GST_MAJORMINOR@_la_LDFLAGS = $(GST_LIB_LDFLAGS) $(GST_ALL_LDFLAGS) $(GST_LT_LDFLAGS) BUILT_SOURCES = \ diff --git a/gst-libs/gst/interfaces/interfaces-marshal.list b/gst-libs/gst/interfaces/interfaces-marshal.list index cb7469c2d3..f420e068ae 100644 --- a/gst-libs/gst/interfaces/interfaces-marshal.list +++ b/gst-libs/gst/interfaces/interfaces-marshal.list @@ -3,3 +3,4 @@ VOID:OBJECT,POINTER VOID:OBJECT,STRING VOID:OBJECT,ULONG VOID:OBJECT,INT +ENUM:POINTER,POINTER diff --git a/gst-libs/gst/interfaces/rtspextension.c b/gst-libs/gst/interfaces/rtspextension.c index 26ac58eb11..2a9a4bb661 100644 --- a/gst-libs/gst/interfaces/rtspextension.c +++ b/gst-libs/gst/interfaces/rtspextension.c @@ -35,6 +35,7 @@ #include "config.h" #endif +#include "interfaces-marshal.h" #include "rtspextension.h" static void gst_rtsp_extension_iface_init (GstRTSPExtension * iface); @@ -80,8 +81,8 @@ gst_rtsp_extension_iface_init (GstRTSPExtension * iface) gst_rtsp_extension_signals[SIGNAL_SEND] = g_signal_new ("send", G_TYPE_FROM_CLASS (iface), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (GstRTSPExtensionInterface, - send), NULL, NULL, g_cclosure_marshal_VOID__POINTER, - G_TYPE_NONE, 1, G_TYPE_POINTER); + send), NULL, NULL, gst_interfaces_marshal_ENUM__POINTER_POINTER, + G_TYPE_ENUM, 2, G_TYPE_POINTER, G_TYPE_POINTER); initialized = TRUE; } } @@ -181,14 +182,14 @@ gst_rtsp_extension_get_transports (GstRTSPExtension * ext, } GstRTSPResult -gst_rtsp_extension_stream_select (GstRTSPExtension * ext) +gst_rtsp_extension_stream_select (GstRTSPExtension * ext, GstRTSPUrl * url) { GstRTSPExtensionInterface *iface; GstRTSPResult res = GST_RTSP_OK; iface = GST_RTSP_EXTENSION_GET_IFACE (ext); if (iface->stream_select) - res = iface->stream_select (ext); + res = iface->stream_select (ext, url); return res; } diff --git a/gst-libs/gst/interfaces/rtspextension.h b/gst-libs/gst/interfaces/rtspextension.h index c9458b6a55..23672a8318 100644 --- a/gst-libs/gst/interfaces/rtspextension.h +++ b/gst-libs/gst/interfaces/rtspextension.h @@ -27,6 +27,7 @@ #include #include #include +#include G_BEGIN_DECLS @@ -58,7 +59,7 @@ struct _GstRTSPExtensionInterface { GstRTSPResult (*get_transports) (GstRTSPExtension *ext, GstRTSPLowerTrans protocols, gchar **transport); - GstRTSPResult (*stream_select) (GstRTSPExtension *ext); + GstRTSPResult (*stream_select) (GstRTSPExtension *ext, GstRTSPUrl *url); /* signals */ GstRTSPResult (*send) (GstRTSPExtension *ext, GstRTSPMessage *req, GstRTSPMessage *resp); @@ -81,7 +82,7 @@ GstRTSPResult gst_rtsp_extension_setup_media (GstRTSPExtension *ext, Gst gboolean gst_rtsp_extension_configure_stream (GstRTSPExtension *ext, GstCaps *caps); GstRTSPResult gst_rtsp_extension_get_transports (GstRTSPExtension *ext, GstRTSPLowerTrans protocols, gchar **transport); -GstRTSPResult gst_rtsp_extension_stream_select (GstRTSPExtension *ext); +GstRTSPResult gst_rtsp_extension_stream_select (GstRTSPExtension *ext, GstRTSPUrl *url); /* signal emision */ GstRTSPResult gst_rtsp_extension_send (GstRTSPExtension *ext, GstRTSPMessage *req,