Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
 help / color / mirror / Atom feed
* [FFmpeg-devel] [PATCH 1/2] avformat/mov: fix track handling when mixing IAMF and video tracks
@ 2024-08-01 15:10 James Almer
  2024-08-01 15:10 ` [FFmpeg-devel] [PATCH 2/2] fate/mov: add an IAMF+video muxing test James Almer
  2024-08-04 12:57 ` [FFmpeg-devel] [PATCH 1/2] avformat/mov: fix track handling when mixing IAMF and video tracks James Almer
  0 siblings, 2 replies; 3+ messages in thread
From: James Almer @ 2024-08-01 15:10 UTC (permalink / raw)
  To: ffmpeg-devel

Fixes crashes when muxing the two together.

Signed-off-by: James Almer <jamrial@gmail.com>
---
 libavformat/movenc.c | 37 ++++++++++++++++++++++++++++---------
 1 file changed, 28 insertions(+), 9 deletions(-)

diff --git a/libavformat/movenc.c b/libavformat/movenc.c
index ae49582a1a..8e4a037e46 100644
--- a/libavformat/movenc.c
+++ b/libavformat/movenc.c
@@ -7510,7 +7510,9 @@ static int mov_create_dvd_sub_decoder_specific_info(MOVTrack *track,
 static int mov_init_iamf_track(AVFormatContext *s)
 {
     MOVMuxContext *mov = s->priv_data;
-    MOVTrack *track = &mov->tracks[0]; // IAMF if present is always the first track
+    MOVTrack *track;
+    IAMFContext *iamf;
+    int first_iamf_idx = INT_MAX, last_iamf_idx = 0;
     int nb_audio_elements = 0, nb_mix_presentations = 0;
     int ret;
 
@@ -7532,24 +7534,24 @@ static int mov_init_iamf_track(AVFormatContext *s)
         return AVERROR(EINVAL);
     }
 
-    track->iamf = av_mallocz(sizeof(*track->iamf));
-    if (!track->iamf)
+    iamf = av_mallocz(sizeof(*iamf));
+    if (!iamf)
         return AVERROR(ENOMEM);
 
+
     for (int i = 0; i < s->nb_stream_groups; i++) {
         const AVStreamGroup *stg = s->stream_groups[i];
         switch(stg->type) {
         case AV_STREAM_GROUP_PARAMS_IAMF_AUDIO_ELEMENT:
             for (int j = 0; j < stg->nb_streams; j++) {
-                track->first_iamf_idx = FFMIN(stg->streams[j]->index, track->first_iamf_idx);
-                track->last_iamf_idx  = FFMAX(stg->streams[j]->index, track->last_iamf_idx);
-                stg->streams[j]->priv_data = track;
+                first_iamf_idx = FFMIN(stg->streams[j]->index, first_iamf_idx);
+                last_iamf_idx  = FFMAX(stg->streams[j]->index, last_iamf_idx);
             }
 
-            ret = ff_iamf_add_audio_element(track->iamf, stg, s);
+            ret = ff_iamf_add_audio_element(iamf, stg, s);
             break;
         case AV_STREAM_GROUP_PARAMS_IAMF_MIX_PRESENTATION:
-            ret = ff_iamf_add_mix_presentation(track->iamf, stg, s);
+            ret = ff_iamf_add_mix_presentation(iamf, stg, s);
             break;
         default:
             av_assert0(0);
@@ -7558,8 +7560,20 @@ static int mov_init_iamf_track(AVFormatContext *s)
             return ret;
     }
 
+    track = &mov->tracks[first_iamf_idx];
+    track->iamf = iamf;
+    track->first_iamf_idx = first_iamf_idx;
+    track->last_iamf_idx = last_iamf_idx;
     track->tag = MKTAG('i','a','m','f');
 
+    for (int i = 0; i < s->nb_stream_groups; i++) {
+        AVStreamGroup *stg = s->stream_groups[i];
+        if (stg->type != AV_STREAM_GROUP_PARAMS_IAMF_AUDIO_ELEMENT)
+            continue;
+        for (int j = 0; j < stg->nb_streams; j++)
+            stg->streams[j]->priv_data = track;
+    }
+
     ret = avio_open_dyn_buf(&track->iamf_buf);
     if (ret < 0)
         return ret;
@@ -7571,6 +7585,7 @@ static int mov_init_iamf_track(AVFormatContext *s)
 static int mov_init(AVFormatContext *s)
 {
     MOVMuxContext *mov = s->priv_data;
+    int has_iamf = 0;
     int i, ret;
 
     mov->fc = s;
@@ -7725,6 +7740,7 @@ static int mov_init(AVFormatContext *s)
             }
             st->priv_data = st;
         }
+        has_iamf = 1;
 
         if (!mov->nb_tracks) // We support one track for the entire IAMF structure
             mov->nb_tracks++;
@@ -7830,8 +7846,11 @@ static int mov_init(AVFormatContext *s)
     for (int j = 0, i = 0; j < s->nb_streams; j++) {
         AVStream *st = s->streams[j];
 
-        if (st != st->priv_data)
+        if (st != st->priv_data) {
+            if (has_iamf)
+                i += has_iamf--;
             continue;
+        }
         st->priv_data = &mov->tracks[i++];
     }
 
-- 
2.45.2

_______________________________________________
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] 3+ messages in thread

