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

Frank Plowman post at frankplowman.com
Thu Apr 18 21:59:55 EEST 2024


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");
+        return AVERROR_PATCHWELCOME;
+    }
+
     switch (unit->type) {
     case VVC_VPS_NUT:
     case VVC_SPS_NUT:
-- 
2.44.0



More information about the ffmpeg-devel mailing list