- From: Sergio Garcia Murillo <sergio.garcia.murillo@gmail.com>
- Date: Fri, 13 Jul 2018 10:00:48 +0200
- To: public-webrtc@w3.org
- Message-ID: <a019d609-04e0-2990-5348-22183d01aac8@gmail.com>
Bernard, Harald, any feedback on my proposal below? Seems it has been
buried under side discussions on this thread.
Best regards
Sergio
On 11/07/2018 10:38, Sergio Garcia Murillo wrote:
> Could we at least agree that we will only cover the SRST case with no
> PT-multiplexing, that would simplify things a lot.
>
> If the simple approach is not accepted (just specifying the number of
> spatial and temporal layer per stream), we could add a svc layer
> definition within each of the encodings.
>
> For example for VP9 SVC with SL3TL2, it would look something like this
> (each layer encoding could have other attributes like mas bitrate,
> proction priority, etc):
>
> var encodings = [
> {
> //..other encoding parameters..
> layers : [
> {id:"sl0tl0", resolutionScale: 4.0, framerateScale: 2.0 },
> {id:"sl0tl1", resolutionScale: 4.0, framerateScale: 1.0,
> dependencies: ["sl0tl0"] },
> {id:"sl1tl0", resolutionScale: 2.0, framerateScale: 2.0,
> dependencies: ["sl0tl0"] },
> {id:"sl1tl1", resolutionScale: 2.0, framerateScale: 1.0,
> dependencies: ["sl1tl0","sl0tl1"] },
> {id:"sl2tl0", resolutionScale: 1.0, framerateScale: 2.0,
> dependencies: ["sl1tl0"] },
> {id:"sl2tl1", resolutionScale: 1.0, framerateScale: 1.0,
> dependencies: ["sl1tl0","sl2tl0"] }
> ]
> }
> ];
>
> And for simulcast with two simulcast layers, the first with two
> temporal layers and the high res with three
>
> var encodings = [
> {
> rid: "lowres",
> resolutionScale: 2.0,
> //..other encoding parameters..
> layers : [
> {id:"tl0", framerateScale: 2.0 },
> {id:"tl1", dependencies: ["tl0"] }
> ]
> },
> {
> rid: "highres",
> encodingId: "H0",
> resolutionScale: 1.0,
> //..other encoding parameters..
> layers : [
> {id:"tl0", framerateScale: 4.0 },
> {id:"tl1", framerateScale: 2.0, dependencies: ["tl0"] },
> {id:"tl2", dependencies: ["tl1"] }
> ]
> }
> ];
>
>
> If we decide to get rid of the layer dependency definition, as for
> example VP8 and VP9 requires that each layer depends only on the lower
> temporal and spatial layer, we could have something like this instead:
>
> var encodings = [
> {
> //..other encoding parameters..
> layers : [
> {sid:0, tid:0, resolutionScale: 4.0, framerateScale: 2.0 },
> {sid:0, tid:1, resolutionScale: 4.0, framerateScale: 1.0 },
> {sid:1, tid:0, resolutionScale: 2.0, framerateScale: 2.0 },
> {sid:1, tid:1, resolutionScale: 2.0, framerateScale: 1.0 },
> {sid:2, tid:0, resolutionScale: 1.0, framerateScale: 2.0 },
> {sid:2, tid:1, resolutionScale: 1.0, framerateScale: 1.0, }
> ]
> }
> ];
>
> And for simulcast:
>
> var encodings = [
> {
> rid: "lowres",
> resolutionScale: 1.0,
> //..other encoding parameters..
> layers : [
> {tid:0, framerateScale: 2.0 },
> {tid:1}
> ]
> },
> {
> rid: "highres",
> encodingId: "H0",
> resolutionScale: 1.0,
> //..other encoding parameters..
> layers : [
> {tid:0, framerateScale: 4.0 },
> {tid:1, framerateScale: 2.0 },
> {tid:2 }
> ]
> }
> ];
Received on Friday, 13 July 2018 07:59:49 UTC