[video-codec] Charter update

"Timothy B. Terriberry" <tterribe@xiph.org> Wed, 02 January 2013 06:36 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 C902E21F8FBB for <video-codec@ietfa.amsl.com>; Tue, 1 Jan 2013 22:36:54 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.677
X-Spam-Level:
X-Spam-Status: No, score=-1.677 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, GB_AFFORDABLE=1, 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 TMHUaxwMkLbW for <video-codec@ietfa.amsl.com>; Tue, 1 Jan 2013 22:36:53 -0800 (PST)
Received: from smtp.mozilla.org (mx2.corp.phx1.mozilla.com [63.245.216.70]) by ietfa.amsl.com (Postfix) with ESMTP id 278A121F8FAE for <video-codec@ietf.org>; Tue, 1 Jan 2013 22:36:53 -0800 (PST)
Received: from [192.168.11.8] (pool-71-114-8-24.washdc.dsl-w.verizon.net [71.114.8.24]) (Authenticated sender: tterriberry@mozilla.com) by mx2.mail.corp.phx1.mozilla.com (Postfix) with ESMTPSA id 972E9F20F2; Tue, 1 Jan 2013 22:36:50 -0800 (PST)
Message-ID: <50E3D581.8070405@xiph.org>
Date: Tue, 01 Jan 2013 22:36:49 -0800
From: "Timothy B. Terriberry" <tterribe@xiph.org>
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:13.0) Gecko/20120625 SeaMonkey/2.10.1
MIME-Version: 1.0
To: video-codec@ietf.org
Content-Type: multipart/mixed; boundary="------------000502080802080707030707"
Cc: Rob Glidden <rob.glidden@sbcglobal.net>
Subject: [video-codec] Charter update
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, 02 Jan 2013 06:36:54 -0000

Slightly later than I'd hoped, here is an updated version of the 
proposed charter, based on feedback from the list and during the BoF. 
The major changes are

- Clarify that HTTP streaming should support both progressive and 
chunked downloads.
- Added some examples of what "optimized for the Internet" means.
- Clarified that the we only intend to produce one codec.
- Added a goal to be suitable for use with various Internet applications 
and Web APIs.
- Unified language about the ITU and ISO.
- Removed the suggestion that we would ask other SDOs if one of their 
existing codecs satisfies all of our requirements and goals.
- Added a statement that we should not produce an RFC if there is 
consensus that the codec cannot "be widely implemented and easily 
distributed among application developers, service operators, and end users."
- Moved the reference implementation into a separate deliverable
- Added a deliverable for a test results document
- Minor editorial changes.

I think there is still work to do on the language about interacting with 
other SDOs. However, I have not gotten any response to my Nov. 6th 
request [1] for specific language that people want to see here. Rob, any 
suggestions would be welcome.

[1] http://www.ietf.org/mail-archive/web/video-codec/current/msg00064.html

The full text of the proposed charter follows. A full diff from the 
previous version is attached.


Problem Statement

According to reports from developers of Internet video applications and 
operators of Internet video services, there is no standardized, 
high-quality video codec that meets all of the following three conditions:

1. Is optimized for use in interactive Internet applications.

2. Is published by a recognized standards development organization (SDO) 
and therefore subject to clear change control and IPR disclosure rules.

3. Can be widely implemented and easily distributed among application 
developers, service operators, and end users.

There exist codecs that provide high quality encoding of video 
information, but that are not optimized for the actual conditions of the 
public, consumer-level, best-effort Internet. Such optimizations might 
include fast and flexible congestion control, such as the ability to 
change resolution without sending a keyframe; a simple means of handling 
packet loss in the face of reference frame re-ordering; the ability to 
join broadcast streams without waiting for a keyframe; special coding 
tools for screen captures to support remote services and desktop 
sharing; and many more. According to reports, this mismatch between 
design and deployment has hindered performance and interoperability of 
such codecs in Internet applications.

