Re: Separate proposal on quality (was part of the "big proposal")

I think it looks good.

I’m assuming you are implying the priority value is just a floating point relative scale.  if you have an encoding at 1.0 priority and you add a new one with higher/lower priority you go up/down from 1.0.  Or it can be completely arbitrary float values as well?
Is there any quantitative priority scale implication?  1 vs 100 is “really big priority difference”, 1 vs 2 “not so big” or is it 1 vs 100 means the same as 1vs 2.

-Chris

On Apr 15, 2014, at 3:18 PM, Peter Thatcher <pthatcher@google.com> wrote:

> Here's a simplified proposal for how to add quality control without getting too mixed up with quality (there will be a separate proposal for that).
> 
> dictionary RTCRtpEncodingParameters {
>   // ... existing ssrc, codec, fec, rtx
> 
>   // The higher the value, the more the bits will be given to each
> 
> 
>   // as available bandwidth goes up.  Default is 1.0.
>   double priority;
>   double maxBitrate;  
>   double minQuality;
>   // 1.0 == Bias toward framerate, 0.0 == Bias toward quality/resolution
>   double framerateBias; 
> 
> 
> 
>   // Resolution/cropping/scaling is controlled by the input track!
> }
> Send a thumbnail along with regular size
> var encodings1 = [
>   ssrc: 1,
>   priority: 1.0
> }]
> 
> // Control the resolution and framerate with a different track and RtpSender.
> var encodings2 = [{
>   ssrc: 2,
>   // Prioritize the thumbnail over the main video.
>   priority: 10.0
> }];
> Sign Language 
> (need high framerate, but don't get too bad of quality)
> 
> var encodings = [{
>   minQuality: 0.2,
>   framerateBias: 1.0
> }];
> Screencast
> (High quality, framerate can be low)
> var encodings = [{
>   framerateBias: 0.0
> }];
> Remote Desktop
> (High framerate, must not dowscale)
> var encodings = [{
>   framerateBias: 1.0
> }];
> Audio more important than video
> var audioEncodings = [{
>   priority: 10.0
> }];
> var videoEncodings = [{
>   priority: 0.1
> }];
> Video more important than audio
> var audioEncodings = [{
>   priority: 0.1
> }];
> var videoEncodings = [{
>   priority: 10.0
> }];
> 
> Crank up the quality
> var encodings = [{
>   maxBitrate: 10000000
> }];
> 
> Keep the bandwidth low
> var encodings = [{
>   maxBitrate: 100000
> }];
> 

Received on Thursday, 17 April 2014 16:41:15 UTC