Re: [rtcweb] Input to Video Codec Selection

Stephan Wenger <stewe@stewe.org> Sun, 03 March 2013 16:52 UTC

Return-Path: <stewe@stewe.org>
X-Original-To: rtcweb@ietfa.amsl.com
Delivered-To: rtcweb@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id D0C8421F8727 for <rtcweb@ietfa.amsl.com>; Sun, 3 Mar 2013 08:52:29 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -6.376
X-Spam-Level:
X-Spam-Status: No, score=-6.376 tagged_above=-999 required=5 tests=[AWL=2.222, BAYES_00=-2.599, GB_I_LETTER=-2, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-4]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id guBVIQ6PyplS for <rtcweb@ietfa.amsl.com>; Sun, 3 Mar 2013 08:52:28 -0800 (PST)
Received: from co9outboundpool.messaging.microsoft.com (co9ehsobe004.messaging.microsoft.com [207.46.163.27]) by ietfa.amsl.com (Postfix) with ESMTP id 2DDE121F8715 for <rtcweb@ietf.org>; Sun, 3 Mar 2013 08:52:28 -0800 (PST)
Received: from mail150-co9-R.bigfish.com (10.236.132.227) by CO9EHSOBE026.bigfish.com (10.236.130.89) with Microsoft SMTP Server id 14.1.225.23; Sun, 3 Mar 2013 16:52:27 +0000
Received: from mail150-co9 (localhost [127.0.0.1]) by mail150-co9-R.bigfish.com (Postfix) with ESMTP id 8563F360267; Sun, 3 Mar 2013 16:52:27 +0000 (UTC)
X-Forefront-Antispam-Report: CIP:157.56.240.133; KIP:(null); UIP:(null); IPV:NLI; H:BL2PRD0710HT001.namprd07.prod.outlook.com; RD:none; EFVD:NLI
X-SpamScore: -27
X-BigFish: PS-27(zzbb2dI98dI9371Ic85eh41c5N1447Izz1f42h1ee6h1de0h1202h1e76h1d1ah1d2ah1082kzz8275ch1033IL17326ah8275dh18c673h8275bhz2fh2a8h668h839hbe3he5bhf0ah1288h12a5h12bdh137ah1441h1504h1537h153bh162dh1631h1758h18e1h1946h19b5h1ad9h1155h)
Received-SPF: pass (mail150-co9: domain of stewe.org designates 157.56.240.133 as permitted sender) client-ip=157.56.240.133; envelope-from=stewe@stewe.org; helo=BL2PRD0710HT001.namprd07.prod.outlook.com ; .outlook.com ;
Received: from mail150-co9 (localhost.localdomain [127.0.0.1]) by mail150-co9 (MessageSwitch) id 1362329544743822_17441; Sun, 3 Mar 2013 16:52:24 +0000 (UTC)
Received: from CO9EHSMHS010.bigfish.com (unknown [10.236.132.226]) by mail150-co9.bigfish.com (Postfix) with ESMTP id A65B832008C; Sun, 3 Mar 2013 16:52:24 +0000 (UTC)
Received: from BL2PRD0710HT001.namprd07.prod.outlook.com (157.56.240.133) by CO9EHSMHS010.bigfish.com (10.236.130.20) with Microsoft SMTP Server (TLS) id 14.1.225.23; Sun, 3 Mar 2013 16:52:22 +0000
Received: from BL2PRD0710MB349.namprd07.prod.outlook.com ([169.254.2.145]) by BL2PRD0710HT001.namprd07.prod.outlook.com ([10.255.102.36]) with mapi id 14.16.0275.006; Sun, 3 Mar 2013 16:52:21 +0000
From: Stephan Wenger <stewe@stewe.org>
To: Harald Alvestrand <harald@alvestrand.no>, Gaelle Martin-Cocher <gmartincocher@blackberry.com>
Thread-Topic: [rtcweb] Input to Video Codec Selection
Thread-Index: AQHOFohSMw+r3b1CrUOO2rY1Kr1TypiRaTwAgADCggCAAX//gA==
Date: Sun, 3 Mar 2013 16:52:20 +0000
Message-ID: <CD58BCAF.95F6C%stewe@stewe.org>
In-Reply-To: <5131CD20.8060201@alvestrand.no>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [10.255.102.4]
Content-Type: multipart/alternative; boundary="_000_CD58BCAF95F6Cstewesteweorg_"
MIME-Version: 1.0
X-OriginatorOrg: stewe.org
Cc: "rtcweb@ietf.org" <rtcweb@ietf.org>
Subject: Re: [rtcweb] Input to Video Codec Selection
X-BeenThere: rtcweb@ietf.org
X-Mailman-Version: 2.1.12
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: Sun, 03 Mar 2013 16:52:29 -0000

