This is an automated email from the git hooks/post-receive script. Git pushed a commit to branch master in repository ffmpeg.
commit 6223b7fa0b780aa90671240e109cfd94ba6d16ef Author: James Almer <[email protected]> AuthorDate: Sat Dec 27 17:13:56 2025 -0300 Commit: James Almer <[email protected]> CommitDate: Mon Dec 29 12:02:53 2025 -0300 tests/fate/iamf: add tests for Projection mode ambisonic Audio Elements Signed-off-by: James Almer <[email protected]> --- tests/fate/iamf.mak | 20 ++++++ ...amf-ambisonic_1 => iamf-ambisonic_1-projection} | 7 +- ...f-5_1-copy => iamf-ambisonic_1-projection-copy} | 74 ++++++---------------- ...-5_1-copy => iamf-ambisonic_1-projection-demux} | 74 ++++++---------------- .../audio_element-ambisonic_1-projection | 2 + 5 files changed, 62 insertions(+), 115 deletions(-) diff --git a/tests/fate/iamf.mak b/tests/fate/iamf.mak index eddea66ba1..a686be7952 100644 --- a/tests/fate/iamf.mak +++ b/tests/fate/iamf.mak @@ -48,6 +48,16 @@ fate-iamf-ambisonic_1: CMD = transcode wav $(SRC) iamf "-auto_conversion_filters -streamid 0:0 -streamid 1:1 -streamid 2:2 -streamid 3:3 -map [MONO0] -map [MONO1] -map [MONO2] -map [MONO3] -c:a flac -t 1" "-c:a copy -map 0" \ "-show_entries stream_group=index,id,nb_streams,type:stream_group_components:stream_group_stream=index,id:stream_group_stream_disposition" +FATE_IAMF-$(call TRANSCODE, FLAC, IAMF, WAV_DEMUXER PCM_S16LE_DECODER ARESAMPLE_FILTER) += fate-iamf-ambisonic_1-projection +fate-iamf-ambisonic_1-projection: tests/data/asynth-44100-4.wav tests/data/filtergraphs/iamf_ambisonic_1 tests/data/streamgroups/audio_element-ambisonic_1-projection tests/data/streamgroups/mix_presentation-ambisonic_1 +fate-iamf-ambisonic_1-projection: SRC = $(TARGET_PATH)/tests/data/asynth-44100-4.wav +fate-iamf-ambisonic_1-projection: CMD = transcode wav $(SRC) iamf "-auto_conversion_filters \ + -/filter_complex $(TARGET_PATH)/tests/data/filtergraphs/iamf_ambisonic_1 \ + -/stream_group $(TARGET_PATH)/tests/data/streamgroups/audio_element-ambisonic_1-projection \ + -/stream_group $(TARGET_PATH)/tests/data/streamgroups/mix_presentation-ambisonic_1 \ + -streamid 0:0 -streamid 1:1 -streamid 2:2 -streamid 3:3 -map [MONO0] -map [MONO1] -map [MONO2] -map [MONO3] -c:a flac -t 1" "-c:a copy -map 0" \ + "-show_entries stream_group=index,id,nb_streams,type:stream_group_components:stream_group_stream=index,id:stream_group_stream_disposition" + FATE_IAMF_SAMPLES-$(call FRAMECRC, IAMF, OPUS) += fate-iamf-stereo-demux fate-iamf-stereo-demux: CMD = stream_demux iamf $(TARGET_SAMPLES)/iamf/test_000076.iamf "" \ "-c:a copy -frames:a 0 -map 0:g:\#42" \ @@ -63,6 +73,16 @@ fate-iamf-5_1-copy: CMD = stream_remux iamf $(TARGET_SAMPLES)/iamf/test_000059.i "-map 0 -stream_group map=0=0:st=0:st=1:st=2:st=3 -stream_group map=0=1:stg=0 -streamid 0:0 -streamid 1:1 -streamid 2:2 -streamid 3:3" "" "-c:a copy -frames:a 0 -map 0:g:i:42" \ "-show_entries stream_group=index,id,nb_streams,type:stream_group_components:stream_group_stream=index,id:stream_group_stream_disposition" +FATE_IAMF_SAMPLES-$(call FRAMECRC, IAMF, OPUS) += fate-iamf-ambisonic_1-projection-demux +fate-iamf-ambisonic_1-projection-demux: CMD = stream_demux iamf $(TARGET_SAMPLES)/iamf/test_000113.iamf "" \ + "-c:a copy -frames:a 0 -map 0:g:\#300" \ + "-show_entries stream_group=index,id,nb_streams,type:stream_group_components:stream_group_stream=index,id:stream_group_stream_disposition" + +FATE_IAMF_SAMPLES-$(call REMUX, IAMF, OPUS_DECODER) += fate-iamf-ambisonic_1-projection-copy +fate-iamf-ambisonic_1-projection-copy: CMD = stream_remux iamf $(TARGET_SAMPLES)/iamf/test_000113.iamf "" iamf \ + "-map 0 -stream_group map=0=0:st=0:st=1:st=2:st=3 -stream_group map=0=1:stg=0 -streamid 0:0 -streamid 1:1 -streamid 2:2 -streamid 3:3" "" "-c:a copy -frames:a 0 -map 0:g:i:300" \ + "-show_entries stream_group=index,id,nb_streams,type:stream_group_components:stream_group_stream=index,id:stream_group_stream_disposition" + FATE_IAMF += $(FATE_IAMF-yes) FATE_IAMF_SAMPLES += $(FATE_IAMF_SAMPLES-yes) diff --git a/tests/ref/fate/iamf-ambisonic_1 b/tests/ref/fate/iamf-ambisonic_1-projection similarity index 96% copy from tests/ref/fate/iamf-ambisonic_1 copy to tests/ref/fate/iamf-ambisonic_1-projection index e43f891597..78b5a743b6 100644 --- a/tests/ref/fate/iamf-ambisonic_1 +++ b/tests/ref/fate/iamf-ambisonic_1-projection @@ -1,5 +1,5 @@ -c3751e6a2d85bd6a8318fe93b5754309 *tests/data/fate/iamf-ambisonic_1.iamf -57006 tests/data/fate/iamf-ambisonic_1.iamf +b87b28ca89da92d540047e8ad30bd470 *tests/data/fate/iamf-ambisonic_1-projection.iamf +57035 tests/data/fate/iamf-ambisonic_1-projection.iamf #extradata 0: 34, 0xad120cfe #extradata 1: 34, 0xad120cfe #extradata 2: 34, 0xad120cfe @@ -75,7 +75,8 @@ audio_element_type=1 default_w=0 [SUBCOMPONENT] channel_layout=ambisonic 1 -ambisonics_mode=0 +ambisonics_mode=1 +demixing_matrix=32767/32768 0/32768 0/32768 0/32768 0/32768 32767/32768 0/32768 0/32768 0/32768 0/32768 32767/32768 0/32768 0/32768 0/32768 0/32768 32767/32768 [/SUBCOMPONENT] [/COMPONENT] [STREAM] diff --git a/tests/ref/fate/iamf-5_1-copy b/tests/ref/fate/iamf-ambisonic_1-projection-copy similarity index 83% copy from tests/ref/fate/iamf-5_1-copy copy to tests/ref/fate/iamf-ambisonic_1-projection-copy index fe912d4ee7..f38d0f7117 100644 --- a/tests/ref/fate/iamf-5_1-copy +++ b/tests/ref/fate/iamf-ambisonic_1-projection-copy @@ -1,17 +1,17 @@ -#extradata 0: 19, 0x3a0e0490 -#extradata 1: 19, 0x3a0e0490 +#extradata 0: 19, 0x3a04048f +#extradata 1: 19, 0x3a04048f #extradata 2: 19, 0x3a04048f #extradata 3: 19, 0x3a04048f #tb 0: 1/48000 #media_type 0: audio #codec_id 0: opus #sample_rate 0: 48000 -#channel_layout_name 0: stereo +#channel_layout_name 0: mono #tb 1: 1/48000 #media_type 1: audio #codec_id 1: opus #sample_rate 1: 48000 -#channel_layout_name 1: stereo +#channel_layout_name 1: mono #tb 2: 1/48000 #media_type 2: audio #codec_id 2: opus @@ -28,49 +28,19 @@ id=0x12c nb_streams=4 type=IAMF Audio Element [COMPONENT] -nb_layers=2 -audio_element_type=0 +nb_layers=1 +audio_element_type=1 default_w=0 [SUBCOMPONENT] -channel_layout=stereo -output_gain_flags=0 -output_gain=0/1 -[/SUBCOMPONENT] -[SUBCOMPONENT] -channel_layout=6 channels (FL+FR+SL+SR+FC+LFE) -output_gain_flags=0 -output_gain=0/1 -[/SUBCOMPONENT] -[SUBCOMPONENT] -name=demixing_info -nb_subblocks=1 -type=1 -parameter_id=998 -parameter_rate=48000 -duration=960 -constant_subblock_duration=960 -[PIECE] -subblock_duration=960 -dmixp_mode=1 -[/PIECE] -[/SUBCOMPONENT] -[SUBCOMPONENT] -name=recon_gain_info -nb_subblocks=1 -type=2 -parameter_id=101 -parameter_rate=48000 -duration=960 -constant_subblock_duration=960 -[PIECE] -subblock_duration=960 -[/PIECE] +channel_layout=ambisonic 1 +ambisonics_mode=1 +demixing_matrix=32767/32768 0/32768 0/32768 0/32768 0/32768 32767/32768 0/32768 0/32768 0/32768 0/32768 32767/32768 0/32768 0/32768 0/32768 0/32768 32767/32768 [/SUBCOMPONENT] [/COMPONENT] [STREAM] index=0 id=0x0 -DISPOSITION:default=1 +DISPOSITION:default=0 DISPOSITION:dub=0 DISPOSITION:original=0 DISPOSITION:comment=0 @@ -86,7 +56,7 @@ DISPOSITION:non_diegetic=0 DISPOSITION:captions=0 DISPOSITION:descriptions=0 DISPOSITION:metadata=0 -DISPOSITION:dependent=0 +DISPOSITION:dependent=1 DISPOSITION:still_image=0 DISPOSITION:multilayer=0 [/STREAM] @@ -172,7 +142,7 @@ en-us=test_mix_pres [/SUBCOMPONENT] [SUBCOMPONENT] nb_elements=1 -nb_layouts=2 +nb_layouts=1 default_mix_gain=0/256 [PIECE] stream_id=300 @@ -185,7 +155,7 @@ en-us=test_sub_mix_0_audio_element_0 name=element_mix_config nb_subblocks=0 type=0 -parameter_id=100 +parameter_id=999 parameter_rate=48000 duration=0 constant_subblock_duration=0 @@ -195,23 +165,15 @@ constant_subblock_duration=0 name=output_mix_config nb_subblocks=0 type=0 -parameter_id=100 +parameter_id=998 parameter_rate=48000 duration=0 constant_subblock_duration=0 [/PIECE] [PIECE] sound_system=stereo -integrated_loudness=-5273/256 -digital_peak=-2197/256 -true_peak=0/1 -dialogue_anchored_loudness=0/1 -album_anchored_loudness=0/1 -[/PIECE] -[PIECE] -sound_system=5.1(side) -integrated_loudness=-5886/256 -digital_peak=-2845/256 +integrated_loudness=-2631/256 +digital_peak=0/256 true_peak=0/1 dialogue_anchored_loudness=0/1 album_anchored_loudness=0/1 @@ -221,7 +183,7 @@ album_anchored_loudness=0/1 [STREAM] index=0 id=0x0 -DISPOSITION:default=1 +DISPOSITION:default=0 DISPOSITION:dub=0 DISPOSITION:original=0 DISPOSITION:comment=0 @@ -237,7 +199,7 @@ DISPOSITION:non_diegetic=0 DISPOSITION:captions=0 DISPOSITION:descriptions=0 DISPOSITION:metadata=0 -DISPOSITION:dependent=0 +DISPOSITION:dependent=1 DISPOSITION:still_image=0 DISPOSITION:multilayer=0 [/STREAM] diff --git a/tests/ref/fate/iamf-5_1-copy b/tests/ref/fate/iamf-ambisonic_1-projection-demux similarity index 83% copy from tests/ref/fate/iamf-5_1-copy copy to tests/ref/fate/iamf-ambisonic_1-projection-demux index fe912d4ee7..f38d0f7117 100644 --- a/tests/ref/fate/iamf-5_1-copy +++ b/tests/ref/fate/iamf-ambisonic_1-projection-demux @@ -1,17 +1,17 @@ -#extradata 0: 19, 0x3a0e0490 -#extradata 1: 19, 0x3a0e0490 +#extradata 0: 19, 0x3a04048f +#extradata 1: 19, 0x3a04048f #extradata 2: 19, 0x3a04048f #extradata 3: 19, 0x3a04048f #tb 0: 1/48000 #media_type 0: audio #codec_id 0: opus #sample_rate 0: 48000 -#channel_layout_name 0: stereo +#channel_layout_name 0: mono #tb 1: 1/48000 #media_type 1: audio #codec_id 1: opus #sample_rate 1: 48000 -#channel_layout_name 1: stereo +#channel_layout_name 1: mono #tb 2: 1/48000 #media_type 2: audio #codec_id 2: opus @@ -28,49 +28,19 @@ id=0x12c nb_streams=4 type=IAMF Audio Element [COMPONENT] -nb_layers=2 -audio_element_type=0 +nb_layers=1 +audio_element_type=1 default_w=0 [SUBCOMPONENT] -channel_layout=stereo -output_gain_flags=0 -output_gain=0/1 -[/SUBCOMPONENT] -[SUBCOMPONENT] -channel_layout=6 channels (FL+FR+SL+SR+FC+LFE) -output_gain_flags=0 -output_gain=0/1 -[/SUBCOMPONENT] -[SUBCOMPONENT] -name=demixing_info -nb_subblocks=1 -type=1 -parameter_id=998 -parameter_rate=48000 -duration=960 -constant_subblock_duration=960 -[PIECE] -subblock_duration=960 -dmixp_mode=1 -[/PIECE] -[/SUBCOMPONENT] -[SUBCOMPONENT] -name=recon_gain_info -nb_subblocks=1 -type=2 -parameter_id=101 -parameter_rate=48000 -duration=960 -constant_subblock_duration=960 -[PIECE] -subblock_duration=960 -[/PIECE] +channel_layout=ambisonic 1 +ambisonics_mode=1 +demixing_matrix=32767/32768 0/32768 0/32768 0/32768 0/32768 32767/32768 0/32768 0/32768 0/32768 0/32768 32767/32768 0/32768 0/32768 0/32768 0/32768 32767/32768 [/SUBCOMPONENT] [/COMPONENT] [STREAM] index=0 id=0x0 -DISPOSITION:default=1 +DISPOSITION:default=0 DISPOSITION:dub=0 DISPOSITION:original=0 DISPOSITION:comment=0 @@ -86,7 +56,7 @@ DISPOSITION:non_diegetic=0 DISPOSITION:captions=0 DISPOSITION:descriptions=0 DISPOSITION:metadata=0 -DISPOSITION:dependent=0 +DISPOSITION:dependent=1 DISPOSITION:still_image=0 DISPOSITION:multilayer=0 [/STREAM] @@ -172,7 +142,7 @@ en-us=test_mix_pres [/SUBCOMPONENT] [SUBCOMPONENT] nb_elements=1 -nb_layouts=2 +nb_layouts=1 default_mix_gain=0/256 [PIECE] stream_id=300 @@ -185,7 +155,7 @@ en-us=test_sub_mix_0_audio_element_0 name=element_mix_config nb_subblocks=0 type=0 -parameter_id=100 +parameter_id=999 parameter_rate=48000 duration=0 constant_subblock_duration=0 @@ -195,23 +165,15 @@ constant_subblock_duration=0 name=output_mix_config nb_subblocks=0 type=0 -parameter_id=100 +parameter_id=998 parameter_rate=48000 duration=0 constant_subblock_duration=0 [/PIECE] [PIECE] sound_system=stereo -integrated_loudness=-5273/256 -digital_peak=-2197/256 -true_peak=0/1 -dialogue_anchored_loudness=0/1 -album_anchored_loudness=0/1 -[/PIECE] -[PIECE] -sound_system=5.1(side) -integrated_loudness=-5886/256 -digital_peak=-2845/256 +integrated_loudness=-2631/256 +digital_peak=0/256 true_peak=0/1 dialogue_anchored_loudness=0/1 album_anchored_loudness=0/1 @@ -221,7 +183,7 @@ album_anchored_loudness=0/1 [STREAM] index=0 id=0x0 -DISPOSITION:default=1 +DISPOSITION:default=0 DISPOSITION:dub=0 DISPOSITION:original=0 DISPOSITION:comment=0 @@ -237,7 +199,7 @@ DISPOSITION:non_diegetic=0 DISPOSITION:captions=0 DISPOSITION:descriptions=0 DISPOSITION:metadata=0 -DISPOSITION:dependent=0 +DISPOSITION:dependent=1 DISPOSITION:still_image=0 DISPOSITION:multilayer=0 [/STREAM] diff --git a/tests/streamgroups/audio_element-ambisonic_1-projection b/tests/streamgroups/audio_element-ambisonic_1-projection new file mode 100644 index 0000000000..18a75babd6 --- /dev/null +++ b/tests/streamgroups/audio_element-ambisonic_1-projection @@ -0,0 +1,2 @@ +type=iamf_audio_element:id=1:st=0:st=1:st=2:st=3:audio_element_type=scene, +layer=ch_layout=ambisonic 1:ambisonics_mode=projection:demixing_matrix=32767/32768|0/32768|0/32768|0/32768|0/32768|32767/32768|0/32768|0/32768|0/32768|0/32768|32767/32768|0/32768|0/32768|0/32768|0/32768|32767/32768, _______________________________________________ ffmpeg-cvslog mailing list -- [email protected] To unsubscribe send an email to [email protected]