* [FFmpeg-devel] [PATCH 2/2] fate/mov: add an IAMF+video muxing test
  2024-08-01 15:10 [FFmpeg-devel] [PATCH 1/2] avformat/mov: fix track handling when mixing IAMF and video tracks James Almer
@ 2024-08-01 15:10 ` James Almer
  2024-08-04 12:57 ` [FFmpeg-devel] [PATCH 1/2] avformat/mov: fix track handling when mixing IAMF and video tracks James Almer
  1 sibling, 0 replies; 3+ messages in thread
From: James Almer @ 2024-08-01 15:10 UTC (permalink / raw)
  To: ffmpeg-devel

Signed-off-by: James Almer <jamrial@gmail.com>
---
 tests/fate/mov.mak                     |  12 +++
 tests/ref/fate/mov-mp4-iamf-5_1_4-h264 | 140 +++++++++++++++++++++++++
 2 files changed, 152 insertions(+)
 create mode 100644 tests/ref/fate/mov-mp4-iamf-5_1_4-h264

diff --git a/tests/fate/mov.mak b/tests/fate/mov.mak
index d12980815f..4f0fe4e3a1 100644
--- a/tests/fate/mov.mak
+++ b/tests/fate/mov.mak
@@ -193,6 +193,18 @@ FATE_MOV_FFMPEG_FFPROBE_SAMPLES-$(call REMUX, MP4 MOV) \
                           += fate-mov-write-amve
 fate-mov-write-amve: CMD = transcode mov $(TARGET_SAMPLES)/mov/amve.mov mp4 "-c:v copy" "-c:v copy -t 0.5" "-show_entries stream_side_data_list"
 
