Proposal for candidate pre-gathering

Constraint: PreGatherCandidates

This constraint instructs the RTCPeerConnection to perform candidate
gathering prior to setLocalDescription.  Sets of candidates are
gathered into a pool of the prescribed size.  Note that this number is
not the number of candidates, but the number of complete candidate
sets that are requested.

Candidates gathered into this pool do not cause the RTCPeerConnection
to generate icecandidate[link] events or to alter its state
[link:iceGatheringState].  These candidates are assigned to specific
m= sections only after setLocalDescription()[link] is invoked.  For
each candidate that is drawn from the pool after invoking
setLocalDescription(), the RTCPeerConnection fires an icecandidate
event.  Normal candidate gathering is used to address any shortfall in
available candidates for a local description.

Calling setLocalDescription() causes the value of this constraint to
be reset to 0.  Unused candidate sets may either remain in the pool,
or are discarded at the discretion of the browser.  This constraint
can be set again at any stage to create a pool of pre-gathered
candidates in advance of a call to setLocalDescription() that might
consume them.

The browser is not expected to ensure that gathered candidates remain
live and usable, or to replace candidates that are likely to be
unusable.  A browser may choose to avoid drawing a candidate from the
pre-gathered pool if the candidate is likely to be unusable, choosing
instead to gather a new candidate.

The default value of this constraint is 0, meaning that no candidates
will be pre-gathered.

Received on Thursday, 13 December 2012 17:58:19 UTC