Hi Harald,
Thanks for these candid answers.  I have a few comments, marked in blue and with StW:
Stephan

From: Harald Alvestrand <harald@alvestrand.no<mailto:harald@alvestrand.no>>
Date: Saturday, 2 March, 2013 01:57
To: Gaelle Martin-Cocher <gmartincocher@blackberry.com<mailto:gmartincocher@blackberry.com>>
Cc: "rtcweb@ietf.org<mailto:rtcweb@ietf.org>" <rtcweb@ietf.org<mailto:rtcweb@ietf.org>>
Subject: Re: [rtcweb] Input to Video Codec Selection


On 03/01/2013 11:21 PM, Gaelle Martin-Cocher wrote:

Dear All,

Further to Magnus email, while I assume there might not be "something new" to learn at the meeting, I believe the below requested clarifications on existing information would be useful.  Implementers should clearly know which license they can pick or get when it comes to VP8 and by which groups.  I believe answers in advance of the meeting would help the discussion at the meeting.

Questions 1 & 2:
It is assumed that in  the case of choosing VP8, RTCWeb would reference  the informational RFC 6386.

Yes, that is the intent.

Q1: Is there an intent to move that RFC to the standard track at a point in time?

No. I don't personally see any benefit in doing so at this time.

Q2: Would that change the rule of "who" is obliged to make an IPR declaration?

Speaking with my IETF-amateur-lawyer hat on (and as a former chair of the IPR WG): No, it does not change the rule. The rule depends on whether the technology in question is discussed in the IETF, not on the nature of the contribution. RFC 3979 section 6.1.2 refers to "Contribution", the definition of that term in RFC 3979 section 1 letter j makes it completely explicit that RFC Editor Contributions are covered by the term "Contribution".

StW; While this answer IMO correctly interprets the language of BCP79, you answer the question IMO to directly.  Therefore, the answer is somewhat misleading in it misses to mention an important point:

The main (sole?) purpose of an IETF WG is to facilitate consensus building, which necessarily involves more than one party, and those contributing to the discussions (belonging to more than one party) have a disclosure obligation.  To which extent there is real discussion and consensus building dependent from draft to draft and WG to WG, but there is at least some.

ISE submissions, like the draft that lead to RFC 6386, OTOH, are almost always NOT the result of a multiparty consensus building process.  Quite commonly, they involved only a small authors' group, often from the same company.  That's the case here.  No technical community input from IETF participants was received in an IETF context, no WG consensus was required, and the IESG "no conflict" statement is also no indication of IETF consensus.

