using GSTRTPBIN to send different streams to different clients over one socket

Michael Niemand michael.niemand at googlemail.com
Thu Feb 23 01:28:08 PST 2012


Hi folks,

still stuck with my conferencing solution.

I managed to use the gstrtpbin as my session manager, receiving packets
from multiple clients (from recv_rtp_src pads), then do something with the
audio data (basically mix the audio, so that each client can hear only the
audio of all the other participants, but not himself)  and sending rtp
packets back with the GSTRTPBINs send_rtp_sink.

But I don't really get, how do I go from there. I hooked up the
automatically created send_rtp_src pads to a rtpmuxer and linked its source
to a multiudp-sink, which has a list of all my clients. But, of course, all
clients receive the same, muxed data (which seems logical to me).

How do I manage to get each client receive only the signal I want it to
receive, while I send over only one socket? I believe the SSRC could take
care of that, but the muxer sets all ssrcs to the same value, which makes
the rtpbins session management kinda obsolete, doesn't it?

Wireshark shows the SSRCs of all outgoing packets are equal (as expected,
but not wanted).

Or do I have flaws in my understanding of the concept? What do I need to
put *behind* the RTPBIN to send different streams to different clients
(each receiving only the one meant for him) over only one socket? Is it
possible at all?


-- 
*Michael Niemand*
*
*
Albusstr. 17
60313 Frankfurt/M
Germany

Tel.: +49 (0) 69 200 130 60
Mobile: +49 (0) 171 645 29 07

eMail: michael.niemand at gmail.com
sip:1406283 at sipgate.de
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20120223/ba288bcf/attachment.html>


More information about the gstreamer-devel mailing list