Re: [rtcweb] Straw Poll on Video Codec Alternatives

Steve McFarlin <steve@tokbox.com> Mon, 16 December 2013 20:10 UTC

Return-Path: <steve@tokbox.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 86AC51AC829 for <rtcweb@ietfa.amsl.com>; Mon, 16 Dec 2013 12:10:20 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.599
X-Spam-Level:
X-Spam-Status: No, score=-2.599 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, 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 hLJQjoeIIJJk for <rtcweb@ietfa.amsl.com>; Mon, 16 Dec 2013 12:10:15 -0800 (PST)
Received: from mail-pa0-f49.google.com (mail-pa0-f49.google.com [209.85.220.49]) by ietfa.amsl.com (Postfix) with ESMTP id F341D1AC862 for <rtcweb@ietf.org>; Mon, 16 Dec 2013 12:10:14 -0800 (PST)
Received: by mail-pa0-f49.google.com with SMTP id kx10so3377270pab.8 for <rtcweb@ietf.org>; Mon, 16 Dec 2013 12:10:14 -0800 (PST)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:content-type:message-id:mime-version :subject:date:references:to:in-reply-to; bh=E2GEEjt4UOkITSPebzVNFYbBBjC+WhrjoEoyWlAWBps=; b=LTHdn+1UGt4layGnpfU5zxD8+P34Nqjc0BcWAUWSaFeDpJlH0ad1z7YNHlaqjiGj0A BKzvJjB6olKGVTnbMAY1hbdtJbHvYgK8e/LB13q+krFZ2hEuHTtJi0W/ii/skLYaqiZ1 LZnRKtev7lE+8EZW/RdoWuwTHj29pQ8YkSUkn8Pv/vikXKqygQo+vyFGD2/fTKnOdWDe nZxAgVUx7427JylYjMdgW/HZrwaG/6w5096XfMW5VOozGIsQ1aK6vaCuWPEoZ3StMEz1 Jopd6Yn2+585lsxSrrkPFQKzKvhau+TZ5v2pJtQv2PqhuhbpmJ7xeOYmvFnI9jHcfEst 9ffQ==
X-Gm-Message-State: ALoCoQkTvWS8yDoVY0o0LhFPTRl6ue4yLBwUVoEnkx7eyoZ3jxRdcyICWkMsodI3cihzkQIH7jr4
X-Received: by 10.67.21.226 with SMTP id hn2mr22662862pad.69.1387224613118; Mon, 16 Dec 2013 12:10:13 -0800 (PST)
Received: from [192.168.10.207] (ginger.tokbox.com. [216.38.134.117]) by mx.google.com with ESMTPSA id bp5sm28482466pbb.18.2013.12.16.12.10.10 for <rtcweb@ietf.org> (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Mon, 16 Dec 2013 12:10:11 -0800 (PST)
From: Steve McFarlin <steve@tokbox.com>
Content-Type: multipart/alternative; boundary="Apple-Mail=_D0B48DEC-D805-4985-ABEC-753B684C1EAA"
Message-Id: <CC5B9561-27EE-4F80-ACC1-A4018638E524@tokbox.com>
Mime-Version: 1.0 (Mac OS X Mail 6.5 \(1508\))
Date: Mon, 16 Dec 2013 12:10:11 -0800
References: <CA+9kkMBSpDLJBBbPxgyMUi+bi3aw3D8zpSXcAvQ4koi115QqBg@mail.gmail.com>
To: rtcweb@ietf.org
In-Reply-To: <CA+9kkMBSpDLJBBbPxgyMUi+bi3aw3D8zpSXcAvQ4koi115QqBg@mail.gmail.com>
X-Mailer: Apple Mail (2.1508)
Subject: Re: [rtcweb] Straw Poll on Video Codec Alternatives
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, 16 Dec 2013 20:10:20 -0000

Weighted opinions are purely mine, and not that of my employer. I am not taking Cisco's gift into consideration. While it is generous and useful for some, the license 'hack' forces the installation of the library on the end user machine/device. This is not feasible on some platforms. 
 
> All entities MUST support H.264
> Are you in favor of this option [Yes/No/Acceptable]:

No.

> 
> Do you have any objections to this option, if so please summarize them:

Not all platforms expose access to a hardware or software encoder. If every feasible platform exposed H.264 API's then my reply would be "Acceptable 0.4". I also feel the IPR burden is too much on smaller players implementing MCU's.

> All entities MUST support VP8
> Are you in favor of this option [Yes/No/Acceptable]:

Yes.

> 
> Do you have any objections to this option, if so please summarize them:

While I don't like putting my faith with other companies when it comes to IPR, I truly believe that Google will in good faith deal with any IPR issues that arise in the future. I think the gamble is an acceptable risk.

> All entities MUST support both H.264 and VP8
> Are you in favor of this option [Yes/No/Acceptable]:

Acceptable (0.3)

> 
> Do you have any objections to this option, if so please summarize them:

While I still think the IPR on 264 is a burden, I think this is acceptable with respect to the browser space. My only concern is this option might just fragment/split the webrtc space with conforming and non conforming implementations. If selected I full expect FOSS implementations to be mostly VP8. With this said as long as the major players (browsers) implement both, then any custom non conforming RTC stack will still work in most cases.

There is still 264 IPR issues on conforming MCU's that do any coding tasks with the 264 data. There are also IPR issues related to broadcasting and the sale of H.264 content, but those are obviously outside the scope of this discussion.

> Browsers MUST support both H.264 and VP8, other entities MUST support at least one of H.264 and VP8
> Are you in favor of this option [Yes/No/Acceptable]:

Acceptable (0.8)

> 
> Do you have any objections to this option, if so please summarize them:

There is still 264 IPR issues on MCU's that do any coding tasks with the 264 data. There are also IPR issues related to broadcasting and the sale of H.264 content, but those are obviously outside the scope of this discussion.

> All entities MUST support at least one of H.264 and VP8
> Are you in favor of this option [Yes/No/Acceptable]:

No

> 
> Do you have any objections to this option, if so please summarize them:

This only makes sense if we want to 'see who wins'. Given the division amongst many people I suspect we would see more 244 xor VP8 implementations then ones with both.

> All entities MUST support H.261
> Are you in favor of this option [Yes/No/Acceptable]:

No

> 
> Do you have any objections to this option, if so please summarize them:

While the video is usable, it just can't compete in the modern video communications space.

> There is no MTI video codec
> Are you in favor of this option [Yes/No/Acceptable]:

Acceptable (0.1)

> 
> Do you have any objections to this option, if so please summarize them:

If no consensus is made on any other option then I see no other choice. This group needs to move forward at some point.

> All entities MUST support H.261 and all entities MUST support at least one of H.264 and VP8
> Are you in favor of this option [Yes/No/Acceptable]:

Acceptable (0.3)

> 
> Do you have any objections to this option, if so please summarize them:

I really don't like the fallback to 261. It is just not a good codec.

> All entities MUST support Theora
> Are you in favor of this option [Yes/No/Acceptable]:

Acceptable (0.2)

> 
> Do you have any objections to this option, if so please summarize them:

While better than 261, I feel having at least one modern codec as a MUST is better than this.

> All entities MUST implement at least two of {VP8, H.264, H.261}
> Are you in favor of this option [Yes/No/Acceptable]:

Acceptable (0.4)

> 
> Do you have any objections to this option, if so please summarize them:

I really don't like 261. It is not a good codec for modern video communications.

> All entities MUST implement at least two of {VP8, H.264, H.263}
> Are you in favor of this option [Yes/No/Acceptable]:

No.

> 
> Do you have any objections to this option, if so please summarize them:

As far as I am aware 263 still has IPR issues. This just forces compliant stacks into a possible IPR violation issue.

> All entities MUST support decoding using both H.264 and VP8, and MUST support encoding using at least one of H.264 or VP8
> Are you in favor of this option [Yes/No/Acceptable]:

No.

> 
> Do you have any objections to this option, if so please summarize them:

While I think the risk of an IPR suite for disturbing a H.264 decoder is small, I would not put it past some NPE popping up and forcing you to visit that lovely court in Texas. The visit alone would put any small player instantly out of business assuming they did not 'pay the fee'. This option in a IETF spec just makes it that much easier for a NPE or IPR holder to select targets.

> All entities MUST support H.263
> Are you in favor of this option [Yes/No/Acceptable]:

No

> 
> Do you have any objections to this option, if so please summarize them:

Possible IPR issues. Not a modern codec. (I understand VP8 and 264 are not modern codecs per say, but at least they are 'more' modern than 263).

> All entities MUST implement at least two of {VP8, H.264, Theora}
> Are you in favor of this option [Yes/No/Acceptable]:

Acceptable (0.6)

> 
> Do you have any objections to this option, if so please summarize them:

Theora is a better quality codec than 261, and does not have any possible IPR issues that 263 has. I am not sure of the IPR status of Theora, and I don't ever recall seeing someone sued for it. Then again maybe there has never been a big enough target for anyone who thinks they have IPR on Theora from coming forward. I would personally be willing to take a risk on the much more than 263 or distributing a 264 decoder.

> All entities MUST support decoding using Theora.
> Are you in favor of this option [Yes/No/Acceptable]:

No

> 
> Do you have any objections to this option, if so please summarize them:

Maybe I have not had enough or had too much coffee today, but I don't see the logic in this option at the moment.

> All entities MUST support Motion JPEG
> Are you in favor of this option [Yes/No/Acceptable]:

No No No.

> 
> Do you have any objections to this option, if so please summarize them:

I understand the need to enumerate all options, but this just has so much FAIL attached to it. Do we really need interop with old Canon network cams (lol)? On the positive side I think Firefox still supports motion JEPG streaming as a relic from the Netscape implementation back in 96 (or earlier). Kidding aside, this will be way too bandwidth intensive to achieve good quality video.