Re: [payload] VP8 payload, decoder processing capabilities

Harald Alvestrand <harald@alvestrand.no> Wed, 09 May 2012 07:10 UTC

Return-Path: <harald@alvestrand.no>
X-Original-To: payload@ietfa.amsl.com
Delivered-To: payload@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id DE4B521F85B1 for <payload@ietfa.amsl.com>; Wed, 9 May 2012 00:10:28 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -110.437
X-Spam-Level:
X-Spam-Status: No, score=-110.437 tagged_above=-999 required=5 tests=[AWL=0.162, BAYES_00=-2.599, 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 7aWJtSv1n597 for <payload@ietfa.amsl.com>; Wed, 9 May 2012 00:10:28 -0700 (PDT)
Received: from eikenes.alvestrand.no (eikenes.alvestrand.no [158.38.152.233]) by ietfa.amsl.com (Postfix) with ESMTP id A99CD21F8596 for <payload@ietf.org>; Wed, 9 May 2012 00:10:24 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by eikenes.alvestrand.no (Postfix) with ESMTP id 808CD39E262; Wed, 9 May 2012 09:10:21 +0200 (CEST)
X-Virus-Scanned: Debian amavisd-new at eikenes.alvestrand.no
Received: from eikenes.alvestrand.no ([127.0.0.1]) by localhost (eikenes.alvestrand.no [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Z0KOuJGrzCBY; Wed, 9 May 2012 09:10:20 +0200 (CEST)
Received: from [192.168.1.107] (unknown [188.113.88.47]) by eikenes.alvestrand.no (Postfix) with ESMTPSA id 9A09939E08B; Wed, 9 May 2012 09:10:20 +0200 (CEST)
Message-ID: <4FAA185B.8090607@alvestrand.no>
Date: Wed, 09 May 2012 09:10:19 +0200
From: Harald Alvestrand <harald@alvestrand.no>
User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.28) Gecko/20120313 Thunderbird/3.1.20
MIME-Version: 1.0
To: tharper@logitech.com
References: <4F87D9B1.4000206@alvestrand.no> <CBB1D76E.85DD1%stewe@stewe.org><4f8d1296.e950b40a.7abe.4224@mx.google.com> <4F8D1FF0.5050002@logitech.com> <E1CBF4C7095A3D4CAAAEAD09FBB8E08C06D5FEF9@xmb-sjc-234.amer.cisco.com> <4F969A29.3040908@logitech.com> <4f970f96.634cb40a.7e67.ffff8a0e@mx.google.com> <5B1A263B43E389479AB3DAC1EAF0C8F5024458@SJEXCHMB12.corp.ad.broadcom.com> <1335303658.1928.3.camel@TesterTop4> <5B1A263B43E389479AB3DAC1EAF0C8F5025DC5@SJEXCHMB12.corp.ad.broadcom.com> <4FA21442.8030002@logitech.com>
In-Reply-To: <4FA21442.8030002@logitech.com>
Content-Type: text/plain; charset="UTF-8"; format="flowed"
Content-Transfer-Encoding: 8bit
Cc: payload@ietf.org
Subject: Re: [payload] VP8 payload, decoder processing capabilities
X-BeenThere: payload@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Audio/Video Transport Payloads working group discussion list <payload.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/payload>, <mailto:payload-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/payload>
List-Post: <mailto:payload@ietf.org>
List-Help: <mailto:payload-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/payload>, <mailto:payload-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 09 May 2012 07:10:29 -0000

On 05/03/2012 07:14 AM, tom harper wrote:
> Has there been any follow up on this subject?  I have seen a great 
> deal of tangential discussion on the rtcweb list, but I am wondering 
> if that discussion changes what is done here?
>
> It seemed like there was some consensus on this list about including 
> max-mbps, max-fs, and max-fr type equivalents.  And possibly the 
> number of partitions used or equivalent?
>
> Regarding RFC 6236, it seems like so much of it is optional that it 
> could just cause more interoperability problems than it could solve- 
> but maybe I misinterpret the intent?  The syntax itself seems 
> promising as an alternative- was any final decision made about whether 
> it would work in this particular case?

The authors are working on an updated draft proposal. Real Soon Now!

>
> Thanks!
>
> Tom
>
>
>
> On 4/25/2012 9:26 AM, Sandy (Alexander) MacInnis wrote:
>> Thanks Olivier.
>>
>> I was hoping to hear from someone at Google about this.
>>
>> BTW, there might be a misunderstanding here. What I have in mind is 
>> that a sender would offer a stream indicating how many coefficient 
>> partitions that stream uses, along with the frame size and rate (or 
>> whatever alternative such as pixel rate or macroblock rate the group 
>> decides on). A receiver would be able to decide based on this 
>> information whether or not it can decode the stream. The receiver 
>> might need at least a certain number of coefficient partitions to be 
>> able to decode a stream with a certain frame size&  rate.
>>
>> Note 1: This does not apply to all receivers, but it might apply to 
>> some.
>>
>> Note 2: If the stream has more coefficient partitions than the 
>> receiver needs, that's not a problem, but if it has too few, that 
>> could potentially be a problem.
>>
>> In this scenario it doesn't matter whether the receiver's capability 
>> are static or dynamic; all that matters is that the receiver knows 
>> what its capabilities are at the time it decides whether or not it 
>> can decode the stream.
>>
>> If the concern is that the receiver's capability might be reduced 
>> after it starts to decode the stream, that opens a bigger issue that 
>> I was not trying to address. However, I don't think that concern 
>> applies to the specific question of how many coefficient partitions 
>> the stream has. If the receiver either requires a certain number of 
>> coefficient partitions initially, or anticipates that due to dynamic 
>> behavior it might require them in the future, it can use that 
>> information to decide whether or not to accept the stream. On the 
>> other hand, if the receiver might in the future require a smaller 
>> frame size&  rate stream after the stream has started, that's another 
>> matter altogether.
>>
>> --Sandy (Alexander) MacInnis
>> Broadcom
>>
>>
>> -----Original Message-----
>> From: payload-bounces@ietf.org [mailto:payload-bounces@ietf.org] On 
>> Behalf Of Olivier Crête
>> Sent: Tuesday, April 24, 2012 2:41 PM
>> To: payload@ietf.org
>> Subject: Re: [payload] VP8 payload, decoder processing capabilities
>>
>> On Tue, 2012-04-24 at 21:31 +0000, Sandy (Alexander) MacInnis wrote:
>>> I have another question about this.
>>>
>>> Background:
>>> In the VP8 bitstream spec, and in the payload draft, the use of 
>>> multiple coefficient partitions is optional and not required.
>>>
>>> A VP8 decoder might use multi-threaded processing, such that it can 
>>> achieve significantly greater throughput by decoding multiple 
>>> coefficient partitions in parallel. Such a decoder might rely on the 
>>> presence of a certain number of coefficient partitions in order to 
>>> achieve a certain level of throughput.
>>>
>>> For example, some receiver might comprise a multi-threaded decoder 
>>> that can decode 1920x1080p60 if the stream has at least four 
>>> coefficient partitions, but if the stream has only one coefficient 
>>> partition it might be limited to a significantly smaller product of 
>>> frame size and frame rate.
>>>
>>> Question: With the current draft, how does a multi-threaded decoder 
>>> know in advance how many coefficient partitions the stream uses, so 
>>> it can decide whether it can decode a stream of a given frame size 
>>> and frame rate? Or does this aspect not matter?
>> I think the receiver should include all of that in its SDP, maybe
>> something like: SamplesPerCoefficientPartition=X
>> MaxParallelCoeffficientPartitions=Y
>>
>> That said, I'm concerned that all of this is a really static view of
>> things, which is useful on a fixed device. But is completely pointless
>> when writing software that runs on a general purpose computer (such as a
>> desktop or a smartphone), in which case we want something more dynamic.
>> So maybe all of this discussion is mostly pointless and we should push
>> for a more dynamic solution (maybe some kind of RTCP feedback?)
>>
> _______________________________________________
> payload mailing list
> payload@ietf.org
> https://www.ietf.org/mailman/listinfo/payload