- From: Peter Thatcher <pthatcher@google.com>
- Date: Tue, 29 Jul 2014 17:14:18 -0700
- To: Bernard Aboba <Bernard.Aboba@microsoft.com>
- Cc: "public-ortc@w3.org" <public-ortc@w3.org>
- Message-ID: <CAJrXDUEWiU3iYwm-N_KhV8=G5U4ZcTJsiohf8GipzpXCCUrgNA@mail.gmail.com>
Correct, I think :). On Tue, Jul 29, 2014 at 5:10 PM, Bernard Aboba <Bernard.Aboba@microsoft.com> wrote: > Makes sense. With respect to the Examples, does this mean: > > > > 1. Section 3.16, Example 3. Doesn’t need an RTCIceTransportController > because there is only one transport, no restart and no gather prior to > start. > > 2. Section 4.4, Example 5. Needs an RTCIceTransportController if > multiple transports are started, even though there is no restart() or > gather() method call. > > 3. Section 5.4, Example 6. Since there is no RTP/RTCP mux, an > RTCIceTransportController is needed for each fork, even though there is no > restart() or gather(). > > > > > > *From:* Peter Thatcher [mailto:pthatcher@google.com] > *Sent:* Tuesday, July 29, 2014 4:59 PM > *To:* Bernard Aboba > *Cc:* public-ortc@w3.org > *Subject:* Re: When is RTCIceTransportController needed? > > > > If you have more than one Transport, you should make a Controller to get > the correct freezing behavior. > > > > If we move restart() to the Controller, restarting would require a > Controller. > > > > Gathering before you start a transport would also require a Controller. > > > > On Tue, Jul 29, 2014 at 2:55 PM, Bernard Aboba < > Bernard.Aboba@microsoft.com> wrote: > > At the July 20 ORTC CG meeting, we talked about adding restart() and > gather() methods to the RTCIceTransportController object, and removing > gather() from the RTCIceTransport. > > One question was whether this implied that RTCIceTransportController was > needed, even for simple cases, such as when both A/V mux and RTP/RTCP mux > is used. > > In looking through the current examples in the spec, it was not very clear > when RTCIceTransportController would be needed: > > 1. Section 3.16, Example 3. This example assumes a single ICE and > DTLS transport (implying A/V and RTP/RTCP mux), so it didn't construct an > RTCIceTransportController. Note that this example doesn't call > RTCIceTransport.gather(), so it seems to imply that gathering is initiated > via the start() method. Since this example doesn't need either ICE restart > or gather(), is it necessary to construct an RTCIceTransportController? > > 2. Section 4.4, Example 5. This is a more complicated example where > the Initiator constructs ICE transports, DTLS transports, sender and > receiver objects, assuming no A/V or RTP/RTCP mux, then determines whether > the responder can do RTP/RTCP mux. Here also there is no ICE restart or use > of gather(), only RTCIceTransport.start(). And there is no > RTCIceTransportController constructed. Do we need to construct one, or > since there are separate A/V transports, it is "implicitly" contructed > somehow?? > > 3. Section 5.4, Example 6: This is a forking example with an > RTCRtpIceListener and no RTP/RTCP mux. Again, it only uses > RTCIceTransport.start, not restart() or gather(), and no > RTCIceTransportController object is constructed. > > > > >
Received on Wednesday, 30 July 2014 00:15:26 UTC