Re: [rtcweb] Is there room for a compromise? what about no MTI?

Eric Rescorla <ekr@rtfm.com> Mon, 23 December 2013 01:42 UTC

Return-Path: <ekr@rtfm.com>
X-Original-To: rtcweb@ietfa.amsl.com
Delivered-To: rtcweb@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 4B0731AE135 for <rtcweb@ietfa.amsl.com>; Sun, 22 Dec 2013 17:42:56 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.978
X-Spam-Level:
X-Spam-Status: No, score=-1.978 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, FM_FORGED_GMAIL=0.622, RCVD_IN_DNSWL_LOW=-0.7] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id pTTHYvsCzSUr for <rtcweb@ietfa.amsl.com>; Sun, 22 Dec 2013 17:42:54 -0800 (PST)
Received: from mail-wi0-f171.google.com (mail-wi0-f171.google.com [209.85.212.171]) by ietfa.amsl.com (Postfix) with ESMTP id 4773D1AE120 for <rtcweb@ietf.org>; Sun, 22 Dec 2013 17:42:54 -0800 (PST)
Received: by mail-wi0-f171.google.com with SMTP id bz8so10399948wib.4 for <rtcweb@ietf.org>; Sun, 22 Dec 2013 17:42:50 -0800 (PST)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc:content-type; bh=4I0GxfuCs+MZuMOD91086hJUk+5EpXAVu0PREJbzm18=; b=afVQ98uUVQpLeziBJ4oXD30nv2Fnd/npedfb52Z/2R9sxg1lN8bI2s3QmyCM27p1l9 ga+Bs3k2ClZ8UAIr3cyYufII4h12gYF6B5jOEU9zcEApmhSAbInS4jQS0pLm85ZolRZs l5Ul9yhM0FgsehBpUh4gkBfELoputDX/UeS/c1zsxnNyep9QG29KptNZVy1r7/2WjH3E xn5odR/btgg6Mz621u2m6fwyuvg71g/2qqDKph5eeP2LNuZW2RC1qwYZDTIjrG6bQAYe u9lZH3zy8SmRzWncxQ3jjREr3OBtEkj/NEbBwpVHy4YadXxCusD1XcNTcgALKKM/5YJX OTwQ==
X-Gm-Message-State: ALoCoQl6EhaYBOqZKGYPpWHgf9y6vh3NPY684pIe/Cx8Afhxcn7qpT49SsHbw1yYJ/6YYtPuFI6z
X-Received: by 10.180.198.43 with SMTP id iz11mr16733862wic.0.1387762970712; Sun, 22 Dec 2013 17:42:50 -0800 (PST)
MIME-Version: 1.0
Received: by 10.216.54.194 with HTTP; Sun, 22 Dec 2013 17:42:10 -0800 (PST)
X-Originating-IP: [99.235.251.28]
In-Reply-To: <20131223012255.GZ3245@audi.shelbyville.oz>
References: <20131216170820.GD82971@verdi> <20131220113631.GA70585@verdi> <52B47196.6060400@bbs.darktech.org> <D5B39658-5766-4C5B-9090-8E8EDC4BCFA6@apple.com> <52B484AB.5020102@bbs.darktech.org> <CAOJ7v-0QcMsZ+nxG+kP99zE-+VUiFesGh05agwsnmaMCapJSmA@mail.gmail.com> <52B4B85F.2070209@dcrocker.net> <CAOJ7v-21zRcW=mRdec+92qNikUFZNi_UqHqvFpOfC7-MAjvY=w@mail.gmail.com> <52B73B81.6050400@dcrocker.net> <CABcZeBM8P==y_tXrNp-Rxe5unXyJJatY-ONbhCfkGPwi0bCQBg@mail.gmail.com> <20131223012255.GZ3245@audi.shelbyville.oz>
From: Eric Rescorla <ekr@rtfm.com>
Date: Sun, 22 Dec 2013 20:42:10 -0500
Message-ID: <CABcZeBNpKu1-uJs1M+V33feWCja-MbyaOT9C+TxRkDnyCTLSvw@mail.gmail.com>
To: Ron <ron@debian.org>
Content-Type: text/plain; charset="ISO-8859-1"
Cc: "rtcweb@ietf.org" <rtcweb@ietf.org>
Subject: Re: [rtcweb] Is there room for a compromise? what about no MTI?
X-BeenThere: rtcweb@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Real-Time Communication in WEB-browsers working group list <rtcweb.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/rtcweb>, <mailto:rtcweb-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/rtcweb/>
List-Post: <mailto:rtcweb@ietf.org>
List-Help: <mailto:rtcweb-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/rtcweb>, <mailto:rtcweb-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 23 Dec 2013 01:42:56 -0000

