Re: Issue 81: Separating audio and video capabilities

I think it's nice to be able to get the capabilities without creating a
sender or receiver object first.

I don't really see the advantage of having separate audio/video
capabilities.  What things will be audio-only or video-only?  The codecs?
 The codecs already indicate whether they are audio or video.


On Thu, May 8, 2014 at 10:19 PM, Bernard Aboba
<Bernard.Aboba@microsoft.com>wrote:

> Currently, getCapabilities is defined as follows:
>
> partial interface RTCRtpSender {
> static RTCRtpCapabilities getCapabilities ();
> };
>
> partial interface RTCRtpReceiver {
> static RTCRtpCapabilities getCapabilities ();
> };
>
> The implication is that getCapabilities() returns both audio and video
> capabilities in a single RTCRtpCapabilities object.
>
> However, if getCapabilities wasn't defined as static, then it could return
> only capabilities of the appropriate kind:
>
> partial interface RTCRtpReceiver {
> RTCRtpCapabilities getCapabilities (DOMString kind);
> }
>
> partial interface RTCRtpSender {
> RTCRtpCapabilities getCapabilities ();
> };
>
> If it were done this way, with respect to the RTCRtpSender object, it
> would be possible to retrieve audio and video send and receive capabilities
> separately:
>
> var audioSender = new RTCRtpSender(audioTrack, transport);
> var videoSender = new RTCRtpSender(videoTrack, transport);
> rtpAudioSendCaps = audioSender.getCapabilities();
> rtpVideoSendCaps = videoSender.getCapabilities();
>
> With the RTCRtpReceiver object, it would look like this:
>
>    var audioReceiver = new RTCRtpReceiver(transport);
>    var videoReceiver = new RTCRtpReceiver(transport);
>    rtpAudioRecvCaps = audioReceiver.getCapabilities("audio");
>    rtpVideoRecvCaps = videoReceiver.getCapabilities("video");
>
> One advantage of separating audio and video capabilities is that
> subsequent calls to createParameters could be more specific:
>
> var audioRecvParams = RTCRtpReceiver.createParameters(
> "audio", remote.rtpAudioSendCaps);
> var videoRecvParams = RTCRtpReceiver.createParameters(
> "video", remote.rtpVideoSendCaps);
>

Received on Friday, 9 May 2014 17:58:13 UTC