Porting IPv6 UDP stream to 1.x

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

Porting IPv6 UDP stream to 1.x

Stefan Ott
Hi

I am trying to port a gstreamer-0.10 pipeline that I have been using
for a while to gstreamer-1.x but I can't seem to figure out the proper
syntax.

The pipeline is for a stream sent via UDP (RTP) to the IPv6 all-nodes
local multicast address (ff02::1). The old pipeline starts with

gst-launch-0.10 udpsrc port=4001 multicast-group=ff02::1%eth0 caps="${CAPS}" ! [..]

If I try the same command with gstreamer 1.x it complains:

$ gst-launch-1.0 udpsrc port=4001 multicast-group=ff02::1%eth0 caps="${CAPS}" ! fakesink
Setting pipeline to PAUSED ...
ERROR: Pipeline doesn't want to pause.
ERROR: from element /GstPipeline:pipeline0/GstUDPSrc:udpsrc0: Could not get/set settings from/on resource.
Additional debug info:
/tmp/portage/media-libs/gst-plugins-good-1.6.3/work/gst-plugins-good-1.6.3/gst/udp/gstudpsrc.c(1119): gst_udpsrc_open (): /GstPipeline:pipeline0/GstUDPSrc:udpsrc0:
bind failed: Error binding to address: Invalid argument
Setting pipeline to NULL ...
Freeing pipeline ...


So far I have been trying with all the combinations of the
multicast-group, multicast-iface, address, and auto-multicast
arguments that I could think of but without much success.

Can anyone tell me what is the right syntax to do this with gstreamer
1.x?

--
Stefan Ott
http://www.ott.net/
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: Porting IPv6 UDP stream to 1.x

Sebastian Dröge-3
On Mi, 2016-04-06 at 02:59 +0200, Stefan Ott wrote:

> Hi
>
> I am trying to port a gstreamer-0.10 pipeline that I have been using
> for a while to gstreamer-1.x but I can't seem to figure out the
> proper
> syntax.
>
> The pipeline is for a stream sent via UDP (RTP) to the IPv6 all-nodes
> local multicast address (ff02::1). The old pipeline starts with
> [...]
> Can anyone tell me what is the right syntax to do this with gstreamer
> 1.x?
This is a bug, can you report it here?
https://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer

It should work with your syntax, and it also does after making the
#ifdef here also for Linux:
https://cgit.freedesktop.org/gstreamer/gst-plugins-good/tree/gst/udp/gstudpsrc.c#n953


So apparently for IPv6 multicast addresses you can't bind directly to
them. While for IPv4 multicast addresses, binding directly to them is
required to filter out any packets that are for other destinations than
that multicast address. I wonder how to do the filtering with IPv6.
Someone needs to research that :)

--
Sebastian Dröge, Centricular Ltd · http://www.centricular.com


_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

signature.asc (968 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Porting IPv6 UDP stream to 1.x

Stefan Ott
On Wed, Apr 06, 2016 at 09:58:10AM +0300, Sebastian Dröge wrote:

> On Mi, 2016-04-06 at 02:59 +0200, Stefan Ott wrote:
> > Hi
> >
> > I am trying to port a gstreamer-0.10 pipeline that I have been using
> > for a while to gstreamer-1.x but I can't seem to figure out the
> > proper
> > syntax.
> >
> > The pipeline is for a stream sent via UDP (RTP) to the IPv6 all-nodes
> > local multicast address (ff02::1). The old pipeline starts with
> > [...]
> > Can anyone tell me what is the right syntax to do this with gstreamer
> > 1.x?
>
> This is a bug, can you report it here?
> https://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer
>
> It should work with your syntax, and it also does after making the
> #ifdef here also for Linux:
> https://cgit.freedesktop.org/gstreamer/gst-plugins-good/tree/gst/udp/gstudpsrc.c#n953
>
>
> So apparently for IPv6 multicast addresses you can't bind directly to
> them. While for IPv4 multicast addresses, binding directly to them is
> required to filter out any packets that are for other destinations than
> that multicast address. I wonder how to do the filtering with IPv6.
> Someone needs to research that :)

Ah nice, thank you. I'll test with the #ifdef and report the
bug once I know whether this helps.

--
Stefan Ott
http://www.ott.net/
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: Porting IPv6 UDP stream to 1.x

Sebastian Dröge-3
On Mi, 2016-04-06 at 13:23 +0200, Stefan Ott wrote:

> Ah nice, thank you. I'll test with the #ifdef and report the
> bug once I know whether this helps.

https://bugzilla.gnome.org/show_bug.cgi?id=764679 for future reference.

--
Sebastian Dröge, Centricular Ltd · http://www.centricular.com


_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

signature.asc (968 bytes) Download Attachment