[FFmpeg-devel] [PATCH] lavc/vvc: Skip enhancement layer NAL units

Frank Plowman post at frankplowman.com
Thu Apr 18 23:27:41 EEST 2024


On 18/04/2024 21:23, James Almer wrote:
> On 4/18/2024 5:19 PM, Frank Plowman wrote:
>> On 18/04/2024 20:43, James Almer wrote:
>>> On 4/18/2024 3:59 PM, Frank Plowman wrote:
>>>> The native VVC decoder does not yet support quality/spatial/multiview
>>>> scalability.  Bitstreams requiring this feature could cause crashes.
>>>> Patch fixes this by skipping NAL units which are not in the base layer,
>>>> warning the user while doing so.
>>>>
>>>> Signed-off-by: Frank Plowman <post at frankplowman.com>
>>>> ---
>>>>    libavcodec/vvc/dec.c | 5 +++++
>>>>    1 file changed, 5 insertions(+)
>>>>
>>>> diff --git a/libavcodec/vvc/dec.c b/libavcodec/vvc/dec.c
>>>> index a4fc40b40a..5249ddf989 100644
>>>> --- a/libavcodec/vvc/dec.c
>>>> +++ b/libavcodec/vvc/dec.c
>>>> @@ -785,6 +785,11 @@ static int decode_nal_unit(VVCContext *s,
>>>> VVCFrameContext *fc, const H2645NAL *n
>>>>          s->temporal_id = nal->temporal_id;
>>>>    +    if (nal->nuh_layer_id > 0) {
>>>> +        avpriv_report_missing_feature(fc->log_ctx, "Multilayer");
>>>
>>> A more verbose message would be better.
>>>
>>
>> Thanks for your review James.
>>
>> Would "Quality/spatial/multiview scalability" be better or do you have
>> some other suggestion?  The message is put in a template by
>> avpriv_report_missing_feature, e.g.
>>
>> [vvc @ 0x618000003c80] Multilayer is not implemented. Update your FFmpeg
>> version to the newest one from Git. If the problem still occurs, it
>> means that your file has a feature which has not been implemented.
>>
>> so the string passed to avpriv_report_missing_feature must be a noun.
> 
> Maybe "Decoding of multilayer bitstreams".

Agreed, that's a bit clearer. v2 sent.

Thanks,
-- 
Frank


More information about the ffmpeg-devel mailing list