+# Test muxing an IAMF track alongside a video one. Also, use stream ids as track ids.
+FATE_MOV_FFMPEG_FFPROBE_SAMPLES-$(call TRANSCODE, FLAC, MOV, WAV_DEMUXER PCM_S16LE_DECODER ARESAMPLE_FILTER MOV_DEMUXER H264_PARSER) += fate-mov-mp4-iamf-5_1_4-h264
+fate-mov-mp4-iamf-5_1_4-h264: tests/data/asynth-44100-10.wav tests/data/filtergraphs/iamf_5_1_4 tests/data/streamgroups/audio_element-5_1_4 tests/data/streamgroups/mix_presentation-5_1_4
+fate-mov-mp4-iamf-5_1_4-h264: SRC = $(TARGET_PATH)/tests/data/asynth-44100-10.wav
+fate-mov-mp4-iamf-5_1_4-h264: CMD = transcode wav $(SRC) mp4 "-auto_conversion_filters \
+  -/filter_complex $(TARGET_PATH)/tests/data/filtergraphs/iamf_5_1_4 \
+  -/stream_group $(TARGET_PATH)/tests/data/streamgroups/audio_element-5_1_4 \
+  -/stream_group $(TARGET_PATH)/tests/data/streamgroups/mix_presentation-5_1_4 \
+  -streamid 0:0 -streamid 1:1 -streamid 2:2 -streamid 3:3 -streamid 4:4 -streamid 5:5 -streamid 6:6 -map [FRONT] -map [BACK] -map [CENTER] -map [LFE] -map [TOP_FRONT] -map [TOP_BACK] -map 1:v:0 -use_stream_ids_as_track_ids true -c:a flac -c:v copy -t 1" "-c:a copy -c:v copy -map 0" \
+  "-of compact -show_entries stream_group=index,id,nb_streams,type:stream_group_components:stream_group_disposition:stream_group_tags:stream_group_stream=index,id:stream_group_stream_disposition:stream=index,id" \
+  "-i $(TARGET_SAMPLES)/mov/spherical.mov"
+
 FATE_SAMPLES_FFMPEG_FFPROBE += $(FATE_MOV_FFMPEG_FFPROBE_SAMPLES-yes)
 FATE_SAMPLES_FFMPEG += $(FATE_MOV_FFMPEG_SAMPLES-yes)
 
