On 7/19/13 12:07, Ted Hardie wrote:
> On Fri, Jul 19, 2013 at 9:54 AM, Martin Thomson
> <martin.thomson@gmail.com <mailto:martin.thomson@gmail.com>> wrote:
>
>
> Negotiation is a hole. A vast, soul-sucking, waste of time.
>
>
> Even if you have the same javascript application downloaded, you will
> have disparate capabilities in the environments into which it is
> downloaded (browser/os/codecs/media sources/available network
> capacity). Getting set intersection and preference order for those
> capabilities is something that applications actually want. You may be
> able to move the pain of that around, but it isn't a waste of time.
I can't +1 this hard enough. I certainly don't want every javascript
application that makes use of the WebRTC API to independently discover
that mobile terminal Foocom A1 runnning MobileOS 3.1.7(a) bogs down to
unusable if you try to send it more than 320x200 video, and then try to
solve that problem.
Again and again, for every permutation of phone and operating system
version.
Yeah, someone has to do this kind of characterization, and some of it
can be done real-time if you're interacting directly with the operating
system. So... maybe we could add yet another API to WebRTC to allow
applications to build this functionality themselves rather than counting
on them characterizing the systems they care about and blowing up on the
ones they don't.
But, honestly, any course of action that relegates this to the
applications seems to have the dual properties of forcing it to be
implemented hundreds of thousands of times while making the actual user
experience worse.
/a