- From: Bernard Aboba <Bernard.Aboba@microsoft.com>
- Date: Wed, 10 Oct 2018 18:38:39 +0000
- To: Harald Alvestrand <harald@alvestrand.no>, "public-webrtc@w3.org" <public-webrtc@w3.org>
- Message-ID: <MW2PR00MB03324AD3857DA13D67E32B8AECE00@MW2PR00MB0332.namprd00.prod.outlook.com>
Here is potential replacement text: " In response to a call to RTCRtpSender.getCapabilities(kind), conformant implementations of this specification MUST return a sequence of scalability modes supported by each codec of that kind. If a codec does not support encoding of any scalability modes, then the scalabilityModesmember is not provided. In response to a call to RTCRtpReceiver.getCapabilities(kind), decoders that do not support decoding of scalability modes or that are required to decode any scalability mode (such as compliant VP8, VP9 and AV1 decoders) omit the scalabilityModes member. However, decoders that only support decoding of a subset of scalability modes MUST return a sequence of the scalability modes supported by that codec. " ________________________________ From: Harald Alvestrand <harald@alvestrand.no> Sent: Wednesday, October 10, 2018 2:43:42 AM To: Bernard Aboba; public-webrtc@w3.org Subject: Re: Revision of Scalable Video Coding Extension for WebRTC Den 10. okt. 2018 00:49, skrev Bernard Aboba: > The proposed SVC Extension for WebRTC has been revised in order to > reduce the complexity for developers wishing to support Scalable Video > Coding. > > > The new proposal relies on the concept of "scalability modes" utilized > in [AV1] as well as other SVC codecs. > > > The revised proposal is here: > > https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Frawgit.com%2Faboba%2Fwebrtc-sim%2Fmaster%2Fsvc.html&data=02%7C01%7CBernard.Aboba%40microsoft.com%7C9f90bfd79c454cbd969d08d62e94e0d2%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636747614309414143&sdata=7TsspjI7nhYnUKSwpYjTjFPDcAZpcjATaOE5istZwlA%3D&reserved=0 > > > Some slides describing the proposal and the logic behind it are > available here: > > https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdocs.google.com%2Fpresentation%2Fd%2F113UL2TpcXaYOmLw2GeDPjTqDeu2J5OWaqo_SYvzQvC4&data=02%7C01%7CBernard.Aboba%40microsoft.com%7C9f90bfd79c454cbd969d08d62e94e0d2%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636747614309414143&sdata=E9dPF9Am3H5rx07A%2FF%2F7XCWBNvhH3e9ObFWBsxA0Ifc%3D&reserved=0 > > > [AV1] > AV1 Bitstream and Decoding Process Specification > <https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Faomediacodec.github.io%2Fav1-spec%2Fav1-spec.pdf&data=02%7C01%7CBernard.Aboba%40microsoft.com%7C9f90bfd79c454cbd969d08d62e94e0d2%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636747614309414143&sdata=6BnPKtkc8O7PeJhWM2hr2dvugLz4HO4UBiC7VGHXAco%3D&reserved=0>. Peter de > Rivaz; Jack Haughton. Alliance for Open Media. June 25, 2018. URL: > https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Faomediacodec.github.io%2Fav1-spec%2Fav1-spec.pdf&data=02%7C01%7CBernard.Aboba%40microsoft.com%7C9f90bfd79c454cbd969d08d62e94e0d2%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636747614309414143&sdata=6BnPKtkc8O7PeJhWM2hr2dvugLz4HO4UBiC7VGHXAco%3D&reserved=0 > Since the PR making this a document in the repo isn't yet merged, I think it's appropriate to send mail rather than filing a bug: Section 5.2: - Conformant implementations of this specification MUST return a sequence of supported scalability modes for each codec when calling RTCRtpSender.getCapabilities('video'). Implementations MAY return supported scalability modes for other values of kind. - Conformant implementations of this specification SHOULD return a scalabilityModes member for each codec supporting the decoding of scalability modes when calling RTCRtpSender.getCapabilities('video). I think the second one should say "when calling RTCRtpReceiver.getcapabilities", otherwise there's a conflict in the spec. I don't think it's appropriate to have a "MAY not" coupled with a "SHOULD" for the receiver's decoding ability. Especially since the "*" might not be a valid value to return for all codecs (what happens if you want to use this API to nudge an H.264 encoder?). We could make absence mean "no promises, I'll try", while '*' means "all values in the specification are decodable"; I'd rather drop '*' altogether.
Received on Wednesday, 10 October 2018 18:39:04 UTC