There exist codecs that can be widely implemented, but were not 
developed under the IPR rules of any SDO; according to reports, the lack 
of clarity in their IPR status has hindered adoption of such codecs in 
Internet applications.

There exist codecs that are standardized, but that cannot be widely 
implemented and easily distributed; according to reports, the presence 
of various usage restrictions (e.g., in the form of requirements to pay 
royalty fees, obtain a license, enter into a business agreement, or meet 
other special conditions imposed by a patent holder) has hindered 
adoption of such codecs in Internet applications.

According to application developers and service operators, a video codec 
that meets all three of these conditions would: (1) enable protocol 
designers to more easily specify a mandatory-to-implement codec in their 
protocols and thus improve interoperability; (2) enable developers to 
more easily build innovative applications for the Internet; (3) enable 
service operators to more easily deploy affordable, high-quality video 
services on the Internet; and (4) enable end users of Internet 
applications and services to enjoy an improved user experience.

Objectives

The goal of this working group is to ensure the existence of a single 
high-quality video codec that can be widely implemented and easily 
distributed among application developers, service operators, and end 
users. At present it appears that ensuring the existence of such a codec 
will require a development effort within the working group.

The core technical considerations for such a codec include, but are not 
necessarily limited to, the following:

1. Designing for use in interactive applications (examples include, but 
are not limited to, point-to-point video calls, multi-party video 
conferencing, telepresence, teleoperation, and in-game video chat).

2. Addressing the real transport conditions of the Internet, such as the 
flexibility to rapidly respond to changing bandwidth availability and 
loss rates, or as otherwise identified and prioritized by the working group.

3. Ensuring interoperability and clean integration with the Real-time 
Transport Protocol (RTP), including secure transport via SRTP.

4. Ensuring interoperability with Internet signaling technologies such 
as Session Initiation Protocol (SIP), Session Description Protocol 
(SDP), and Extensible Messaging and Presence Protocol (XMPP). However, 
the result should not depend on the details of any particular signaling 
technology.

5. Ensuring suitability for use in Internet applications and Web APIs, 
such as the HTML5 <video> tag, live streaming (e.g., via icecast), 
adaptive streaming (e.g., Dynamic Adaptive Streaming over HTTP (DASH), 
HTTP Live Streaming (HLS), etc.), the MediaSource API, the WebRTC APIs, 
proposed web recording APIs, and so on. However, the result should not 
depend on the details of any particular API.

Optimizing for very low bit rates (typically below 64 kbps) is out of 
scope because such work might necessitate specialized optimizations.

In addition to the technical objectives, there is one process goal, which is

6. Ensuring the work is done under the IPR rules of the IETF.

Although a codec produced by this working group or another standards 
organization might be used as a mandatory-to-implement technology by 
designers of particular Internet protocols, it is explicitly not a goal 
of the working group to produce a codec that will be mandated for use 
across the entire IETF or Internet community nor would their be any 
expectation that this would be the only mandatory-to-implement codec.

Based on the working group's analysis of the design space, the working 
group might determine that it needs to produce a codec with multiple 
modes of operation. However, it is not the goal of working group to 
produce more than one codec.

In completing its work, the working group should collaborate with other 
IETF working groups to complete particular tasks. These might include, 
but would not be limited to, the following:

- Within the AVT WG, define the codec's payload format for use with the 
Real-time Transport Protocol (RTP).

- Collaborate with RMCAT and any other appropriate working groups in the 
Transport Area to identify important aspects of packet transmission over 
the Internet.

- Collaborate with RMCAT to understand the degree of rate adaptation 
desirable, and to reflect that understanding in the design of a codec 
that can adjust its transmission in a way that minimizes disruption to 
the video.

- Collaborate with working groups in the RAI Area to ensure that 
information about and negotiation of the codec can be easily represented 
at the signaling layer.

- Collaborate with working groups in the RAI Area such as CLUE and 
RTCWEB to ensure the codec can satisfy all of their video-related use cases.