diff --git a/tests/ref/fate/mov-mp4-iamf-5_1_4-h264 b/tests/ref/fate/mov-mp4-iamf-5_1_4-h264
new file mode 100644
index 0000000000..aa82eba514
--- /dev/null
+++ b/tests/ref/fate/mov-mp4-iamf-5_1_4-h264
@@ -0,0 +1,140 @@
+473e83cdb4f86931a355f46a41f6419e *tests/data/fate/mov-mp4-iamf-5_1_4-h264.mp4
+160118 tests/data/fate/mov-mp4-iamf-5_1_4-h264.mp4
+#extradata 0:       34, 0xafa70d5e
+#extradata 1:       34, 0xafa70d5e
+#extradata 2:       34, 0xaf7b0d5c
+#extradata 3:       34, 0xaf7b0d5c
+#extradata 4:       34, 0xafa70d5e
+#extradata 5:       34, 0xafa70d5e
+#extradata 6:       43, 0x2b0e0d7b
+#tb 0: 1/44100
+#media_type 0: audio
+#codec_id 0: flac
+#sample_rate 0: 44100
+#channel_layout_name 0: stereo
+#tb 1: 1/44100
+#media_type 1: audio
+#codec_id 1: flac
+#sample_rate 1: 44100
+#channel_layout_name 1: stereo
+#tb 2: 1/44100
+#media_type 2: audio
+#codec_id 2: flac
+#sample_rate 2: 44100
+#channel_layout_name 2: mono
+#tb 3: 1/44100
+#media_type 3: audio
+#codec_id 3: flac
+#sample_rate 3: 44100
+#channel_layout_name 3: mono
+#tb 4: 1/44100
+#media_type 4: audio
+#codec_id 4: flac
+#sample_rate 4: 44100
+#channel_layout_name 4: stereo
+#tb 5: 1/44100
+#media_type 5: audio
+#codec_id 5: flac
+#sample_rate 5: 44100
+#channel_layout_name 5: stereo
+#tb 6: 1/12800
+#media_type 6: video
+#codec_id 6: h264
+#dimensions 6: 1920x1080
+#sar 6: 0/1
+6,      -1024,          0,      512,    69118, 0x73cb52f0
+6,       -512,       2048,      512,     1103, 0x082a059f, F=0x0
+0,          0,          0,     4608,     1399, 0x6e89566e
+1,          0,          0,     4608,     1399, 0x6e89566e
+2,          0,          0,     4608,     1396, 0x0dcb5677
+3,          0,          0,     4608,     1396, 0x0dcb5677
+4,          0,          0,     4608,     1399, 0x6e89566e
+5,          0,          0,     4608,     1399, 0x6e89566e
+6,          0,       1024,      512,      141, 0x9273301d, F=0x0
+6,        512,        512,      512,      131, 0x1f28293e, F=0x0
+6,       1024,       1536,      512,       69, 0xefd506fc, F=0x0
+0,       4608,       4608,     4608,     1442, 0x6c3c5b13
+1,       4608,       4608,     4608,     1442, 0x6c3c5b13
+2,       4608,       4608,     4608,     1439, 0xc46b5ac5
+3,       4608,       4608,     4608,     1439, 0xc46b5ac5
+4,       4608,       4608,     4608,     1442, 0x6c3c5b13
+5,       4608,       4608,     4608,     1442, 0x6c3c5b13
+6,       1536,       4096,      512,      424, 0x4e50ba1f, F=0x0
+6,       2048,       3072,      512,       83, 0x730511d8, F=0x0
+6,       2560,       2560,      512,       70, 0x4aef0a79, F=0x0
+0,       9216,       9216,     4608,     1380, 0xc497571b
+1,       9216,       9216,     4608,     1380, 0xc497571b
+2,       9216,       9216,     4608,     1377, 0x5b2a55fe
+3,       9216,       9216,     4608,     1377, 0x5b2a55fe
+4,       9216,       9216,     4608,     1380, 0xc497571b
+5,       9216,       9216,     4608,     1380, 0xc497571b
+6,       3072,       3584,      512,       71, 0x66b10ad4, F=0x0
+6,       3584,       6144,      512,      149, 0x948833d0, F=0x0
+0,      13824,      13824,     4608,     1383, 0x48e9510f
+1,      13824,      13824,     4608,     1383, 0x48e9510f
+2,      13824,      13824,     4608,     1380, 0x045550d3
+3,      13824,      13824,     4608,     1380, 0x045550d3
+4,      13824,      13824,     4608,     1383, 0x48e9510f
+5,      13824,      13824,     4608,     1383, 0x48e9510f
+6,       4096,       5120,      512,       78, 0xc2ed0c72, F=0x0
+6,       4608,       4608,      512,       72, 0x9e2b0cf2, F=0x0
+6,       5120,       5632,      512,       72, 0x92390c65, F=0x0
+0,      18432,      18432,     4608,     1572, 0x9a514719
+1,      18432,      18432,     4608,     1572, 0x9a514719
+2,      18432,      18432,     4608,     1568, 0xa2bc45f4
+3,      18432,      18432,     4608,     1568, 0xa2bc45f4
+4,      18432,      18432,     4608,     1572, 0x9a514719
+5,      18432,      18432,     4608,     1572, 0x9a514719
+6,       5632,       8192,      512,       99, 0xcc3419d1, F=0x0
+6,       6144,       7168,      512,       78, 0x89ce0b34, F=0x0
+6,       6656,       6656,      512,       72, 0x6df70c38, F=0x0
+0,      23040,      23040,     4608,     1391, 0x74ac5014
+1,      23040,      23040,     4608,     1391, 0x74ac5014
+2,      23040,      23040,     4608,     1388, 0x96c85007
+3,      23040,      23040,     4608,     1388, 0x96c85007
+4,      23040,      23040,     4608,     1391, 0x74ac5014
+5,      23040,      23040,     4608,     1391, 0x74ac5014
+6,       7168,       7680,      512,       72, 0x62040baa, F=0x0
+6,       7680,      10240,      512,       80, 0x6bd00d20, F=0x0
+0,      27648,      27648,     4608,     1422, 0x2f9d47c5
+1,      27648,      27648,     4608,     1422, 0x2f9d47c5
+2,      27648,      27648,     4608,     1419, 0x4d4d466a
+3,      27648,      27648,     4608,     1419, 0x4d4d466a
+4,      27648,      27648,     4608,     1422, 0x2f9d47c5
+5,      27648,      27648,     4608,     1422, 0x2f9d47c5
+6,       8192,       9216,      512,       78, 0x9cee0b78, F=0x0
+6,       8704,       8704,      512,       72, 0x7f7e0c7b, F=0x0
+6,       9216,       9728,      512,       72, 0x738c0bee, F=0x0
+0,      32256,      32256,     4608,     1768, 0x2a044b99
+1,      32256,      32256,     4608,     1768, 0x2a044b99
+2,      32256,      32256,     4608,     1765, 0xacb84b24
+3,      32256,      32256,     4608,     1765, 0xacb84b24
+4,      32256,      32256,     4608,     1768, 0x2a044b99
+5,      32256,      32256,     4608,     1768, 0x2a044b99
+6,       9728,      12288,      512,       77, 0x08760827, F=0x0
+6,      10240,      11264,      512,       78, 0xb00d0bbb, F=0x0
+0,      36864,      36864,     4608,     1534, 0xb0b35a3f
+1,      36864,      36864,     4608,     1534, 0xb0b35a3f
+2,      36864,      36864,     4608,     1531, 0x996458aa
+3,      36864,      36864,     4608,     1531, 0x996458aa
+4,      36864,      36864,     4608,     1534, 0xb0b35a3f
+5,      36864,      36864,     4608,     1534, 0xb0b35a3f
+6,      10752,      10752,      512,       72, 0x91070cc0, F=0x0
+6,      11264,      11776,      512,       72, 0x85150c33, F=0x0
+6,      11776,      14336,      512,       77, 0x1b51086a, F=0x0
+0,      41472,      41472,     2628,      926, 0xc26a5eae
+1,      41472,      41472,     2628,      926, 0xc26a5eae
+2,      41472,      41472,     2628,      923, 0xa7225edf
+3,      41472,      41472,     2628,      923, 0xa7225edf
+4,      41472,      41472,     2628,      926, 0xc26a5eae
+5,      41472,      41472,     2628,      926, 0xc26a5eae
+6,      12288,      13312,      512,       78, 0xc32e0c00, F=0x0
+stream_group|index=0|id=0x1|nb_streams=6|type=IAMF Audio Element|component_entry/iamf_audio_element:nb_layers=4|component_entry/iamf_audio_element:audio_element_type=0|component_entry/iamf_audio_element:default_w=10|subcomponent_entry/iamf_audio_layer:channel_layout=stereo|subcomponent_entry/iamf_audio_layer:output_gain_flags=0|subcomponent_entry/iamf_audio_layer:output_gain=0/1|subcomponent_entry/iamf_audio_layer:channel_layout=5.1|subcomponent_entry/iamf_audio_layer:output_gain_flags=0|subcomponent_entry/iamf_audio_layer:output_gain=0/1|subcomponent_entry/iamf_audio_layer:channel_layout=5.1.2|subcomponent_entry/iamf_audio_layer:output_gain_flags=0|subcomponent_entry/iamf_audio_layer:output_gain=0/1|subcomponent_entry/iamf_audio_layer:channel_layout=5.1.4|subcomponent_entry/iamf_audio_layer:output_gain_flags=0|subcomponent_entry/iamf_audio_layer:output_gain=0/1|subcomponent_entry/iamf_param_definition:name=demixing_info|subcomponent_entry/iamf_param_definition:nb_subblocks=1|subcom
 ponent_entry/iamf_param_definition:type=1|subcomponent_entry/iamf_param_definition:parameter_id=998|subcomponent_entry/iamf_param_definition:parameter_rate=44100|subcomponent_entry/iamf_param_definition:duration=4608|subcomponent_entry/iamf_param_definition:constant_subblock_duration=4608|piece_entry/iamf_demixing_info:subblock_duration=4608|piece_entry/iamf_demixing_info:dmixp_mode=1|disposition:default=0|disposition:dub=0|disposition:original=0|disposition:comment=0|disposition:lyrics=0|disposition:karaoke=0|disposition:forced=0|disposition:hearing_impaired=0|disposition:visual_impaired=0|disposition:clean_effects=0|disposition:attached_pic=0|disposition:timed_thumbnails=0|disposition:non_diegetic=0|disposition:captions=0|disposition:descriptions=0|disposition:metadata=0|disposition:dependent=0|disposition:still_image=0|disposition:multilayer=0|tag:language=und|tag:handler_name=SoundHandler|tag:vendor_id=[0][0][0][0]|stream|index=0|id=0x0|disposition:default=1|disposition:dub=0|di
 sposition:original=0|disposition:comment=0|disposition:lyrics=0|disposition:karaoke=0|disposition:forced=0|disposition:hearing_impaired=0|disposition:visual_impaired=0|disposition:clean_effects=0|disposition:attached_pic=0|disposition:timed_thumbnails=0|disposition:non_diegetic=0|disposition:captions=0|disposition:descriptions=0|disposition:metadata=0|disposition:dependent=0|disposition:still_image=0|disposition:multilayer=0stream|index=1|id=0x1|disposition:default=0|disposition:dub=0|disposition:original=0|disposition:comment=0|disposition:lyrics=0|disposition:karaoke=0|disposition:forced=0|disposition:hearing_impaired=0|disposition:visual_impaired=0|disposition:clean_effects=0|disposition:attached_pic=0|disposition:timed_thumbnails=0|disposition:non_diegetic=0|disposition:captions=0|disposition:descriptions=0|disposition:metadata=0|disposition:dependent=1|disposition:still_image=0|disposition:multilayer=0stream|index=2|id=0x2|disposition:default=0|disposition:dub=0|disposition:ori
 ginal=0|disposition:comment=0|disposition:lyrics=0|disposition:karaoke=0|disposition:forced=0|disposition:hearing_impaired=0|disposition:visual_impaired=0|disposition:clean_effects=0|disposition:attached_pic=0|disposition:timed_thumbnails=0|disposition:non_diegetic=0|disposition:captions=0|disposition:descriptions=0|disposition:metadata=0|disposition:dependent=1|disposition:still_image=0|disposition:multilayer=0stream|index=3|id=0x3|disposition:default=0|disposition:dub=0|disposition:original=0|disposition:comment=0|disposition:lyrics=0|disposition:karaoke=0|disposition:forced=0|disposition:hearing_impaired=0|disposition:visual_impaired=0|disposition:clean_effects=0|disposition:attached_pic=0|disposition:timed_thumbnails=0|disposition:non_diegetic=0|disposition:captions=0|disposition:descriptions=0|disposition:metadata=0|disposition:dependent=1|disposition:still_image=0|disposition:multilayer=0stream|index=4|id=0x4|disposition:default=0|disposition:dub=0|disposition:original=0|dispo
 sition:comment=0|disposition:lyrics=0|disposition:karaoke=0|disposition:forced=0|disposition:hearing_impaired=0|disposition:visual_impaired=0|disposition:clean_effects=0|disposition:attached_pic=0|disposition:timed_thumbnails=0|disposition:non_diegetic=0|disposition:captions=0|disposition:descriptions=0|disposition:metadata=0|disposition:dependent=1|disposition:still_image=0|disposition:multilayer=0stream|index=5|id=0x5|disposition:default=0|disposition:dub=0|disposition:original=0|disposition:comment=0|disposition:lyrics=0|disposition:karaoke=0|disposition:forced=0|disposition:hearing_impaired=0|disposition:visual_impaired=0|disposition:clean_effects=0|disposition:attached_pic=0|disposition:timed_thumbnails=0|disposition:non_diegetic=0|disposition:captions=0|disposition:descriptions=0|disposition:metadata=0|disposition:dependent=1|disposition:still_image=0|disposition:multilayer=0
