This is an automated email from the git hooks/post-receive script.

Git pushed a commit to branch master
in repository ffmpeg.

commit ebf70aa854994c135ea059d94d3c31495c8cfeb0
Author:     James Almer <[email protected]>
AuthorDate: Sat Mar 7 16:52:58 2026 -0300
Commit:     James Almer <[email protected]>
CommitDate: Sat Mar 7 19:22:42 2026 -0300

    avformat/demux: update Stream Groups in avformat_find_stream_info() from 
parsed values
    
    Dimensions are not available at the container level for LCEVC in mpegts, so 
derive them
    from the parsed values taken from the enhancement stream.
    
    Signed-off-by: James Almer <[email protected]>
---
 libavformat/demux.c | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/libavformat/demux.c b/libavformat/demux.c
index b794364b4f..a1909237f0 100644
--- a/libavformat/demux.c
+++ b/libavformat/demux.c
@@ -3163,6 +3163,25 @@ int avformat_find_stream_info(AVFormatContext *ic, 
AVDictionary **options)
         sti->avctx_inited = 0;
     }
 
+    /* update the stream group parameters from the stream contexts if needed */
+    for (unsigned i = 0; i < ic->nb_stream_groups; i++) {
+        AVStreamGroup *const stg  = ic->stream_groups[i];
+        AVStreamGroupLCEVC *lcevc;
+        const AVStream *st;
+
+        if (stg->type != AV_STREAM_GROUP_PARAMS_LCEVC)
+            continue;
+
+        /* For LCEVC in mpegts, the parser is needed to get the enhancement 
layer
+         * dimensions */
+        lcevc = stg->params.lcevc;
+        if (lcevc->width && lcevc->height)
+            continue;
+        st = stg->streams[lcevc->lcevc_index];
+        lcevc->width  = st->codecpar->width;
+        lcevc->height = st->codecpar->height;
+    }
+
 find_stream_info_err:
     for (unsigned i = 0; i < ic->nb_streams; i++) {
         AVStream *const st  = ic->streams[i];

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

Reply via email to