- From: Eric Rescorla <ekr@rtfm.com>
- Date: Tue, 23 Jul 2013 22:53:36 -0700
- To: cowwoc <cowwoc@bbs.darktech.org>
- Cc: "public-webrtc@w3.org" <public-webrtc@w3.org>
- Message-ID: <CABcZeBOHsbmU+mLk6+-3YbBejd0kRjzXBzqg50ezgWKJS5SkxQ@mail.gmail.com>
On Tue, Jul 23, 2013 at 10:46 PM, cowwoc <cowwoc@bbs.darktech.org> wrote: > On 24/07/2013 12:26 AM, Cullen Jennings (fluffy) wrote: > >> On Jul 18, 2013, at 6:21 AM, Stefan Håkansson LK < >> stefan.lk.hakansson@ericsson.**com <stefan.lk.hakansson@ericsson.com>> >> wrote: >> >> 2. Setting BW for a MediaStreamTrack >>> ------------------------------**------ >>> Why: There are situations where a suitable start bit-rate can be known, >>> or guessed. If this knowledge could be used the perceived end-user >>> quality could be improved (since a higher quality is available from >>> start since there is no need to start at a really low bit-rate). >>> >>> There are also situations where it could be beneficial if min and max >>> bit-rates to be used can be influenced. >>> >>> * The app developer may know that below a certain bit-rate the quality >>> is so bad that the browser could stop sending it, and likewise there may >>> be knowledge about a bit-rate above which the quality does not improve. >>> >>> * There are situations when there is an agreement between the service >>> provider and the connectivity provider about min and max bit-rates. >>> >>> What: Again, this depends on how much BW info is included in the SDP. >>> But my understanding is that there should be some (since RTCP rates to >>> be used are based on this info IIUC). >>> >> I agree and think we need to a couple things here. One is setting the >> limits for the bandwidth but the other is using the stats interface to >> read the current bandwidth being used. >> > > A slightly related but higher-level proposal: replace Mandatory > constraints with Optional constraints that act as Fence conditions. > > It works like this: You specify a bunch of optional constraints and a > callback to be invoked when a Constraint is violated. For example, I would > ask for a bandwidth between 1Mbit and 2Mbit. If bandwidth drops below the > minimum, the callback gets invoked. I then reduce the video resolution, or > turn off audio, or... whatever the application wants... and set new min/max > bandwidth bounds. If the maximum bound is surpassed, I know I can afford to > increase the video resolution so I do so. And so on. > > Assuming I'm wrong (you need mandatory constraints) I still think > adding this fence behavior puts control in the right place. The application > is uniquely positioned to decide what happens when the connection > capabilities change. Interesting idea. Why don't you send a detailed proposed change to the list so it can be discussed? -Ekr >
Received on Wednesday, 24 July 2013 05:54:44 UTC