From: Thomas Vander Stichele Date: Fri, 9 Sep 2005 11:09:49 +0000 (+0000) Subject: gst-plugins-good.spec.in: spec file fixes X-Git-Tag: 1.19.3~509^2~13457 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=df82aa5a0178395d26dea66a4850e55144c74e9d;p=platform%2Fupstream%2Fgstreamer.git gst-plugins-good.spec.in: spec file fixes Original commit message from CVS: * gst-plugins-good.spec.in: spec file fixes * gst/udp/gstmultiudpsink.c: (gst_multiudpsink_class_init), (gst_multiudpsink_render), (gst_multiudpsink_add), (gst_multiudpsink_clear): it actually helps to actually stream if we hook up the add signal to an actual implementation * gst/udp/gstudpsrc.c: (gst_udpsrc_start): some debugging --- diff --git a/ChangeLog b/ChangeLog index 639cf75..735bdd1 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,15 @@ +2005-09-09 Thomas Vander Stichele + + * gst-plugins-good.spec.in: + spec file fixes + * gst/udp/gstmultiudpsink.c: (gst_multiudpsink_class_init), + (gst_multiudpsink_render), (gst_multiudpsink_add), + (gst_multiudpsink_clear): + it actually helps to actually stream if we hook up the + "add" signal to an actual implementation + * gst/udp/gstudpsrc.c: (gst_udpsrc_start): + some debugging + 2005-09-08 Flavio Oliveira * ext/jpeg/Makefile.am: diff --git a/gst-plugins-good.spec.in b/gst-plugins-good.spec.in index 0af894e..b929108 100644 --- a/gst-plugins-good.spec.in +++ b/gst-plugins-good.spec.in @@ -24,32 +24,26 @@ Requires(postun): %{gstregister} BuildRequires: gcc-c++ -@USE_ESD_TRUE@Requires: esound >= 0.2.8 @USE_ESD_TRUE@BuildRequires: esound-devel >= 0.2.8 @USE_ESD_TRUE@Obsoletes: gstreamer-esd @USE_ESD_TRUE@ @USE_ESD_TRUE@Provides: gstreamer-audiosrc @USE_ESD_TRUE@Provides: gstreamer-audiosink -@USE_FLAC_TRUE@Requires: flac >= 1.0.3 @USE_FLAC_TRUE@BuildRequires: flac-devel >= 1.0.3 -@USE_GCONF_TRUE@Requires: GConf2 @USE_GCONF_TRUE@BuildRequires: GConf2-devel -@USE_JPEG_TRUE@Requires: libjpeg @USE_JPEG_TRUE@BuildRequires: libjpeg-devel -@USE_LIBPNG_TRUE@Requires: libpng >= 1.2.0 +@USE_LIBCACA_TRUE@BuildRequires: libcaca-devel +@USE_LIBDV_TRUE@BuildRequires: libdv-devel @USE_LIBPNG_TRUE@BuildRequires: libpng-devel >= 1.2.0 -# @USE_MIKMOD_TRUE@Requires: mikmod -# @USE_MIKMOD_TRUE@BuildRequires: mikmod +@USE_MIKMOD_TRUE@BuildRequires: mikmod @USE_OSS_TRUE@BuildRequires: glibc-devel -# @USE_PANGO_TRUE@Requires: pango -# @USE_PANGO_TRUE@BuildRequires: pango-devel -# @USE_RAW1394_TRUE@Requires: libraw1394 -# @USE_RAW1394_TRUE@BuildRequires: libraw1394-devel -@USE_SPEEX_TRUE@Requires: speex +@USE_PANGO_TRUE@BuildRequires: pango-devel +@USE_RAW1394_TRUE@BuildRequires: libraw1394-devel +@USE_RAW1394_TRUE@BuildRequires: libavc1394-devel @USE_SPEEX_TRUE@BuildRequires: speex-devel @USE_SHOUT2_TRUE@BuildRequires: libshout-devel >= 2.0 -# @USE_LADSPA_TRUE@BuildRequires: ladspa-devel +@USE_LADSPA_TRUE@BuildRequires: ladspa-devel @USE_AALIB_TRUE@BuildRequires: aalib-devel >= 1.3 @USE_AALIB_TRUE@Provides: gstreamer-aasink = %{version}-%{release} @@ -106,7 +100,6 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/gstreamer-%{majorminor}/libgstrtp.so %{_libdir}/gstreamer-%{majorminor}/libgstrtsp.so %{_libdir}/gstreamer-%{majorminor}/libgstsmpte.so -# %{_libdir}/gstreamer-%{majorminor}/libgsttcp.so %{_libdir}/gstreamer-%{majorminor}/libgstudp.so %{_libdir}/gstreamer-%{majorminor}/libgstvideobox.so %{_libdir}/gstreamer-%{majorminor}/libgstvideoflip.so diff --git a/gst/udp/gstmultiudpsink.c b/gst/udp/gstmultiudpsink.c index ddc4be5..5095825 100644 --- a/gst/udp/gstmultiudpsink.c +++ b/gst/udp/gstmultiudpsink.c @@ -62,7 +62,7 @@ enum }; static void gst_multiudpsink_base_init (gpointer g_class); -static void gst_multiudpsink_class_init (GstMultiUDPSink * klass); +static void gst_multiudpsink_class_init (GstMultiUDPSinkClass * klass); static void gst_multiudpsink_init (GstMultiUDPSink * udpsink); static void gst_multiudpsink_finalize (GObject * object); @@ -118,7 +118,7 @@ gst_multiudpsink_base_init (gpointer g_class) } static void -gst_multiudpsink_class_init (GstMultiUDPSink * klass) +gst_multiudpsink_class_init (GstMultiUDPSinkClass * klass) { GObjectClass *gobject_class; GstElementClass *gstelement_class; @@ -168,6 +168,10 @@ gst_multiudpsink_class_init (GstMultiUDPSink * klass) gstelement_class->change_state = gst_multiudpsink_change_state; gstbasesink_class->render = gst_multiudpsink_render; + klass->add = gst_multiudpsink_add; + klass->remove = gst_multiudpsink_remove; + klass->clear = gst_multiudpsink_clear; + klass->get_stats = gst_multiudpsink_get_stats; GST_DEBUG_CATEGORY_INIT (multiudpsink_debug, "multiudpsink", 0, "UDP sink"); } @@ -195,7 +199,7 @@ static GstFlowReturn gst_multiudpsink_render (GstBaseSink * bsink, GstBuffer * buffer) { GstMultiUDPSink *sink; - gint ret, size; + gint ret, size, num = 0; guint8 *data; GList *clients; @@ -204,14 +208,15 @@ gst_multiudpsink_render (GstBaseSink * bsink, GstBuffer * buffer) size = GST_BUFFER_SIZE (buffer); data = GST_BUFFER_DATA (buffer); - GST_DEBUG ("about to send %d bytes", size); - g_mutex_lock (sink->client_lock); + GST_LOG_OBJECT (bsink, "about to send %d bytes", size); + for (clients = sink->clients; clients; clients = g_list_next (clients)) { GstUDPClient *client; client = (GstUDPClient *) clients->data; - GST_DEBUG ("sending %d bytes to client %p", size, client); + ++num; + GST_LOG_OBJECT (sink, "sending %d bytes to client %p", size, client); while (TRUE) { ret = sendto (*client->sock, data, size, 0, @@ -227,7 +232,7 @@ gst_multiudpsink_render (GstBaseSink * bsink, GstBuffer * buffer) } g_mutex_unlock (sink->client_lock); - GST_DEBUG ("sent %d bytes", size); + GST_LOG_OBJECT (sink, "sent %d bytes to %d clients", size, num); return GST_FLOW_OK; @@ -316,6 +321,7 @@ gst_multiudpsink_add (GstMultiUDPSink * sink, const gchar * host, gint port) struct ip_mreq multi_addr; GstUDPClient *client; + GST_DEBUG_OBJECT (sink, "adding client on host %s, port %d", host, port); client = g_new0 (GstUDPClient, 1); client->host = g_strdup (host); client->port = port; @@ -414,6 +420,7 @@ gst_multiudpsink_remove (GstMultiUDPSink * sink, const gchar * host, gint port) void gst_multiudpsink_clear (GstMultiUDPSink * sink) { + GST_DEBUG_OBJECT (sink, "clearing"); g_mutex_lock (sink->client_lock); g_list_foreach (sink->clients, (GFunc) free_client, sink); g_list_free (sink->clients); diff --git a/gst/udp/gstudpsrc.c b/gst/udp/gstudpsrc.c index 61fadcd..e462591 100644 --- a/gst/udp/gstudpsrc.c +++ b/gst/udp/gstudpsrc.c @@ -456,6 +456,7 @@ gst_udpsrc_start (GstBaseSrc * bsrc) src = GST_UDPSRC (bsrc); + GST_DEBUG_OBJECT (src, "creating socket pair"); if ((ret = socketpair (PF_UNIX, SOCK_STREAM, 0, CONTROL_SOCKETS (src))) < 0) goto no_socket_pair; @@ -478,6 +479,7 @@ gst_udpsrc_start (GstBaseSrc * bsrc) src->myaddr.sin_port = htons (src->port); /* short, network byte order */ src->myaddr.sin_addr.s_addr = INADDR_ANY; + GST_DEBUG_OBJECT (src, "binding on port %d", src->port); if ((ret = bind (src->sock, (struct sockaddr *) &src->myaddr, sizeof (src->myaddr))) < 0) @@ -498,8 +500,10 @@ gst_udpsrc_start (GstBaseSrc * bsrc) goto getsockname_error; port = ntohs (my_addr.sin_port); + GST_DEBUG_OBJECT (src, "bound, on port %d", port); if (port != src->port) { src->port = port; + GST_DEBUG_OBJECT (src, "notifying %d", port); g_object_notify (G_OBJECT (src), "port"); }