Re: [video-codec] Charter issues from BoF

"Timothy B. Terriberry" <tterribe@xiph.org> Wed, 05 December 2012 01:10 UTC

Return-Path: <tterribe@xiph.org>
X-Original-To: video-codec@ietfa.amsl.com
Delivered-To: video-codec@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id CFF1D21F8BED for <video-codec@ietfa.amsl.com>; Tue, 4 Dec 2012 17:10:40 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.577
X-Spam-Level:
X-Spam-Status: No, score=-2.577 tagged_above=-999 required=5 tests=[AWL=0.100, BAYES_00=-2.599, HELO_MISMATCH_ORG=0.611, HOST_MISMATCH_COM=0.311, RCVD_IN_DNSWL_LOW=-1]
Received: from mail.ietf.org ([64.170.98.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id r+0dlw1sw9Xd for <video-codec@ietfa.amsl.com>; Tue, 4 Dec 2012 17:10:39 -0800 (PST)
Received: from smtp.mozilla.org (mx1.corp.phx1.mozilla.com [63.245.216.69]) by ietfa.amsl.com (Postfix) with ESMTP id C9C6621F8BEA for <video-codec@ietf.org>; Tue, 4 Dec 2012 17:10:39 -0800 (PST)
Received: from [10.250.6.54] (unknown [63.245.220.240]) (Authenticated sender: tterriberry@mozilla.com) by mx1.mail.corp.phx1.mozilla.com (Postfix) with ESMTPSA id B83CCF211F for <video-codec@ietf.org>; Tue, 4 Dec 2012 17:10:38 -0800 (PST)
Message-ID: <50BE9F0E.7070304@xiph.org>
Date: Tue, 04 Dec 2012 17:10:38 -0800
From: "Timothy B. Terriberry" <tterribe@xiph.org>
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:13.0) Gecko/20120626 SeaMonkey/2.10.1
MIME-Version: 1.0
To: video-codec@ietf.org
References: <20121106112625.2btpoxrylcgg8w4c@kizuka.merseine.nu> <509AC2B4.3010406@wonderhamster.org> <20121107153423.d93rypvha8w480wc@kizuka.merseine.nu> <50AAC17E.5000208@wonderhamster.org>
In-Reply-To: <50AAC17E.5000208@wonderhamster.org>
Content-Type: text/plain; charset="UTF-8"; format="flowed"
Content-Transfer-Encoding: 7bit
Subject: Re: [video-codec] Charter issues from BoF
X-BeenThere: video-codec@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Video codec BoF discussion list <video-codec.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/video-codec>, <mailto:video-codec-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/video-codec>
List-Post: <mailto:video-codec@ietf.org>
List-Help: <mailto:video-codec-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/video-codec>, <mailto:video-codec-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 05 Dec 2012 01:10:41 -0000

Spencer Dawkins wrote:
> I'm not seeing a problem yet for this proposed working group, but I am
> remembering that "the Internet" covers a LOT of different points in the
> "speed/delay/reliability" space, from interconnected data centers to
> environments that are slightly better-connected than DTNRG networks :-)
> ... it would be great to be clear on what environments are being targeted.

This is good advice. My primary interest is public, consumer-level, 
best-effort networks (i.e., where people run browsers). I can try to add 
some language to the charter to that effect if no one objects to that 
being the focus.

> program. I'd love for a chartered videocodec working group to have a
> good plan for liaison relationships, and I say that without reference to
> any other IETF working group having, or not having, a good plan for
> liaison relationships :-)

I've been approached by a couple of people from the MPEG IVC effort who 
think that we can do better than liaison-style collaboration, but I'm 
not sure what the best approach is here, yet. I will try to encourage 
them to post their thoughts on the list.

> I'd suggest the proposed working group community discuss whether it's
> worth producing a video codec that is known to not be RF, early in the
> process.

