[gst-devel] Replacing many udpsrc/udpsink by one element

SP GLE spglegle at yahoo.fr
Thu Dec 11 17:56:56 CET 2008


Hi,
Thank you for your answers. I think i may need to write a new element, it seems to be the only way to reduce system calls used in udpsr/udpsink and to also keep ability to control independently each socket (IP_TOS, connect(), ...etc). 
All specific parts of udp sockets would be handled by user, only file descriptors would be passed to element. Element is only in charge of polling all fds and push buffer to associated pads. The problem is on the design of this element, as each gst_pad_push() can take some time to realize, processing all fds could take a while regarding RTP buffer duration/jitter/expected latency. 

Regards.

--- En date de : Lun 8.12.08, Eric Zhang <nicolas.m.zhang at gmail.com> a écrit :

> De: Eric Zhang <nicolas.m.zhang at gmail.com>
> Objet: Re: [gst-devel] Replacing many udpsrc/udpsink by one element
> À: "Discussion of the development of GStreamer" <gstreamer-devel at lists.sourceforge.net>
> Date: Lundi 8 Décembre 2008, 3h36
> Hi, gstreamer-devel:
> 
>     Correct. Both these elements use one socket inside so
> if every
> connection wanna use a separate socket pair, multiple
> udpsrc/udpsink cannot
> be avoid, or you can write a new element to achieve this.
> 
> Eric Zhang
> 
> 2008/12/6 Olivier Crête
> <olivier.crete at collabora.co.uk>
> 
> > On Fri, 2008-12-05 at 17:54 +0800, Eric Zhang wrote:
> > > Hi, gstreamer-devel:
> > >
> > >     multiudpsink can send UDP packets to multiple
> clients. But I don't
> > > find "multiudpsrc".  :)
> >
> > udpsrc can receive from multiple clients (and its save
> the address in
> > the buffer's header, its a GstNetBuffer).
> >
> > Then you possibly need to demultiplex it yourself.
> >
> > That said, I think its not what spgle wants, since
> even multiudpsink
> > only uses one socket.
> >
> >
> > > Eric Zhang
> > >
> > > 2008/12/5 SP GLE <spglegle at yahoo.fr>
> > >         Hi,
> > >         I use Gstreamer for receving/sending RTP
> with multiple
> > >         connections by process
> > >          (let's say one hundred), so 100 UDP
> sockets for RTP and 100
> > >         UDP sockets for RTCP.
> > >
> > >         These 200 sockets are in use by udpsrc
> and udpsink elements
> > >         (created using
> > >         the 'sockfd' properties for each
> one).
> > >
> > >         Is there an element able to handle many
> sockets (200 for ex.)
> > >         for reading and writing,
> > >         using provided sockets' fds ?
> > >
> > >         It would be more efficient than 200
> udpsrc and udpsink,
> > >         avoiding many fcntl() and poll for
> > >         waiting for/reading data. fds could be
> added/removed to the
> > >         element using requested pads,
> > >         pad names containing fd value as %d.
> > >
> > >         Regards.
> > >
> > >
> > >
> > >
> > >
> > >
> >
> ------------------------------------------------------------------------------
> > >         SF.Net email is Sponsored by MIX09, March
> 18-20, 2009 in Las
> > >         Vegas, Nevada.
> > >         The future of the web can't happen
> without you.  Join us at
> > >         MIX09 to help
> > >         pave the way to the Next Web now. Learn
> more and register at
> > >
> >
> http://ad.doubleclick.net/clk;208669438;13503038;i?http://2009.visitmix.com/
> > >        
> _______________________________________________
> > >         gstreamer-devel mailing list
> > >         gstreamer-devel at lists.sourceforge.net
> > >        
> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
> > >
> > >
> >
> ------------------------------------------------------------------------------
> > > SF.Net email is Sponsored by MIX09, March 18-20,
> 2009 in Las Vegas,
> > Nevada.
> > > The future of the web can't happen without
> you.  Join us at MIX09 to help
> > > pave the way to the Next Web now. Learn more and
> register at
> > >
> >
> http://ad.doubleclick.net/clk;208669438;13503038;i?http://2009.visitmix.com/
> > > _______________________________________________
> gstreamer-devel mailing
> > list gstreamer-devel at lists.sourceforge.net
> >
> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
> > --
> > Olivier Crête
> > olivier.crete at collabora.co.uk
> > Collabora Ltd
> >
> >
> >
> ------------------------------------------------------------------------------
> > SF.Net email is Sponsored by MIX09, March 18-20, 2009
> in Las Vegas, Nevada.
> > The future of the web can't happen without you. 
> Join us at MIX09 to help
> > pave the way to the Next Web now. Learn more and
> register at
> >
> >
> http://ad.doubleclick.net/clk;208669438;13503038;i?http://2009.visitmix.com/
> > _______________________________________________
> > gstreamer-devel mailing list
> > gstreamer-devel at lists.sourceforge.net
> >
> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
> >
> >
> ------------------------------------------------------------------------------
> SF.Net email is Sponsored by MIX09, March 18-20, 2009 in
> Las Vegas, Nevada.
> The future of the web can't happen without you.  Join
> us at MIX09 to help
> pave the way to the Next Web now. Learn more and register
> at
> http://ad.doubleclick.net/clk;208669438;13503038;i?http://2009.visitmix.com/_______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel


      




More information about the gstreamer-devel mailing list