Re: [rtcweb] MTI Video Codec: a novel proposal

Daniel-Constantin Mierla <miconda@gmail.com> Mon, 10 November 2014 18:30 UTC

Return-Path: <miconda@gmail.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 43C801A6FF5 for <rtcweb@ietfa.amsl.com>; Mon, 10 Nov 2014 10:30:19 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.999
X-Spam-Level:
X-Spam-Status: No, score=-1.999 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, SPF_PASS=-0.001] 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 w7_U9eBzbUGq for <rtcweb@ietfa.amsl.com>; Mon, 10 Nov 2014 10:30:15 -0800 (PST)
Received: from mail-wi0-x22c.google.com (mail-wi0-x22c.google.com [IPv6:2a00:1450:400c:c05::22c]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 931FD1A700E for <rtcweb@ietf.org>; Mon, 10 Nov 2014 10:28:00 -0800 (PST)
Received: by mail-wi0-f172.google.com with SMTP id bs8so11309318wib.11 for <rtcweb@ietf.org>; Mon, 10 Nov 2014 10:27:58 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:reply-to:user-agent:mime-version:to:cc:subject :references:in-reply-to:content-type; bh=FEJ+FzUcyPDoJnqe22V9feOqChhOGi+iP/EnWLdH2YY=; b=NFXEQYF2/Fc3cY/O05wqx9DyxYRGFQSHjMXZ1XUrkIx987uiUKYUnOPpjjhkpjOKoi B1RF9FHK5G/SMs1T2hrIojD6pcYlQWPlFJQRRKGBaql4/8+o/YIsC1dK3Yx/0NYmaYLR fqeC1SLACNLSYzrfb+C55NqHTCmvUZjkCSQFUG6jd33fCTIHPwnIJRScZRJZNenSZjSA 5Wb088rHkzbm6GMvfNHBG8P6aQNCX44xn7JFXW5COPlVXKxHk2UeJ2ZROAECfqANKb+r VF7LC9gWtHyXDIoBChn1qVIpGAD0q+IiGT+vfc9UtutUcqEgoOZnlfv0J1/fZ+YyEvci Lrrw==
X-Received: by 10.181.13.208 with SMTP id fa16mr32334170wid.61.1415644078027; Mon, 10 Nov 2014 10:27:58 -0800 (PST)
Received: from [127.0.0.1] ([2a01:4f8:a0:638e::2]) by mx.google.com with ESMTPSA id ua8sm24174424wjc.7.2014.11.10.10.27.56 for <multiple recipients> (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 10 Nov 2014 10:27:57 -0800 (PST)
Message-ID: <546103AB.7040501@gmail.com>
Date: Mon, 10 Nov 2014 19:27:55 +0100
From: Daniel-Constantin Mierla <miconda@gmail.com>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:33.0) Gecko/20100101 Thunderbird/33.0
MIME-Version: 1.0
To: Tim Panton <tim@phonefromhere.com>
References: <54601E19.8080203@nostrum.com> <6689CD42-C046-45DE-9871-16538A799810@phonefromhere.com> <5460ECFE.4000900@gmail.com> <C1BE48EE-726C-42FC-B6B7-11BEFDD175DE@phonefromhere.com>
In-Reply-To: <C1BE48EE-726C-42FC-B6B7-11BEFDD175DE@phonefromhere.com>
Content-Type: multipart/alternative; boundary="------------020901030703000804030302"
Archived-At: http://mailarchive.ietf.org/arch/msg/rtcweb/gkk39QZWj3eBgXXCV8gnJ8SarIE
Cc: "rtcweb@ietf.org" <rtcweb@ietf.org>
Subject: Re: [rtcweb] MTI Video Codec: a novel proposal
X-BeenThere: rtcweb@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
Reply-To: miconda@gmail.com
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, 10 Nov 2014 18:30:19 -0000

On 10/11/14 18:40, Tim Panton wrote:
>
>> On 10 Nov 2014, at 16:51, Daniel-Constantin Mierla <miconda@gmail.com
>> <mailto:miconda@gmail.com>> wrote:
>>
>>
>> On 10/11/14 11:29, tim panton wrote:
>>> Adam, thanks for sticking you head above the parapet !
>>> I’m largely in favour of this solution, further, I think it
>>> represents the realities on the ground
>>
>> It looks more like the reality on the ground of a few groups of
>> interests (e.g, GSMA, telco vendors) trying to protect themselves. But
>> again, in the web/internet world I don't see the same reality, they must
>> stay competitive with features, not with restrictions or barriers to
>> potential competitors.
>
> On the subject of codecs, I discount the opinion of the GSMA utterly,
> they have had 10 years  to make video calling (and wideband audio)
> a desirable user proposition and have failed completely. 
>
> The realities I’m thinking of are the ones facing someone building a
> video enabled pet phone (for example). I can get H264 hardware very
> cheaply (eg a raspberry Pi) and have it communicate with an ios App
> or firefox on a laptop without any license (as far as I can tell).
> Getting the same setup to work with VP8 will consume significantly 
> more battery power at both ends.
>
> I wish this were not the case, but that’s the reality I see.

Very cheaply for one user, but can be very costly for a service or an
app distributed to the masses. Then it was not clear (unless I missed
some resolution on the topic during the summer) if you can rely on the
license given to the hardware.

Why not standardize the h264 and vp8 hardware control API, the
manufactures of hardware devices have to implement it and the app
developers have to use them?!? Then practically, the apps devs don't
need to mess with ipr of h264 or vp8 -- if there is hardware support
with appropriate API, then will be enabled.

>
>>
>> If something costly or with other restrictions is technically better or
>> improving the user experience a lot in some medium of communication,
>> then the developer of some app can decide to use/implement it. There is
>> no reason of enforcing limits and financial constraints to everyone in
>> open web via specs supposed to become standard.
>
> If we mandate both codecs for devices, I agree, we are imposing an
> unacceptable
> burden on everyone.
> However I’m doubtful that any entity who can afford to build a new
> w3c standards compatible browser will be unable to afford the (capped)
> h264 fee,

You can have one in minutes by making own built of firefox or chromium,
discarding the non-source-code licensed/copyrighted items such as logos,
icons, etc ... then tailor it for your specific needs (e.g., more
privacy, no automatic reports, etc.) The problem is that the new built
app doesn't have the financial power as the original one, but still
distributed to the masses in an uncontrollable way (e.g., linux distros,
with mirrors, etc.).

I already pointed that such cases exists already (e.g., debian). Also,
repeating, some those big browsers started as forks from rather small
and non-financial-powerful projects.

I see I missed to follow up on a previous discussion thread -- KHTML is
on more or less the same level with WebKit (which started as a fork of
the former, getting on board some extra libs), the browsers relies on
them as html/js engines. Now opera is using chorme html engine and
benefits of all webrtc features chrome has -- in reality they are still
different browsers with the specific features mainly related to
interaction to the users rather than the protocol or other specific
technical aspects (html/http).

> that’s simply a measure of how much work I think it is to do a new
> user agent now.
> So the penalty in terms of restricting new browser innovation is small
>  (IMHO)
> I’m much more worried about innovative devices.
>
>>
>> Rather than forcing now something inconvenient to be re-evaluated later
>> for removal, better don't force anything now and re-evaluate later for
>> inclusion. It will allow the market (besides the big players) to decide
>> freely where it wants to move. The current proposal looks like: let's
>> close the group now and later decide if we allow others in. Why not the
>> other way around, keep the market fully open for new comers now and see
>> what is going to be out there in few years, whether it makes sense to
>> start building the walls at that moment.
>
> That’s where we disagree. I really do not want to have to have a complex
> matrix of versions of my parrot phone that correctly interop with
> other devices and
> other pairings that don’t.
>
> (E.G. buy a new android tablet and our android app if you use chrome,
> but if you reuse
> an old ipad, you’ll have to use firefox).
>
> We need an MTI statement. If we don’t get one we will be stuck with little
> facetime-like islands again.

Otherwise we get stuck to some browsers that can vanish your
expectations on security.

And if there is a different set of requirements for a WebRTC device and
a WebRT UA, you still have to keep a matrix: it is working with Chrome,
but not working with X-Lite Communicator. I don't see an easy way to
explain to an end user that webrtc endpoints don't have same
capabilities on media.

There are benefits on having a MTI for video codec, but one that doesn't
impose any kind of restrictions, otherwise it brings more disadvantages
now and in long term.

Daniel

>>> better
>>> than any other proposal to date, as such it merits support.
>>>
>>> On 10 Nov 2014, at 02:08, Adam Roach <adam@nostrum.com
>>> <mailto:adam@nostrum.com>> wrote:
>>>
>>>> WebRTC devices MUST implement both VP8 and H.264. If compelling
>>>> evidence arises that one of the codecs is available for use on a
>>>> royalty-free basis, such as all IPR declarations known for the
>>>> codec being of (IETF) Royalty-Free or (ISO) type 1, the IETF will
>>>> change this normative statement to indicate that only that codec is
>>>> required. For absolute, crystal clarity, this provision is only
>>>> applicable to WebRTC devices, and not to WebRTC User Agents.
>>> I do have a slight qualm about the " ‘both’ or perhaps only ‘one’ “
>>> language above. I think irrespective of new data, there will
>>> always be devices who’s hardware or business model is best served by
>>> a specific codec, but that can meet every other requirement
>>> of a webRTC device.
>>>
>>> I feel the appropriate language here is ‘either’ , ensuring that
>>> every device can always interact with a user agent
>>> but that devices can’t necessarily communicate video between each
>>> other without a transcoding middle man.
>>>
>>> This leaves WebRTC-compatible endpoint as a category for things that
>>> implement neither video codec (e.g. audio only devices), or
>>> don’t implement the data channel because it isn’t relevant to their
>>> application domain or only implement SDES (etc) - This gives a
>>> clearer separation.
>>>
>>> This language choice matters most for developers who are selecting a
>>> native library to use when building a webRTC device. They need to
>>> know what is supported -  'WebRTC-compatible’ means that they have
>>> to look very carefully at all the missing features, WebRTC-device
>>> says that it will work with any user agent.
>>>
>>> With the current formulation there are no libraries that I know of
>>> suitable for building a webRTC device, making it an empty category.
>>>
>>> Tim.
>>>
>>> _______________________________________________
>>> rtcweb mailing list
>>> rtcweb@ietf.org <mailto:rtcweb@ietf.org>
>>> https://www.ietf.org/mailman/listinfo/rtcweb
>>
>> -- 
>> Daniel-Constantin Mierla
>> http://twitter.com/#!/miconda <http://twitter.com/#%21/miconda> -
>> http://www.linkedin.com/in/miconda
>>
>> _______________________________________________
>> rtcweb mailing list
>> rtcweb@ietf.org <mailto:rtcweb@ietf.org>
>> https://www.ietf.org/mailman/listinfo/rtcweb
>
> Tim Panton - Web/VoIP consultant and implementor
> www.westhawk.co.uk <http://www.westhawk.co.uk>
>
>
>

-- 
Daniel-Constantin Mierla
http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda
Kamailio Advanced Training, Nov 24-27, Berlin - http://www.asipto.com