- From: Randell Jesup <randell-ietf@jesup.org>
 - Date: Wed, 01 Feb 2012 09:02:09 -0800
 - To: "rtcweb@ietf.org" <rtcweb@ietf.org>, public-webrtc@w3.org
 - Message-ID: <4F297011.1040507@jesup.org>
 
This really is almost all W3c stuff; cc'ing that list where most 
discussion should occur.
Updated suggestion based on Justin's comments:  (largely for W3C 
discussion)
This is rough, and a first cut, but we need to start somewhere.
I propose we add a callback on PeerConnection and some attributes on it
and MediaTracks:
{
...
     // allow app to limit total bitrate used for the PeerConnection
     attribute unsigned long maxBitrate;
     attribute readonly unsigned long currentBitrate;  // [Open issue] - 
how much smoothing?
     attribute Function? onBitrateChange;
     // don't notify until change since last notify is more than this
     attribute unsigned long minBitrateChangeToNotify;
     attribute Function? onResolutionChange;  // not strictly needed
     // These are global settings that can be overridden on a per-track 
basis
     attribute float minFramerate;
     attribute float maxFramerate; // might not be needed
     attribute boolean preferMotion;  // false means preference for 
Resolution
}
To each MediaTrack:
{
...
     // If the app bumps up the currentBitrate of one track and doesn't 
lower another track, the
     // system will make cuts to keep the total bitrate within bounds.
     attribute unsigned long currentBitrate;
     attribute short priority;  // for allocating bits
     // The rest of these are for video (is short guaranteed enough, 
always?  Probably)
     attribute unsigned short width;  // Let app override the values 
chosen automatically
     attribute unsigned short height;
     attribute float framerate;
     attribute float minFramerate;
     attribute float maxFramerate; // might not be needed
     attribute boolean preferMotion;  // false means preference for 
Resolution
     // typically derived from QP
     attribute readonly unsigned short videoQuality;
     // audioQuality?? (samplerate?)
}
Should some of these be echoed in MediaTrackLists or MediaStreams?
-- 
Randell Jesup
randell-ietf@jesup.org
Received on Wednesday, 1 February 2012 17:02:47 UTC