youness.alaoui at collabora.co.uk
Tue Aug 24 18:04:54 PDT 2010
Basically each 'component of a stream' is like a socket, a data stream.. but
multiple components in a stream have the advantage of 'sharing' data between
them to allow for faster/easier connectivity. For example when having one stream
with two components and you try to connect, one component will be 'frozen',
while the other one will do the connectivity checks, once that components gets a
connection, then libnice knows enough about your network topology to determine
which candidate pairs are most likely to work, so it can connect the second
component in a much faster/better way by reusing the information it got in the
Although, I don't really believe that this changes anything, you can create one
stream with 10 components or 10 streams with one component each, it will pretty
much end up (almost) the same, just consider one stream-component as a socket.
p.s: don't forget to take notes of everything you found, and all those
questions, I'm sure it will be helpful to write documentation/tutorial for
people who are new to the world of ICE/libnice.
On 08/24/2010 07:02 PM, Olivier Crête wrote:
> On Tue, 2010-08-24 at 15:05 -0700, Tony Di Croce wrote:
>> I'm trying to understand what all of the calls in nice agent that
>> refer to "component" are for...
>> Do "component"'s provide a mechanism for allowing the application to
>> send multiple seperate but related data streams through the same
>> logical nice stream?
> Yes, components are exactly that. For example, in RTP applications,
> you'd have one component for RTP and one for RTCP.
> Nice mailing list
> Nice at lists.freedesktop.org
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 262 bytes
Desc: OpenPGP digital signature
More information about the Nice