W3C home > Mailing lists > Public > public-webrtc@w3.org > July 2013

Re: Trickle ICE questions?

From: Roman Shpount <roman@telurix.com>
Date: Mon, 22 Jul 2013 06:59:14 -0400
Message-ID: <CAD5OKxuQQtxFgYwHSXJKBu-JbDJ+F4On4LoGX5o4Yb-v79b06A@mail.gmail.com>
To: Emil Ivov <emcho@jitsi.org>
Cc: public-webrtc@w3.org
Hi Emil,

Thank you for the response.

On Mon, Jul 22, 2013 at 6:24 AM, Emil Ivov <emcho@jitsi.org> wrote:

> On 22.07.13, 11:52, Roman Shpount wrote:
>> one intended for audio and another for video. When reflexive and relayed
> candidates are discovered, onicecandidate call back is called. How do I
>> specify that reflexive candidate for one m-line should not be used?
> I am a bit confused since you mention "enabling TURN" above but then refer
> to "reflexive" candidates. Which of the following are you trying to achieve?

When you get a TURN allocation you typically get both back -- reflexive and
relayed candidate.

> a) enable TURN only for one "m=" line but disable it for every other "m="
> line. That is: only the audio "m=" line would be able to ever use TURN but
> will only do so if necessary
b) force use of TURN for one "m=" line and let ICE choose any candidate,
> including relayed ones, for the other "m=" lines.
I am trying to achieve a), ie enable TURN for one "m=" line if it is
necessary and disable it for all the other "m=" lines. I feel like the
appropriate API is missing, or at least there is no parity between
createOffer/createAnswer with setLocalDescription and onicecandidate event.
I think either some sort of setLocalICECandidate method is missing or
onicecandidate event should have a return value which forces this candidate
to be ignored.

> In case of bundle, how do I specify that turn should be used for one and
>> not the other?
> With BUNDLE there is only "one". I am not sure what "the other" would
> refer to here. It all goes down the same path. If you need to avoid this
> then you'd have to drop BUNDLE.

I can still have two media tracks being sent over single bundled
connection. What I am trying to achieve is to enable video only if this
connection does not go through a TURN server, ie force the connection to
send and receive only audio if TURN server is required, send both audio and
video when media flows direct. I guess this would require some non-trivial
constraint or some sort of event which tells me which candidate is
currently being used. So, back to my original question, is there a way I
can find out through which candidate the media is currently flowing and how
would I know when this changes?

Roman Shpount
Received on Monday, 22 July 2013 10:59:43 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 19:17:49 UTC