PR #22970 opened by James Almer (jamrial)
URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/22970
Patch URL: https://code.ffmpeg.org/FFmpeg/FFmpeg/pulls/22970.patch


>From e3cd184f2b7ab04843f536b5668df13bae37d1a4 Mon Sep 17 00:00:00 2001
From: James Almer <[email protected]>
Date: Thu, 30 Apr 2026 12:12:07 -0300
Subject: [PATCH 1/2] avformat/mov: request parsing for LCEVC streams

Given that no standalone decoder will be present, use a parser to get stream
information that's not reported by the container.

Signed-off-by: James Almer <[email protected]>
---
 libavformat/mov.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/libavformat/mov.c b/libavformat/mov.c
index 7d00334fae..e3cb9ab67e 100644
--- a/libavformat/mov.c
+++ b/libavformat/mov.c
@@ -3043,6 +3043,7 @@ static int mov_finalize_stsd_codec(MOVContext *c, 
AVIOContext *pb,
     case AV_CODEC_ID_PRORES:
     case AV_CODEC_ID_APV:
     case AV_CODEC_ID_EVC:
+    case AV_CODEC_ID_LCEVC:
     case AV_CODEC_ID_AV1:
         /* field_order detection of H264 requires parsing */
     case AV_CODEC_ID_H264:
-- 
2.52.0


>From 980cc601a9f37c9cfa472f54d7356cde484cb585 Mon Sep 17 00:00:00 2001
From: James Almer <[email protected]>
Date: Thu, 30 Apr 2026 12:12:43 -0300
Subject: [PATCH 2/2] avformat/dashdec: propagate parsing requirement from the
 underlying demuxer

Signed-off-by: James Almer <[email protected]>
---
 libavformat/dashdec.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/libavformat/dashdec.c b/libavformat/dashdec.c
index 1daa0d4ce5..cf6c542d5f 100644
--- a/libavformat/dashdec.c
+++ b/libavformat/dashdec.c
@@ -2005,7 +2005,9 @@ static int open_demux_for_component(AVFormatContext *s, 
struct representation *p
 
     for (i = 0; i < pls->ctx->nb_streams; i++) {
         AVStream *st = avformat_new_stream(s, NULL);
-        AVStream *ist = pls->ctx->streams[i];
+        FFStream *sti = ffstream(st);
+        const AVStream *ist = pls->ctx->streams[i];
+        const FFStream *isti = cffstream(ist);
         if (!st)
             return AVERROR(ENOMEM);
 
@@ -2019,6 +2021,7 @@ static int open_demux_for_component(AVFormatContext *s, 
struct representation *p
 
         // copy disposition
         st->disposition = ist->disposition;
+        sti->need_parsing = isti->need_parsing;
     }
 
     for (i = 0; i < pls->ctx->nb_stream_groups; i++) {
-- 
2.52.0

_______________________________________________
ffmpeg-devel mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to