Re: [rtcweb] [payload] VP8 payload, decoder processing capabilities (was Re: Resolution negotiation - a contribution)
"Cullen Jennings (fluffy)" <fluffy@cisco.com> Mon, 25 March 2013 14:53 UTC
Return-Path: <fluffy@cisco.com>
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 336F511E80DF; Mon, 25 Mar 2013 07:53:33 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -109.399
X-Spam-Level:
X-Spam-Status: No, score=-109.399 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, J_CHICKENPOX_110=0.6, J_CHICKENPOX_19=0.6, RCVD_IN_DNSWL_HI=-8, USER_IN_WHITELIST=-100]
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 RQxQx8qI3Tt5; Mon, 25 Mar 2013 07:53:32 -0700 (PDT)
Received: from rcdn-iport-2.cisco.com (rcdn-iport-2.cisco.com [173.37.86.73]) by ietfa.amsl.com (Postfix) with ESMTP id C05C511E80C5; Mon, 25 Mar 2013 07:53:31 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=5760; q=dns/txt; s=iport; t=1364223212; x=1365432812; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-id:content-transfer-encoding: mime-version; bh=vjYnUk1lutMBXRYCTgPbkatxsentgrAmCwLoN4T1OGM=; b=XCcFScQRqFCwHdP/cTX0B6xA0BUwChs4olE2UnTI9iD/uaQOZWmREDME KGplZAaECv2toehB30BZfXqNVveIfauRCvnvuk1mII0te14K+i6lduvUV OHCzzSLdBq+yoXs+ZrogcNJnp0wf80mg4kpm6H+8ZxdnxwP5vcXcky32Z c=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: AgEFAKxjUFGtJXG//2dsb2JhbAA6CsVhggEWdIIkAQEBAwEBAQFrCwULAgEIDgoKGQsnCyUCBA4FCIgGBgzCcASNTQsGBYECAjEHgl9hA4hBimCUSoFUgTaBawgXHg
X-IronPort-AV: E=Sophos;i="4.84,905,1355097600"; d="scan'208";a="191105024"
Received: from rcdn-core2-4.cisco.com ([173.37.113.191]) by rcdn-iport-2.cisco.com with ESMTP; 25 Mar 2013 14:53:31 +0000
Received: from xhc-rcd-x10.cisco.com (xhc-rcd-x10.cisco.com [173.37.183.84]) by rcdn-core2-4.cisco.com (8.14.5/8.14.5) with ESMTP id r2PErVoJ001069 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=FAIL); Mon, 25 Mar 2013 14:53:31 GMT
Received: from xmb-aln-x02.cisco.com ([169.254.5.155]) by xhc-rcd-x10.cisco.com ([173.37.183.84]) with mapi id 14.02.0318.004; Mon, 25 Mar 2013 09:53:30 -0500
From: "Cullen Jennings (fluffy)" <fluffy@cisco.com>
To: Stephan Wenger <stewe@stewe.org>
Thread-Topic: [payload] VP8 payload, decoder processing capabilities (was Re: [rtcweb] Resolution negotiation - a contribution)
Thread-Index: AQHOKWiD6cOREVy9J0iAWauRubjUxw==
Date: Mon, 25 Mar 2013 14:53:30 +0000
Message-ID: <C5E08FE080ACFD4DAE31E4BDBF944EB1134339F8@xmb-aln-x02.cisco.com>
References: <CBB1D76E.85DD1%stewe@stewe.org>
In-Reply-To: <CBB1D76E.85DD1%stewe@stewe.org>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [10.20.249.164]
Content-Type: text/plain; charset="iso-8859-1"
Content-ID: <47C551C39BAFC143A10F91EF2DBBE92F@emea.cisco.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Cc: "rtcweb@ietf.org" <rtcweb@ietf.org>, "payload@ietf.org" <payload@ietf.org>
Subject: Re: [rtcweb] [payload] VP8 payload, decoder processing capabilities (was Re: Resolution negotiation - a contribution)
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: Mon, 25 Mar 2013 14:53:33 -0000
I'd would find it very helpful to see the parameterization of Google hardware implementations. It been said that anyone can get the CHDL/Verilog for this but I can't get it. Looking at that would help understand what are limitations of at least one hardware implementation. I think that would shed a bunch of light on what might be needed. On Apr 16, 2012, at 14:40 , Stephan Wenger wrote: > Hi all, > > For context: Harald and myself have been at odds for a while now about the > lack of support for a code point in the VP8 payload that can be used to > negotiate a maximum decoder/bitstream complexity. Specifically, Harald > (and other VP8 payload folks) suggested that generic mechanisms, such as > the a=framerate attribute of RFC4566 in conjunction with the picture size > aspect of the imageattr of RFC 6236 can be used, at least in the rtcweb > context. However, as far as I understood our argument, these two > mechanisms in combination are not meant as a limit for decoder complexity > (in terms of samples/sec processing rate), but rather as an indication, > from receiver to sender, of an upper bound of what is "useful to send". > See the email below. To me, it's quite obvious that an indication of > "useful to send" includes "my decoder can handle this"; however, it could > be more restrictive in that factors other than decoder horsepower could > also be at play, such as screen size, user interface settings, and so on. > > I believe that the combination of what can be signaled using the above > mechanisms should be sufficient for rtcweb. However, I also believe that > it is insufficient for general purpose use, mostly because it requires the > support of RFC 6236, which is not exactly a widely deployed technology. > Further, the a=framerate attribute is not a particularly useful attribute > these days anymore, because variable frame rates, at least for software > encoding/decoding, are the norm. > > In previous posts on the payload list (in response to the VP8 payload > WGLC), I have commented on the practical shortcomings of the (lack of) > complexity negotiation, and suggested that this needs to be fixed. > > Two options: > > 1) codify Harald's mechanism (based on a=framerate and imageattr in the > VP8 payload draft, at MUST strength. "In a declarative context, a > prospective media sender supporting this (VP8 payload) specification MUST > support RFC 4566 a=framerate and RFC6236 imageattr, and MUST include code > points according to both mechanisms to identify the properties of the > media stream. In an offer-answer context, both offerer and answerer > receiver supporting this VP8 payload specification MUST support > a=framertate and imageattr, and MUST include both in their respective > offer/answer messages, so to identify an operation point that will not > overload the media decoder's capabilities. > > The issue with this approach, IMO, is that we are dealing here with three > individual code points (framerate, horizontal and vertical picture size), > where a single code point ought to be sufficient for determining whether a > décor is capable of decoding a stream, at least from a complexity > viewpoint). > > 2) include, in the V8 payload, a negotiable SDP code point indicating the > complexity of a stream, in units of samples per second processing > requirements or a derivative thereof (such as: levels as used in the MPEG > world). For example, the VP8 payload could include a single, optional, > negotiable parameter "SamplePerSecond". If SamplePerSecond were absent in > the SDP, a value of xxxxx must be inferred. (a sensible value for xxxxx > could be, for example 9216000, which is the number of samples per second > for VGA resolution at 30 Hz). If SamplePerSecond is present in a > declarative context, it indicates the minimum processing requirements a > decoder must support in order to successfully decode the stream. In a > symmetric offer-answer context, SamplePerSecond can be used to "dial down" > the complexity of the stream to a value that both encoder and decoder can > support. > > My preference is obviously the second proposal, but I'm willing to help > fleshing out either or both of them, just not today :-) > > Regards, > Stephan > > > > On 4.13.2012 00:45 , "Harald Alvestrand" <harald@alvestrand.no> wrote: > >> On 04/12/2012 11:13 PM, Stephan Wenger wrote: >>> >>> On 4.12.2012 12:08 , "Harald Alvestrand"<harald@alvestrand.no> wrote: >>> >>>> On 04/12/2012 08:19 PM, Stephan Wenger wrote: >>>>> Hi Harald, >>>>> Thanks for this strawman. I believe it should work, but I fail to see >>>>> how >>>>> a two dimensional negotiation requirement (negotiating max values for >>>>> framerate and image size--which, in turn, also has two-dimensional >>>>> properties) leads to better interop than a one dimensional negotiation >>>>> (pixels per second processing requirement). >>>> Stephan, >>>> >>>> I do not see this (or the requirement from the use-cases document) >>>> first >>>> and foremost a decoder complexity negotiation; it is a negotiation of >>>> how much data it is useful to send, given the recipient's intended use >>>> of that data. >>> Then such a negotiation should be executed in addition. Decoder cycle >>> requirement do matter in practical implementations. >> Feel free to propose language that captures this requirement. As noted, >> my I-D fragment doesn't. >> >> > > > _______________________________________________ > payload mailing list > payload@ietf.org > https://www.ietf.org/mailman/listinfo/payload
- [rtcweb] Resolution negotiation - a contribution Harald Alvestrand
- Re: [rtcweb] Resolution negotiation - a contribut… Timothy B. Terriberry
- Re: [rtcweb] Resolution negotiation - a contribut… Harald Alvestrand
- Re: [rtcweb] Resolution negotiation - a contribut… Marshall Eubanks
- Re: [rtcweb] Resolution negotiation - a contribut… Harald Alvestrand
- Re: [rtcweb] Resolution negotiation - a contribut… Stephan Wenger
- Re: [rtcweb] Resolution negotiation - a contribut… Harald Alvestrand
- Re: [rtcweb] Resolution negotiation - a contribut… Stephan Wenger
- Re: [rtcweb] Resolution negotiation - a contribut… Harald Alvestrand
- [rtcweb] VP8 payload, decoder processing capabili… Stephan Wenger
- Re: [rtcweb] [payload] VP8 payload, decoder proce… Yuepeiyu (Roy)
- Re: [rtcweb] Resolution negotiation - mandatory /… Roni Even
- Re: [rtcweb] Resolution negotiation - mandatory /… Harald Alvestrand
- Re: [rtcweb] Resolution negotiation - mandatory /… Roni Even
- Re: [rtcweb] Resolution negotiation - mandatory /… Harald Alvestrand
- Re: [rtcweb] Resolution negotiation - mandatory /… Harald Alvestrand
- Re: [rtcweb] Resolution negotiation - mandatory /… Roni Even
- [rtcweb] Alternative Proposal for Dynamic Codec P… Magnus Westerlund
- Re: [rtcweb] Alternative Proposal for Dynamic Cod… Harald Alvestrand
- Re: [rtcweb] Alternative Proposal for Dynamic Cod… Timothy B. Terriberry
- Re: [rtcweb] Alternative Proposal for Dynamic Cod… Bernard Aboba
- Re: [rtcweb] Alternative Proposal for Dynamic Cod… Harald Alvestrand
- Re: [rtcweb] Alternative Proposal for Dynamic Cod… Justin Uberti
- Re: [rtcweb] Alternative Proposal for Dynamic Cod… Magnus Westerlund
- Re: [rtcweb] Alternative Proposal for Dynamic Cod… Harald Alvestrand
- Re: [rtcweb] Alternative Proposal for Dynamic Cod… Magnus Westerlund
- Re: [rtcweb] Alternative Proposal for Dynamic Cod… Justin Uberti
- Re: [rtcweb] Alternative Proposal for Dynamic Cod… Magnus Westerlund
- Re: [rtcweb] [payload] VP8 payload, decoder proce… Cullen Jennings (fluffy)
- Re: [rtcweb] [payload] VP8 payload, decoder proce… Harald Alvestrand