The working group will coordinate with the ITU-T (Study group 16) and 
ISO/IEC (JTC1/SC29 WG11), with the intent of submitting the completed 
codec RFC for co-publication by the ITU-T and ISO if they find that 
appropriate. Information about codecs being standardized, including a 
detailed description of the requirements and goals, will be available to 
other SDOs in the form of Internet-Drafts and the working group welcomes 
technical feedback from other SDOs and experts from other organizations.

The Guidelines for Development of an Audio Codec within the IETF (RFC 
6569) will form the starting point for guidelines and requirements for 
achieving the forgoing objectives for video. The working group will 
modify them as necessary with lessons learned during that process (for 
example, specifying the use of English text as the normative definition 
of the codec instead of source code), refining them into a new document 
in accordance with the usual IETF procedures once consensus has been 
achieved.

A codec that can be widely implemented and easily distributed among 
application developers, service operators, and end users is preferred. 
Many existing codecs that might fulfill some or most of the technical 
attributes listed above are encumbered in various ways. For example, 
patent holders might require that those wishing to implement the codec 
in software, deploy the codec in a service, or distribute the codec in 
software or hardware need to request a license, enter into a business 
agreement, pay licensing fees or royalties, or attempt to adhere to 
other special conditions or restrictions.

Because such encumbrances have made it difficult to widely implement and 
easily distribute high-quality video codecs across the entire Internet 
community, the working group prefers unencumbered technologies in a way 
that is consistent with BCP 78 and BCP 79. In particular, the working 
group shall heed the preference stated in BCP 79: "In general, IETF 
working groups prefer technologies with no known IPR claims or, for 
technologies with claims against them, an offer of royalty-free 
licensing." Although this preference cannot guarantee that the working 
group will produce an unencumbered codec, the working group shall follow 
BCP 79, and adhere to the spirit of BCP 79. The working group cannot 
explicitly rule out the possibility of adopting encumbered technologies; 
however, the working group will try to avoid encumbered technologies 
that require royalties or other encumbrances that would prevent such 
technologies from being easy to redistribute and use. The working group 
should not proceed with publication of a codec RFC if there is consensus 
that it cannot "be widely implemented and easily distributed among 
application developers, service operators, and end users."

Deliverables

1. A set of Codec Standardization Guidelines that define the work 
processes of the working group. This document shall be Informational.

2. A set of technical Requirements. This document shall be Informational.

3. Specification of a codec that meets the agreed-upon requirements, in 
the form of an Internet-Draft that defines the codec algorithm. The text 
description of the codec shall describe the mandatory, recommended, and 
optional portions of the encoder and decoder. It is envisioned that this 
document shall be a Proposed Standard document.

4. A reference implementation of a software encoder and decoder. This 
will be in a separate document from the text description to allow it to 
be updated independently. It does not need to be standards-track.

5. Specification of a storage format for file transfer of the codec, to 
support non-interactive (HTTP) streaming, including live encoding and 
both progressive and chunked downloads. It is envisioned that this 
document shall be a Proposed Standard document.

6. A collection of test results, either from tests conducted by the 
working group or made publicly available elsewhere, characterizing the 
performance of the codec. This document shall be informational.

Goals and Milestones
TBD  WGLC on codec standardization guidelines
TBD  WGLC on requirements, liaise to other SDOs
TBD  Requirements to IESG (Informational)
TBD  Liaise requirements RFC to other SDOs
TBD  Codec standardization guidelines to IESG (Informational)
TBD  WGLC on codec specification, liaise to other SDOs
TBD  WGLC on reference implementation, liaise to other SDOs
TBD  Submit codec specification to IESG (Standards Track)
TBD  Submit reference implementation to IESG (Informational)
TBD  WGLC on storage format specification
TBD  Submit storage format specification to IESG (Standards Track)
TBD  WGLC on Testing document
TBD  Testing document to IESG