Insofar, almost inevitably, the disclosure obligations for an ISE submission are different in practice.  In this case, it appears that only the authors (and perhaps the IESG members—I'm not clear on this point) had a disclosure obligation.  Which they fulfilled.
/StW


Question 3:
The IPR disclosure was made on the draft 2 of draft-bankoski-vp8-bitstream-02" as per https://datatracker.ietf.org/ipr/search/?option=rfc_search&rfc_search=6386
Draft 3 and onward contains the copyright license and the additional IP rights grant.
Q3: Is the initial IPR disclosure still valid?

Yes. RFC 3979 section 6.2.1.

   The IPR disclosure required pursuant to section 6.1.1 must be made as
   soon as reasonably possible after the Contribution is published in an
   Internet Draft unless the required disclosure is already on file.
   For example, if the Contribution is an update to a Contribution for
   which an IPR disclosure has already been made and the applicability
   of the disclosure is not changed by the new Contribution, then no new
   disclosure is required.


Question 4:
The informational RFC 6386 contains the decoder code and some piece of encoder code.
Though the IP rights grant mentioned in the RFC is offered against:

   "This implementation" means the copyrightable works distributed by
   Google as part of the WebM Project."

Q4: As such the  IP rights grant does not seem to apply to the RFC itself or to an implementation of the code contained in the RFC.  Should that be corrected or is that the intent?

Speaking with WEBM hat on:

There are two grants - the grant of license to copyrighted works, and the grant of license to patented technology.

Software license: http://www.webmproject.org/license/software/ - classical 3-clause BSD.
Patent license 1: http://www.webmproject.org/license/bitstream/ - covers any implementation that produces or consumes VP8 bitstreams.
Patent license 2: http://www.webmproject.org/license/additional/ - covers usage of the implementation.



Question 5:
The additional IP grant is applied to a particular implementation (namely the WebM VP8 code) without modifications.
Any derivative work either:
- produced from the reference code in WebM (that is a possible optimized version of it); or
- produced from the RFC text or the code provided within the RFC (while not using the WebM code)
does not have the benefit of the additional IP grant.
In other words a conformant implementation does not necessarily have the benefit of the additional IP grant.
I am not confident that the VP8 code can be used "as is" for certain platforms. I would think that the code might need some modification to provide the desired performance. In other words, it should be clear that those implementers would not necessarily receive the benefit of that grant.
If the answer to Q3 is negative, then there is no IP license statement at all that applies to a "conformant implementation of the RFC" (aka a derivative work).
If the answer to Q3 is positive, it is not clear  how to reconcile the declaration inside the RFC and the declaration that is attached to the the RFC draft for implementers that would not modify the code.
Q5: Can this be clarified or confirmed?

All 3 of the pages referred to above permit the production of derivative works. Quoth:

- bitstream: " ... license to make, have made, use, offer to sell, sell, import, and otherwise transfer implementations of this specification" (whether derived from the example code or not)
- copyright: ".... Redistribution and use in source and binary forms, with or without modification, are permitted provided that.."
- patent: "... patent license to make, have made, use, offer to sell, sell, import, transfer, and otherwise run, modify and propagate the contents of this implementation"

I believe there should be no issue here; modification is permitted.


Question 6:
The IPR disclosure in IETF is different than the IPR statement made in MPEG (see document sent by Harald earlier).
Q6: the differences in license statement and IP grant referring to WebM code are rather confusing. Can it be clarified which license, copyright, grant are provided for RFC 6386?

The statement we made in MPEG was crafted to be as similar to others' statements made in MPEG as possible, in order to respect MPEG's legal language traditions - which in turn should minimize the need for clarification of what was granted when discussing with people used to the MPEG language tradition.

We believe that the statement made in MPEG is wholly within the statements made on the WEBM website - all permissions implied by the statement in MPEG should also be permitted by the statements on the WEBM website. We haven't tried to analyze whether there are cases where someone can do something within the permissions granted on the WEBM website that would not be permitted under the MPEG statement - the MPEG statement was aimed to allow the document to progress within MPEG; people who want to read the



In conclusion, before advancing this draft, or considering it as a candidate for RTCWeb,  consistency and clarity should be ensured between the IPR grant associated with the IETF draft, the IPR grants within the IETF draft document itself, the IPR grant given for MPEG, and any IPR grant given in connection with the WEBM project for this same work.  Otherwise, the IPR status of the work that is undertaken is indeterminate, and likely will not produce a result that will be useful.

Speaking with my Google hat on:

We will of course seek maximum clarity of the statements we make. Unfortunately, different organizations have different traditions on how these things should be worded, and we cannot guarantee that there can't be differences in interpretation.

However, I (speaking with my personal hat on) think the current statements on the WEBM website are pretty clear. I have yet to see a concrete scenario where there would be any reasonable doubt about whether usage of VP8 is permitted by Google or not - and in all cases except for those that fall within the defensive suspension exceptions, it is permitted.

Hope that helps!

           Harald