+stream_group|index=1|id=0x2|nb_streams=6|type=IAMF Mix Presentation|component_entry/iamf_mix_presentation:nb_submixes=1|subcomponent_entry/iamf_annotations:en-us=Mix_Presentation|subcomponent_entry/iamf_submix:nb_elements=1|subcomponent_entry/iamf_submix:nb_layouts=4|subcomponent_entry/iamf_submix:default_mix_gain=256/256|piece_entry/iamf_submix_element:stream_id=1|piece_entry/iamf_submix_element:default_mix_gain=0/256|piece_entry/iamf_submix_element:headphones_rendering_mode=0|subpiece_entry/iamf_annotations:en-us=Scalable_Submix|subpiece_entry/iamf_param_definition:name=element_mix_config|subpiece_entry/iamf_param_definition:nb_subblocks=0|subpiece_entry/iamf_param_definition:type=0|subpiece_entry/iamf_param_definition:parameter_id=100|subpiece_entry/iamf_param_definition:parameter_rate=48000|subpiece_entry/iamf_param_definition:duration=0|subpiece_entry/iamf_param_definition:constant_subblock_duration=0|piece_entry/iamf_param_definition:name=output_mix_config|piece_entry/iamf_par
 am_definition:nb_subblocks=0|piece_entry/iamf_param_definition:type=0|piece_entry/iamf_param_definition:parameter_id=100|piece_entry/iamf_param_definition:parameter_rate=48000|piece_entry/iamf_param_definition:duration=0|piece_entry/iamf_param_definition:constant_subblock_duration=0|piece_entry/iamf_submix_layout:sound_system=stereo|piece_entry/iamf_submix_layout:integrated_loudness=256/256|piece_entry/iamf_submix_layout:digital_peak=0/256|piece_entry/iamf_submix_layout:true_peak=0/1|piece_entry/iamf_submix_layout:dialogue_anchored_loudness=0/1|piece_entry/iamf_submix_layout:album_anchored_loudness=0/1|piece_entry/iamf_submix_layout:sound_system=5.1|piece_entry/iamf_submix_layout:integrated_loudness=0/256|piece_entry/iamf_submix_layout:digital_peak=0/256|piece_entry/iamf_submix_layout:true_peak=0/1|piece_entry/iamf_submix_layout:dialogue_anchored_loudness=0/1|piece_entry/iamf_submix_layout:album_anchored_loudness=0/1|piece_entry/iamf_submix_layout:sound_system=5.1.2|piece_entry/iamf
 _submix_layout:integrated_loudness=0/256|piece_entry/iamf_submix_layout:digital_peak=0/256|piece_entry/iamf_submix_layout:true_peak=0/1|piece_entry/iamf_submix_layout:dialogue_anchored_loudness=0/1|piece_entry/iamf_submix_layout:album_anchored_loudness=0/1|piece_entry/iamf_submix_layout:sound_system=5.1.4|piece_entry/iamf_submix_layout:integrated_loudness=0/256|piece_entry/iamf_submix_layout:digital_peak=0/256|piece_entry/iamf_submix_layout:true_peak=0/1|piece_entry/iamf_submix_layout:dialogue_anchored_loudness=0/1|piece_entry/iamf_submix_layout:album_anchored_loudness=0/1|disposition:default=0|disposition:dub=0|disposition:original=0|disposition:comment=0|disposition:lyrics=0|disposition:karaoke=0|disposition:forced=0|disposition:hearing_impaired=0|disposition:visual_impaired=0|disposition:clean_effects=0|disposition:attached_pic=0|disposition:timed_thumbnails=0|disposition:non_diegetic=0|disposition:captions=0|disposition:descriptions=0|disposition:metadata=0|disposition:dependent
 =0|disposition:still_image=0|disposition:multilayer=0|tag:language=und|tag:handler_name=SoundHandler|tag:vendor_id=[0][0][0][0]|stream|index=0|id=0x0|disposition:default=1|disposition:dub=0|disposition:original=0|disposition:comment=0|disposition:lyrics=0|disposition:karaoke=0|disposition:forced=0|disposition:hearing_impaired=0|disposition:visual_impaired=0|disposition:clean_effects=0|disposition:attached_pic=0|disposition:timed_thumbnails=0|disposition:non_diegetic=0|disposition:captions=0|disposition:descriptions=0|disposition:metadata=0|disposition:dependent=0|disposition:still_image=0|disposition:multilayer=0stream|index=1|id=0x1|disposition:default=0|disposition:dub=0|disposition:original=0|disposition:comment=0|disposition:lyrics=0|disposition:karaoke=0|disposition:forced=0|disposition:hearing_impaired=0|disposition:visual_impaired=0|disposition:clean_effects=0|disposition:attached_pic=0|disposition:timed_thumbnails=0|disposition:non_diegetic=0|disposition:captions=0|dispositi
 on:descriptions=0|disposition:metadata=0|disposition:dependent=1|disposition:still_image=0|disposition:multilayer=0stream|index=2|id=0x2|disposition:default=0|disposition:dub=0|disposition:original=0|disposition:comment=0|disposition:lyrics=0|disposition:karaoke=0|disposition:forced=0|disposition:hearing_impaired=0|disposition:visual_impaired=0|disposition:clean_effects=0|disposition:attached_pic=0|disposition:timed_thumbnails=0|disposition:non_diegetic=0|disposition:captions=0|disposition:descriptions=0|disposition:metadata=0|disposition:dependent=1|disposition:still_image=0|disposition:multilayer=0stream|index=3|id=0x3|disposition:default=0|disposition:dub=0|disposition:original=0|disposition:comment=0|disposition:lyrics=0|disposition:karaoke=0|disposition:forced=0|disposition:hearing_impaired=0|disposition:visual_impaired=0|disposition:clean_effects=0|disposition:attached_pic=0|disposition:timed_thumbnails=0|disposition:non_diegetic=0|disposition:captions=0|disposition:descriptio
 ns=0|disposition:metadata=0|disposition:dependent=1|disposition:still_image=0|disposition:multilayer=0stream|index=4|id=0x4|disposition:default=0|disposition:dub=0|disposition:original=0|disposition:comment=0|disposition:lyrics=0|disposition:karaoke=0|disposition:forced=0|disposition:hearing_impaired=0|disposition:visual_impaired=0|disposition:clean_effects=0|disposition:attached_pic=0|disposition:timed_thumbnails=0|disposition:non_diegetic=0|disposition:captions=0|disposition:descriptions=0|disposition:metadata=0|disposition:dependent=1|disposition:still_image=0|disposition:multilayer=0stream|index=5|id=0x5|disposition:default=0|disposition:dub=0|disposition:original=0|disposition:comment=0|disposition:lyrics=0|disposition:karaoke=0|disposition:forced=0|disposition:hearing_impaired=0|disposition:visual_impaired=0|disposition:clean_effects=0|disposition:attached_pic=0|disposition:timed_thumbnails=0|disposition:non_diegetic=0|disposition:captions=0|disposition:descriptions=0|disposit
 ion:metadata=0|disposition:dependent=1|disposition:still_image=0|disposition:multilayer=0
