GNOME Bugzilla – Bug 612751
[udpsink] regression when external sockfd is used
Last modified: 2010-03-17 00:55:19 UTC
In my application (http://svn.sat.qc.ca/trac/scenic/) I create my own sockets and pass them to udpsink elements via the sockfd property. Until recently this worked fine, now however, i get this failure message: gstmultiudpsink.c(808): gst_multiudpsink_configure_client (): /GstPipeline:pipeline/GstUDPSink:udpsink1: Could not set TTL socket option (97): Address family not supported by protocol I think commit 7f980d28aa23c64dce423c0c0f994b2d136fc7fe might be the one that introduced this issue. My guess is that the sink->ss_family variable is never being updated with the value of the socket's family when it's an external socket. Here's the output of my program up until it dies: Creating socket for host 127.0.0.1, port 10000, IPV4 Socket /GstPipeline:pipeline/GstUDPSink:udpsink0: port = 10000 /GstPipeline:pipeline/GstUDPSink:udpsink0: host = "127.0.0.1" /GstPipeline:pipeline/GstUDPSink:udpsink0: sockfd = 6 Creating socket for host 127.0.0.1, port 10001, IPV4 Socket /GstPipeline:pipeline/GstUDPSink:udpsink1: async = FALSE /GstPipeline:pipeline/GstUDPSink:udpsink1: sync = FALSE /GstPipeline:pipeline/GstUDPSink:udpsink1: port = 10001 /GstPipeline:pipeline/GstUDPSink:udpsink1: host = "127.0.0.1" /GstPipeline:pipeline/GstUDPSink:udpsink1: sockfd = 7 Creating socket for port 10005, IPV4 Socket /GstPipeline:pipeline/GstUDPSrc:udpsrc0: port = 10005 /GstPipeline:pipeline/GstUDPSrc:udpsrc0: sockfd = 8 GStreamer-CRITICAL **: Could not add signal watch to bus bus1 Debug details: gstmultiudpsink.c(808): gst_multiudpsink_configure_client (): /GstPipeline:pipeline/GstUDPSink:udpsink1: Could not set TTL socket option (97): Address family not supported by protocol
Fixed in commit efbdecd0aca7775ea8877624b102e84a789d615e