lavc/vvc: Skip enhancement layer NAL units

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@frankplowman.com>
Signed-off-by: James Almer <jamrial@gmail.com>
This commit is contained in:
Frank Plowman 2024-04-18 21:26:20 +01:00 committed by James Almer
parent 5b9db32ccc
commit bb9e4ff355
1 changed files with 6 additions and 0 deletions

View File

@ -785,6 +785,12 @@ static int decode_nal_unit(VVCContext *s, VVCFrameContext *fc, const H2645NAL *n
s->temporal_id = nal->temporal_id; s->temporal_id = nal->temporal_id;
if (nal->nuh_layer_id > 0) {
avpriv_report_missing_feature(fc->log_ctx,
"Decoding of multilayer bitstreams");
return AVERROR_PATCHWELCOME;
}
switch (unit->type) { switch (unit->type) {
case VVC_VPS_NUT: case VVC_VPS_NUT:
case VVC_SPS_NUT: case VVC_SPS_NUT: