[FFmpeg-devel] [PATCH v2 1/3] avformat/vpcc: Calculate VP9 level from Luma's Sample rate and Picture size

James Almer jamrial at gmail.com
Mon Apr 23 17:23:46 EEST 2018

On 4/23/2018 8:58 AM, Ronald S. Bultje wrote:
> Hi,
> On Mon, Apr 23, 2018 at 2:10 AM, Karthick J <kjeyapal at akamai.com> wrote:
>> -    int level = par->level == FF_LEVEL_UNKNOWN ? 0 : par->level;
>> +    int level = par->level == FF_LEVEL_UNKNOWN ?
>> +        get_vp9_level(par, frame_rate) : par->level;
> After this change, how will I create a file without a level?
> This patch blurs the line between "unknown", "unspecified", "non-existent"
> and "autodetect". Linguistically, each of these mean something
> fundamentally different. I think it's acceptable to not have too many ways
> of specifying something which in practice comes down to "nope", but you're
> removing the "nope" altogether, which isn't quite right either.

The spec (VP9 in mp4) doesn't allow 0 nor defines an "unknown" value to
be muxed into the vpcc atom. Technically speaking, we have been creating
invalid files all this time by using 0 when the profile is unknown.
See https://www.webmproject.org/vp9/mp4/

I don't think anything really looks at this field, beyond maybe just
making sure it's a valid value if the parser is super pedantic, as it's
not needed to actually start decoding. So an approximation is probably
better than an out of range value like 0.

More information about the ffmpeg-devel mailing list