On Sun, Dec 22, 2013 at 8:22 PM, Ron <ron@debian.org> wrote:
> On Sun, Dec 22, 2013 at 05:28:27PM -0500, Eric Rescorla wrote:
>> To take a simple example, a number of phones do not have front-facing
>> cameras
>
> If they have a screen, they can still receive it, and might well expect
> to do so.  For that matter, they might even be prepared to stand in front
> of a mirror to send it :)


>> and also have processors that are incapable of doing an
>> adequate video call (especially if we select a codec for which they
>> don't have adequate hardware support).
>
> This would seem to be yet another argument for having a low complexity
> codec as the fallback MTI.

It is quite possible we will not standardize such a codec.


>  Given we've established almost no current
> device has adequate specialised hardware for any codec and will all
> need to be able to do it on its application processor anyway.
>
> Is there anything with a camera that doesn't have processing resources
> far greater than were used for video 20 years ago?
>
> What proportion of devices would struggle with VP8 or H.264 on their
> application CPU?

It's actually extremely expensive on low-end phones.


>> In that case, it might be reasonable to simply not offer video at all
>> on such devices.
>
> Which would be a surprising outcome for anyone expecting a device that
> can play them cat videos should also be able to give them video from a
> webrtc application as advertised.

You will note that many such devices use H.264 for precisely this reason.
I.e., they have hardware codecs.


>> In such a case, would it really make sense to call such devices
>> non-compliant for not implementing an MTI video codec that they
>> wouldn't negotiate in any case?
>
> Yes, it would.  Choosing not to provide video support where video is
> an integral part of the standard and something supported by the device
> is deliberate non-compliance.

What we are debating here is precisely whether video is or is not a
compliance requirement. You seem to be assuming that, I don't,
and as far as I know the specification language doesn't require
it. Can you please point to the relevant part of the specification
which requires implementations to offer to accept and/or send
video?


> That's quite different from just not doing the obviously impossible
> on obviously primitive devices.

"Obvious" is a difficult term here. Have you actually tried doing
VP8 video on low-end smartphones? I actually have and I can't
even tell you definitively which ones could eventually be made
to do acceptable video and which ones could not. How, exactly,
is that supposed to be "obvious" to the average consumer?



>> This seems like an orthogonal question to whether devices that do
>> video MUST do a given video codec.
>
> It doesn't seem like a very complicated question.  Justin's suggestion
> was an eminently sensible statement of the obvious.  If your device
> obviously can't ever do video at all, nobody is going to be surprised
> if the code for that doesn't happen to be there either.
>
> That's not in any way practically different from you not giving consent
> to enable the camera, and simply turning off your screen backlight.
> If you wanted those things you'd have bought a device with a screen and
> a camera.

I don't see any material difference between not having a screen and
not having enough CPU to do provide good quality video. And of
course since nearly all devices have some screen, we're now stuck
debating exactly what flavor of a device has a big enough screen
that it can support video. A watch? An ipod nano? A featurephone?


> But that's very different from having a device which does have a camera
> and/or screen and finding that its claim to support webrtc came with a
> big caveat emptor. I don't think we should be supporting a backdoor
> "No MTI" or "let the market decide" outcome through a loophole like this.

I don't find this very persuasive. If I'm the manufacturer of a device which
has a hard time doing acceptable video conferencing, I have three
choices:

1. Don't offer WebRTC at all.
2. Offer WebRTC audio only.
3. Offer WebRTC with lousy video;

You seem to want to argue that we should label anyone who does #2 as
noncompliant. I fail to see how that serves any useful interest, especially
given the extremely marginal value of "compliant" versus "noncompliant"
to the average consumer.

-Ekr