RE: Issue #153: Clarification in Section 7.3.2

A revised proposal:

getCapabilities, static

Obtain the receiver capabilities, based on kind. If kind is omitted or set to "", then all capabilities are returned. To avoid confusion, getCapabilities(kind) should return codecs with a matching intrinsic kind value, as well as codecs with no intrinsic kind, (such as the retransmission payload [RFC4588] and redundancy [RFC2198]). For codecs with no intrinsic kind, RTCRtpCapabilities.RTCRtpCodecCapability[i].kind returned by getCapabilities(kind> should be set to the value of kind if kind is equal to "audio" or "video". If the kind argument was omitted or set to "", then the value of RTCRtpCapabilities.RTCRtpCodecCapability[i].kind is set to "".

Also, in the same section, the following modified receive text is proposed:

receive
Media to be received is controlled by parameters. If receive() is called with invalid RTCRtpParameters, throw an InvalidParameters exception. The receive() method does not update parameters based on what is currently being received, so that the value of parameters remains that last passed to the receive() method. The RTCRtpReceiver object starts receiving when receive() is called for the first time, and changes the receiving parameters when receive() is called again. The RTCRtpReceiver object stops receiving when stop() is called. After receive returns, track is set, and the value of track.kind is determined based on the kind of the codecs provided in parameters.codecs. If parameters.codecs are all of a single kind then track.kind is set to that kind. If parameters.codecs are of mixed kind, throw an InvalidParameters exception. For this purpose a kind of "" is not considered mixed.


From: Bernard Aboba
Sent: Thursday, October 2, 2014 1:57 PM
To: public-ortc@w3.org
Subject: Issue #153: Clarification in Section 7.3.2

A question has arisen as to how RTCRtpReceiver.getCapabilities(kind) should behave with respect to codecs that have no intrinsic kind (such as RTX or RED).   For example, if we assume that RTX and RED can be used with kind === 'audio' or 'video', should these codecs be returned regardless of the value of kind?  Also, should RTX and/or RED be returned as a codec capability at all?

Below is some proposed text for Section 7.3.2 to describe the desired behavior of RTCRtpReceiver.getCapabilities:

getCapabilities, static
Obtain the receiver capabilities, based on kind. If kind is omitted or set to "", then all capabilities are returned. To avoid confusion, getCapabilities(kind) should return codecs with a matching intrinsic kind value, as well as codecs with no intrinsic kind, (such as the retransmission payload [RFC4588] and redundancy [RFC2198]), with the value of RTCRtpCapabilities.RTCRtpCodecCapability[i].kind set to the value of kind passed as an argument to RTCRtpReceiver.getCapabilities(kind).

Received on Thursday, 2 October 2014 21:20:18 UTC