[webrtc-pc] getCapabilities question (#2696)

fippo has just created a new issue for https://github.com/w3c/webrtc-pc:

== getCapabilities question ==
I was looking at
  https://webrtc.github.io/samples/src/content/peerconnection/audio/
which in Chrome 96+ shows audio/RED with a sdpFmtpLine 111/111.

This pulls from
  RTCRtpSender.getCapabilities("audio").codecs
```
[
 {
  "channels": 2,
  "clockRate": 48000,
  "mimeType": "audio/opus",
  "sdpFmtpLine": "minptime=10;useinbandfec=1"
 },
 {
  "channels": 2,
  "clockRate": 48000,
  "mimeType": "audio/red",
  "sdpFmtpLine": "111/111"
 },
 {
  "channels": 1,
  "clockRate": 16000,
  "mimeType": "audio/ISAC"
 },
 {
  "channels": 1,
  "clockRate": 32000,
  "mimeType": "audio/ISAC"
 },
 {
  "channels": 1,
  "clockRate": 8000,
  "mimeType": "audio/G722"
 },
 {
  "channels": 1,
  "clockRate": 8000,
  "mimeType": "audio/PCMU"
 },
 {
  "channels": 1,
  "clockRate": 8000,
  "mimeType": "audio/PCMA"
 },
 {
  "channels": 1,
  "clockRate": 32000,
  "mimeType": "audio/CN"
 },
 {
  "channels": 1,
  "clockRate": 16000,
  "mimeType": "audio/CN"
 },
 {
  "channels": 1,
  "clockRate": 8000,
  "mimeType": "audio/CN"
 },
 {
  "channels": 1,
  "clockRate": 48000,
  "mimeType": "audio/telephone-event"
 },
 {
  "channels": 1,
  "clockRate": 32000,
  "mimeType": "audio/telephone-event"
 },
 {
  "channels": 1,
  "clockRate": 16000,
  "mimeType": "audio/telephone-event"
 },
 {
  "channels": 1,
  "clockRate": 8000,
  "mimeType": "audio/telephone-event"
 }
]
```
Showing the payload type doesn't make much sense at that point since it does not relate to anything that is currently there.

We don't do that for video/rtx where only a single rtx codec with no apt shows up:
```
[
 {
  "clockRate": 90000,
  "mimeType": "video/VP8"
 },
 {
  "clockRate": 90000,
  "mimeType": "video/rtx"
 },
 {
  "clockRate": 90000,
  "mimeType": "video/VP9",
  "sdpFmtpLine": "profile-id=0"
 },
 {
  "clockRate": 90000,
  "mimeType": "video/VP9",
  "sdpFmtpLine": "profile-id=2"
 },
 {
  "clockRate": 90000,
  "mimeType": "video/H264",
  "sdpFmtpLine": "level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42001f"
 },
 {
  "clockRate": 90000,
  "mimeType": "video/H264",
  "sdpFmtpLine": "level-asymmetry-allowed=1;packetization-mode=0;profile-level-id=42001f"
 },
 {
  "clockRate": 90000,
  "mimeType": "video/H264",
  "sdpFmtpLine": "level-asymmetry-allowed=1;packetization-mode=1;profile-level-id=42e01f"
 },
 {
  "clockRate": 90000,
  "mimeType": "video/H264",
  "sdpFmtpLine": "level-asymmetry-allowed=1;packetization-mode=0;profile-level-id=42e01f"
 },
 {
  "clockRate": 90000,
  "mimeType": "video/AV1X"
 },
 {
  "clockRate": 90000,
  "mimeType": "video/red"
 },
 {
  "clockRate": 90000,
  "mimeType": "video/ulpfec"
 }
]
```
Which does not make much sense either?

Reading
http://draft.ortc.org/#dom-rtcrtpcodeccapability
do we need to bring preferredPayloadType back?

https://w3c.github.io/webrtc-pc/#rtcrtpcodeccapability seems a bit less specific.

@aboba may have an opinion.

Please view or discuss this issue at https://github.com/w3c/webrtc-pc/issues/2696 using your GitHub account


-- 
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config

Received on Monday, 8 November 2021 08:58:44 UTC