- 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