There is some difficulty in deciding what "known to not be RF" means. 
Some people would take the existence of an IPR disclosure---any IPR 
disclosure---that does not make that IPR available under RF terms to be 
an indication that the work is not RF... and in the case that the 
disclosure is by the author of the technique in question, this is very 
compelling. Other people are willing to investigate the real risk 
associated with those disclosures, evaluate the effectiveness of 
design-arounds (which do not incur an obligation to update that 
disclosure), etc.

Experience with Opus suggests to me that this should be handled by WG 
consensus on a case-by-case basis, instead of with an iron-clad rule in 
the charter. This was discussed a fair bit at the bar BoF in Vancouver, 
and the "developed under the IPR rules of the IETF" language that's 
currently in the charter was strongly suggested to me as the best way to 
phrase this.

Speaking personally, I would not support publishing as an RFC any codec 
that I did not believe was RF.

> I'm not saying that I have an opinion about "one codec or many", I'm
> saying it would be helpful to understand whether one codec could meet
> the need for a codec that's "optimized for the Internet", before
> deciding whether to produce more than one codec.

I think it can. The biggest challenge comes in deciding whether or not 
to support coding tools that are not robust in the face of packet loss. 
This includes, for example, anything which makes decisions about what 
values to read from the bitstream based on the decoded, reconstructed 
pixels. In the presence of loss, making one of those decisions 
incorrectly would corrupt the rest of the frame.

To illustrate this, one of the items mentioned in the VP9 presentation 
included scoring candidate motion vectors by matching the 
(already-decoded) edge pixels from neighboring blocks to the reference 
frame at the same offset. I believe this is okay in its current form, 
because the codebook used to decode the motion vector residual has no 
dependency on the value of the MV being used as a predictor. But if we 
wanted to use a scheme that _did_ depend on that value, we'd have to 
give up the ability to look at those pixels in neighboring blocks. I've 
had in mind for a while now a coding scheme which allows you to code a 
MV relative to two different predictors, but unlike the normal approach 
of "code which predictor is closer, and then code an offset relative to 
that predictor," doesn't introduce any redundancy in the coding. This 
depends on exactly what those two predictors are (consider the case 
where they're the same, for example), so it wouldn't be compatible with 
this VP9 technique for deriving the list of predictors.

But even in this case, we could pick which of the two approaches works 
better on average, or even allow both techniques to be used, and switch 
between them. Video frames have enough bits to make this kind of 
switching at the frame or even smaller levels quite practical, and you 
could pick up quite a lot of alternate algorithms like this before it 
made sense to give up all the things that _are_ common in the two use 
cases and have two completely separate codecs.

> If I'm understanding what other people are saying, I'm not hearing "need
> old technology where patents have expired" as a strategy for video
> codecs, but It might be helpful for the proposed working group community
> to be clear on how much new technology people are planning to define,
> early on.

I think we should be doing both things. If you look carefully at some of 
the drafts that have already been submitted, you'll see some of the 
references are _very_ old. There's a lot of research out there that's 
been around for a long time, but never made it into a widely deployed 
codec. Sometimes that's for very good reasons. Sometimes it's because 
design decisions which were important at the time have become less so as 
Moore's law has changed the best operating point on the chip area/clock 
speed/power usage frontier. Sometimes it's because the technique 
introduced practical problems which are solvable, but no one ever 
attempted to solve them.

We (Mozilla) are also exploring ways we can actually publish solid 
information about why we think the the codec will be royalty-free (once 
it is finished). As you may know, it is normally not in our interest to 
do so (it is basically mapping out your defense, or at least part of it, 
to any potential litigants), but it may wind up being worth the trade-off.

> I hope this is helpful. And again, I think the important thing is that
> the proposed working group community take Cullen's suggestions
> seriously, more than what the community decides about them.

I think this (and Cullen's feedback generally) has been very helpful. I 
hope to submit an updated version of the charter incorporating a bunch 
of the feedback received thus far before next week.