+stream|index=0|id=0x0
+stream|index=1|id=0x1
+stream|index=2|id=0x2
+stream|index=3|id=0x3
+stream|index=4|id=0x4
+stream|index=5|id=0x5
+stream|index=6|id=0x6
-- 
2.45.2

_______________________________________________
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] 3+ messages in thread

* Re: [FFmpeg-devel] [PATCH 1/2] avformat/mov: fix track handling when mixing IAMF and video tracks
  2024-08-01 15:10 [FFmpeg-devel] [PATCH 1/2] avformat/mov: fix track handling when mixing IAMF and video tracks James Almer
  2024-08-01 15:10 ` [FFmpeg-devel] [PATCH 2/2] fate/mov: add an IAMF+video muxing test James Almer
@ 2024-08-04 12:57 ` James Almer
  1 sibling, 0 replies; 3+ messages in thread
From: James Almer @ 2024-08-04 12:57 UTC (permalink / raw)
  To: ffmpeg-devel

On 8/1/2024 12:10 PM, James Almer wrote:
> Fixes crashes when muxing the two together.
> 
> Signed-off-by: James Almer <jamrial@gmail.com>
> ---
>   libavformat/movenc.c | 37 ++++++++++++++++++++++++++++---------
>   1 file changed, 28 insertions(+), 9 deletions(-)
> 

Will apply.
_______________________________________________
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] 3+ messages in thread

end of thread, other threads:[~2024-08-04 12:58 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-08-01 15:10 [FFmpeg-devel] [PATCH 1/2] avformat/mov: fix track handling when mixing IAMF and video tracks James Almer
2024-08-01 15:10 ` [FFmpeg-devel] [PATCH 2/2] fate/mov: add an IAMF+video muxing test James Almer
2024-08-04 12:57 ` [FFmpeg-devel] [PATCH 1/2] avformat/mov: fix track handling when mixing IAMF and video tracks 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