* [FFmpeg-devel] [PATCH v2] lavc/vvc: Skip enhancement layer NAL units
@ 2024-04-18 20:26 Frank Plowman
2024-04-18 20:39 ` James Almer
0 siblings, 1 reply; 2+ messages in thread
From: Frank Plowman @ 2024-04-18 20:26 UTC (permalink / raw)
To: ffmpeg-devel; +Cc: Frank Plowman
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>
---
Changes since v1:
* Change missing feature string from "Multilayer" to "Decoding of
multilayer bitstreams" for clarity.
libavcodec/vvc/dec.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/libavcodec/vvc/dec.c b/libavcodec/vvc/dec.c
index a4fc40b40a..6aeec27eaf 100644
--- a/libavcodec/vvc/dec.c
+++ b/libavcodec/vvc/dec.c
@@ -785,6 +785,12 @@ 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,
+ "Decoding of multilayer bitstreams");
+ return AVERROR_PATCHWELCOME;
+ }
+
switch (unit->type) {
case VVC_VPS_NUT:
case VVC_SPS_NUT:
--
2.44.0
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [FFmpeg-devel] [PATCH v2] lavc/vvc: Skip enhancement layer NAL units
2024-04-18 20:26 [FFmpeg-devel] [PATCH v2] lavc/vvc: Skip enhancement layer NAL units Frank Plowman
@ 2024-04-18 20:39 ` James Almer
0 siblings, 0 replies; 2+ messages in thread
From: James Almer @ 2024-04-18 20:39 UTC (permalink / raw)
To: ffmpeg-devel
On 4/18/2024 5:26 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@frankplowman.com>
> ---
> Changes since v1:
> * Change missing feature string from "Multilayer" to "Decoding of
> multilayer bitstreams" for clarity.
> libavcodec/vvc/dec.c | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/libavcodec/vvc/dec.c b/libavcodec/vvc/dec.c
> index a4fc40b40a..6aeec27eaf 100644
> --- a/libavcodec/vvc/dec.c
> +++ b/libavcodec/vvc/dec.c
> @@ -785,6 +785,12 @@ 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,
> + "Decoding of multilayer bitstreams");
> + return AVERROR_PATCHWELCOME;
> + }
> +
> switch (unit->type) {
> case VVC_VPS_NUT:
> case VVC_SPS_NUT:
Applied, thanks.
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2024-04-18 20:39 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-04-18 20:26 [FFmpeg-devel] [PATCH v2] lavc/vvc: Skip enhancement layer NAL units Frank Plowman
2024-04-18 20:39 ` James Almer
Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
This inbox may be cloned and mirrored by anyone:
git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
ffmpegdev@gitmailbox.com
public-inbox-index ffmpegdev
Example config snippet for mirrors.
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git