diff mbox series

[FFmpeg-devel,07/27] fate/caf: Add remux tests

Message ID AM7PR03MB6660CB3EB712F1A29597D5998FA39@AM7PR03MB6660.eurprd03.prod.outlook.com
State Accepted
Headers show
Series [FFmpeg-devel,01/27] avformat/astenc: Simplify writing padding | expand

Commit Message

Andreas Rheinhardt Sept. 23, 2021, 3:28 p.m. UTC
These test both the muxer as well as the demuxer.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
 tests/fate/caf.mak                 | 30 +++++++++++++++++++++++++++++-
 tests/ref/fate/caf-alac-remux      | 28 ++++++++++++++++++++++++++++
 tests/ref/fate/caf-amr_nb-remux    | 19 +++++++++++++++++++
 tests/ref/fate/caf-mace6-remux     | 20 ++++++++++++++++++++
 tests/ref/fate/caf-pcm_s24-remux   | 23 +++++++++++++++++++++++
 tests/ref/fate/caf-pcm_s24le-remux | 23 +++++++++++++++++++++++
 tests/ref/fate/caf-qdm2-remux      | 12 ++++++++++++
 7 files changed, 154 insertions(+), 1 deletion(-)
 create mode 100644 tests/ref/fate/caf-alac-remux
 create mode 100644 tests/ref/fate/caf-amr_nb-remux
 create mode 100644 tests/ref/fate/caf-mace6-remux
 create mode 100644 tests/ref/fate/caf-pcm_s24-remux
 create mode 100644 tests/ref/fate/caf-pcm_s24le-remux
 create mode 100644 tests/ref/fate/caf-qdm2-remux

Comments

Andreas Rheinhardt Sept. 27, 2021, 5:25 a.m. UTC | #1
Andreas Rheinhardt:
> These test both the muxer as well as the demuxer.
> 
> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
> ---
>  tests/fate/caf.mak                 | 30 +++++++++++++++++++++++++++++-
>  tests/ref/fate/caf-alac-remux      | 28 ++++++++++++++++++++++++++++
>  tests/ref/fate/caf-amr_nb-remux    | 19 +++++++++++++++++++
>  tests/ref/fate/caf-mace6-remux     | 20 ++++++++++++++++++++
>  tests/ref/fate/caf-pcm_s24-remux   | 23 +++++++++++++++++++++++
>  tests/ref/fate/caf-pcm_s24le-remux | 23 +++++++++++++++++++++++
>  tests/ref/fate/caf-qdm2-remux      | 12 ++++++++++++
>  7 files changed, 154 insertions(+), 1 deletion(-)
>  create mode 100644 tests/ref/fate/caf-alac-remux
>  create mode 100644 tests/ref/fate/caf-amr_nb-remux
>  create mode 100644 tests/ref/fate/caf-mace6-remux
>  create mode 100644 tests/ref/fate/caf-pcm_s24-remux
>  create mode 100644 tests/ref/fate/caf-pcm_s24le-remux
>  create mode 100644 tests/ref/fate/caf-qdm2-remux
> 
> diff --git a/tests/fate/caf.mak b/tests/fate/caf.mak
> index e921fcc297..581128c670 100644
> --- a/tests/fate/caf.mak
> +++ b/tests/fate/caf.mak
> @@ -1,5 +1,33 @@
>  FATE_CAF_FFMPEG-$(call ALLYES, CAF_DEMUXER CRC_MUXER) += fate-caf-demux
>  fate-caf-demux: CMD = crc -i $(TARGET_SAMPLES)/caf/caf-pcm16.caf -c copy
>  
> +FATE_CAF_REMUX_FFPROBE-$(CONFIG_MOV_DEMUXER) += fate-caf-alac-remux
> +fate-caf-alac-remux: CMD = transcode m4a $(TARGET_SAMPLES)/lossless-audio/inside.m4a caf "-map 0:a -c copy" "-c copy -t 0.2" "" "-show_entries format_tags"
> +
> +FATE_CAF_REMUX-$(CONFIG_AMR_DEMUXER) += fate-caf-amr_nb-remux
> +fate-caf-amr_nb-remux: CMD = transcode amr $(TARGET_SAMPLES)/amrnb/4.75k.amr caf "-c copy" "-c copy -t 0.2"
> +
> +FATE_CAF_REMUX-$(CONFIG_MOV_DEMUXER) += fate-caf-qdm2-remux
> +fate-caf-qdm2-remux: CMD = transcode mov $(TARGET_SAMPLES)/qt-surge-suite/surge-2-16-B-QDM2.mov caf "-c copy" "-c copy -t 0.2"
> +
> +FATE_CAF_REMUX-$(CONFIG_WAV_DEMUXER) += fate-caf-pcm_s24le-remux
> +fate-caf-pcm_s24le-remux: CMD = transcode wav $(TARGET_SAMPLES)/audio-reference/divertimenti_2ch_96kHz_s24.wav caf "-c copy" "-c copy -t 0.05"
> +
> +FATE_CAF_REMUX-$(call ALLYES, WAV_DEMUXER PCM_S24LE_DECODER \
> +                              PCM_S24BE_ENCODER)            \
> +                              += fate-caf-pcm_s24-remux
> +fate-caf-pcm_s24-remux: CMD = transcode wav $(TARGET_SAMPLES)/audio-reference/divertimenti_2ch_96kHz_s24.wav caf "-c pcm_s24be" "-c copy -t 0.05"
> +
> +FATE_CAF_REMUX-$(CONFIG_MOV_DEMUXER) += fate-caf-mace6-remux
> +fate-caf-mace6-remux: CMD = transcode mov $(TARGET_SAMPLES)/qtrle/Animation-16Greys.mov caf "-map 0:a -c copy" "-c copy -t 0.003"
> +
> +FATE_CAF_FFMPEG-$(call ALLYES, FILE_PROTOCOL CAF_MUXER CAF_DEMUXER \
> +                               FRAMECRC_MUXER PIPE_PROTOCOL)       \
> +                               += $(FATE_CAF_REMUX-yes)
> +FATE_CAF_FFMPEG_FFPROBE-$(call ALLYES, FILE_PROTOCOL CAF_MUXER    \
> +                                       CAF_DEMUXER FRAMECRC_MUXER \
> +                                       PIPE_PROTOCOL)             \
> +                                      += $(FATE_CAF_REMUX_FFPROBE-yes)
>  FATE_SAMPLES_FFMPEG         += $(FATE_CAF_FFMPEG-yes)
> -fate-caf: $(FATE_CAF_FFMPEG-yes)
> +FATE_SAMPLES_FFMPEG_FFPROBE += $(FATE_CAF_FFMPEG_FFPROBE-yes)
> +fate-caf: $(FATE_CAF_FFMPEG-yes) $(FATE_CAF_FFMPEG_FFPROBE-yes)
> diff --git a/tests/ref/fate/caf-alac-remux b/tests/ref/fate/caf-alac-remux
> new file mode 100644
> index 0000000000..5c1b2d1eee
> --- /dev/null
> +++ b/tests/ref/fate/caf-alac-remux
> @@ -0,0 +1,28 @@
> +e0a94c78e9680398adce2ac72d682f48 *tests/data/fate/caf-alac-remux.caf
> +1292701 tests/data/fate/caf-alac-remux.caf
> +#extradata 0:       36, 0x562b05d8
> +#tb 0: 1/44100
> +#media_type 0: audio
> +#codec_id 0: alac
> +#sample_rate 0: 44100
> +#channel_layout 0: 3
> +#channel_layout_name 0: stereo
> +0,          0,          0,        0,       32, 0xa0af0dfe
> +0,       4096,       4096,        0,     6701, 0xa9ddc14e
> +0,       8192,       8192,        0,     6639, 0x3ccda8d6
> +[FORMAT]
> +TAG:major_brand=M4A 

The commit hocks did not like the trailing whitespace in the above line.
I have therefore adapted the test to remove the major_brand metadata
completely, thereby also providing coverage for removing metadata on the
command line. This was previously uncovered.

> +TAG:minor_version=0
> +TAG:compatible_brands=M4A mp42isom
> +TAG:disc=1
> +TAG:title=Inside
> +TAG:compilation=1
> +TAG:gapless_playback=0
> +TAG:track=5/13
> +TAG:Encoding Params=vers
> +TAG:iTunNORM= 000004DF 000004C2 00001E64 00001AB3 00000FB9 00000FB9 00006480 00006480 00000FB9 00000B52
> +TAG:artist=Maxwell Strait
> +TAG:album_artist=Maxwell Strait
> +TAG:album=OpenMusic
> +TAG:genre=Rock
> +[/FORMAT]
diff mbox series

Patch

diff --git a/tests/fate/caf.mak b/tests/fate/caf.mak
index e921fcc297..581128c670 100644
--- a/tests/fate/caf.mak
+++ b/tests/fate/caf.mak
@@ -1,5 +1,33 @@ 
 FATE_CAF_FFMPEG-$(call ALLYES, CAF_DEMUXER CRC_MUXER) += fate-caf-demux
 fate-caf-demux: CMD = crc -i $(TARGET_SAMPLES)/caf/caf-pcm16.caf -c copy
 
+FATE_CAF_REMUX_FFPROBE-$(CONFIG_MOV_DEMUXER) += fate-caf-alac-remux
+fate-caf-alac-remux: CMD = transcode m4a $(TARGET_SAMPLES)/lossless-audio/inside.m4a caf "-map 0:a -c copy" "-c copy -t 0.2" "" "-show_entries format_tags"
+
+FATE_CAF_REMUX-$(CONFIG_AMR_DEMUXER) += fate-caf-amr_nb-remux
+fate-caf-amr_nb-remux: CMD = transcode amr $(TARGET_SAMPLES)/amrnb/4.75k.amr caf "-c copy" "-c copy -t 0.2"
+
+FATE_CAF_REMUX-$(CONFIG_MOV_DEMUXER) += fate-caf-qdm2-remux
+fate-caf-qdm2-remux: CMD = transcode mov $(TARGET_SAMPLES)/qt-surge-suite/surge-2-16-B-QDM2.mov caf "-c copy" "-c copy -t 0.2"
+
+FATE_CAF_REMUX-$(CONFIG_WAV_DEMUXER) += fate-caf-pcm_s24le-remux
+fate-caf-pcm_s24le-remux: CMD = transcode wav $(TARGET_SAMPLES)/audio-reference/divertimenti_2ch_96kHz_s24.wav caf "-c copy" "-c copy -t 0.05"
+
+FATE_CAF_REMUX-$(call ALLYES, WAV_DEMUXER PCM_S24LE_DECODER \
+                              PCM_S24BE_ENCODER)            \
+                              += fate-caf-pcm_s24-remux
+fate-caf-pcm_s24-remux: CMD = transcode wav $(TARGET_SAMPLES)/audio-reference/divertimenti_2ch_96kHz_s24.wav caf "-c pcm_s24be" "-c copy -t 0.05"
+
+FATE_CAF_REMUX-$(CONFIG_MOV_DEMUXER) += fate-caf-mace6-remux
+fate-caf-mace6-remux: CMD = transcode mov $(TARGET_SAMPLES)/qtrle/Animation-16Greys.mov caf "-map 0:a -c copy" "-c copy -t 0.003"
+
+FATE_CAF_FFMPEG-$(call ALLYES, FILE_PROTOCOL CAF_MUXER CAF_DEMUXER \
+                               FRAMECRC_MUXER PIPE_PROTOCOL)       \
+                               += $(FATE_CAF_REMUX-yes)
+FATE_CAF_FFMPEG_FFPROBE-$(call ALLYES, FILE_PROTOCOL CAF_MUXER    \
+                                       CAF_DEMUXER FRAMECRC_MUXER \
+                                       PIPE_PROTOCOL)             \
+                                      += $(FATE_CAF_REMUX_FFPROBE-yes)
 FATE_SAMPLES_FFMPEG         += $(FATE_CAF_FFMPEG-yes)
-fate-caf: $(FATE_CAF_FFMPEG-yes)
+FATE_SAMPLES_FFMPEG_FFPROBE += $(FATE_CAF_FFMPEG_FFPROBE-yes)
+fate-caf: $(FATE_CAF_FFMPEG-yes) $(FATE_CAF_FFMPEG_FFPROBE-yes)
diff --git a/tests/ref/fate/caf-alac-remux b/tests/ref/fate/caf-alac-remux
new file mode 100644
index 0000000000..5c1b2d1eee
--- /dev/null
+++ b/tests/ref/fate/caf-alac-remux
@@ -0,0 +1,28 @@ 
+e0a94c78e9680398adce2ac72d682f48 *tests/data/fate/caf-alac-remux.caf
+1292701 tests/data/fate/caf-alac-remux.caf
+#extradata 0:       36, 0x562b05d8
+#tb 0: 1/44100
+#media_type 0: audio
+#codec_id 0: alac
+#sample_rate 0: 44100
+#channel_layout 0: 3
+#channel_layout_name 0: stereo
+0,          0,          0,        0,       32, 0xa0af0dfe
+0,       4096,       4096,        0,     6701, 0xa9ddc14e
+0,       8192,       8192,        0,     6639, 0x3ccda8d6
+[FORMAT]
+TAG:major_brand=M4A 
+TAG:minor_version=0
+TAG:compatible_brands=M4A mp42isom
+TAG:disc=1
+TAG:title=Inside
+TAG:compilation=1
+TAG:gapless_playback=0
+TAG:track=5/13
+TAG:Encoding Params=vers
+TAG:iTunNORM= 000004DF 000004C2 00001E64 00001AB3 00000FB9 00000FB9 00006480 00006480 00000FB9 00000B52
+TAG:artist=Maxwell Strait
+TAG:album_artist=Maxwell Strait
+TAG:album=OpenMusic
+TAG:genre=Rock
+[/FORMAT]
diff --git a/tests/ref/fate/caf-amr_nb-remux b/tests/ref/fate/caf-amr_nb-remux
new file mode 100644
index 0000000000..0eed36a5cb
--- /dev/null
+++ b/tests/ref/fate/caf-amr_nb-remux
@@ -0,0 +1,19 @@ 
+a00bd18f70b66286e67d84f0df034a48 *tests/data/fate/caf-amr_nb-remux.caf
+4145 tests/data/fate/caf-amr_nb-remux.caf
+#extradata 0:       29, 0x6b3407d3
+#tb 0: 1/8000
+#media_type 0: audio
+#codec_id 0: amr_nb
+#sample_rate 0: 8000
+#channel_layout 0: 4
+#channel_layout_name 0: mono
+0,          0,          0,      160,       13, 0x2bf906f6
+0,        160,        160,      160,       13, 0x28bd0756
+0,        320,        320,      160,       13, 0x2b2706f7
+0,        480,        480,      160,       13, 0x370d0858
+0,        640,        640,      160,       13, 0x148a02de
+0,        800,        800,      160,       13, 0x201104b7
+0,        960,        960,      160,       13, 0x2e690704
+0,       1120,       1120,      160,       13, 0x2f640726
+0,       1280,       1280,      160,       13, 0x31af0767
+0,       1440,       1440,      160,       13, 0x273a060f
diff --git a/tests/ref/fate/caf-mace6-remux b/tests/ref/fate/caf-mace6-remux
new file mode 100644
index 0000000000..3a0499d793
--- /dev/null
+++ b/tests/ref/fate/caf-mace6-remux
@@ -0,0 +1,20 @@ 
+23cdb127d4a7ab912611c2eb20909840 *tests/data/fate/caf-mace6-remux.caf
+11483 tests/data/fate/caf-mace6-remux.caf
+#tb 0: 1/22050
+#media_type 0: audio
+#codec_id 0: mace6
+#sample_rate 0: 22050
+#channel_layout 0: 4
+#channel_layout_name 0: mono
+0,          0,          0,        6,        1, 0x00900090
+0,          6,          6,        6,        1, 0x00870087
+0,         12,         12,        6,        1, 0x00ff00ff
+0,         18,         18,        6,        1, 0x00ff00ff
+0,         24,         24,        6,        1, 0x00ff00ff
+0,         30,         30,        6,        1, 0x00f800f8
+0,         36,         36,        6,        1, 0x00fe00fe
+0,         42,         42,        6,        1, 0x00d800d8
+0,         48,         48,        6,        1, 0x00f800f8
+0,         54,         54,        6,        1, 0x00fe00fe
+0,         60,         60,        6,        1, 0x00fe00fe
+0,         66,         66,        6,        1, 0x00df00df
diff --git a/tests/ref/fate/caf-pcm_s24-remux b/tests/ref/fate/caf-pcm_s24-remux
new file mode 100644
index 0000000000..bb3136ef7d
--- /dev/null
+++ b/tests/ref/fate/caf-pcm_s24-remux
@@ -0,0 +1,23 @@ 
+d696d9dc23a82c51c4761f5792e7fa37 *tests/data/fate/caf-pcm_s24-remux.caf
+11520092 tests/data/fate/caf-pcm_s24-remux.caf
+#tb 0: 1/192000
+#media_type 0: audio
+#codec_id 0: pcm_s24be
+#sample_rate 0: 192000
+#channel_layout 0: 3
+#channel_layout_name 0: stereo
+0,          0,          0,      682,     4092, 0x71f10ea0
+0,        682,        682,      682,     4092, 0x51852317
+0,       1364,       1364,      682,     4092, 0xc8e2693d
+0,       2046,       2046,      682,     4092, 0x8df13008
+0,       2728,       2728,      682,     4092, 0xc56bdf7f
+0,       3410,       3410,      682,     4092, 0x4ac2c0f9
+0,       4092,       4092,      682,     4092, 0x11a50650
+0,       4774,       4774,      682,     4092, 0x0a3837f4
+0,       5456,       5456,      682,     4092, 0xff0a3ce7
+0,       6138,       6138,      682,     4092, 0x42d2c983
+0,       6820,       6820,      682,     4092, 0x2adbf4ea
+0,       7502,       7502,      682,     4092, 0x86d4f0a5
+0,       8184,       8184,      682,     4092, 0x5f35d5f7
+0,       8866,       8866,      682,     4092, 0xd3f27234
+0,       9548,       9548,      682,     4092, 0xb3a97ff5
diff --git a/tests/ref/fate/caf-pcm_s24le-remux b/tests/ref/fate/caf-pcm_s24le-remux
new file mode 100644
index 0000000000..9520e423cd
--- /dev/null
+++ b/tests/ref/fate/caf-pcm_s24le-remux
@@ -0,0 +1,23 @@ 
+ee0072a92044cbad68795cf93546c517 *tests/data/fate/caf-pcm_s24le-remux.caf
+11520092 tests/data/fate/caf-pcm_s24le-remux.caf
+#tb 0: 1/192000
+#media_type 0: audio
+#codec_id 0: pcm_s24le
+#sample_rate 0: 192000
+#channel_layout 0: 3
+#channel_layout_name 0: stereo
+0,          0,          0,      682,     4092, 0xa6320ea0
+0,        682,        682,      682,     4092, 0x27732317
+0,       1364,       1364,      682,     4092, 0x5899693d
+0,       2046,       2046,      682,     4092, 0x6fa63008
+0,       2728,       2728,      682,     4092, 0x22b0df7f
+0,       3410,       3410,      682,     4092, 0x5512c0f9
+0,       4092,       4092,      682,     4092, 0x11b90650
+0,       4774,       4774,      682,     4092, 0x9cb537f4
+0,       5456,       5456,      682,     4092, 0x7d1a3ce7
+0,       6138,       6138,      682,     4092, 0x0f56c983
+0,       6820,       6820,      682,     4092, 0x386bf4ea
+0,       7502,       7502,      682,     4092, 0x5924f0a5
+0,       8184,       8184,      682,     4092, 0x565fd5f7
+0,       8866,       8866,      682,     4092, 0x4d197234
+0,       9548,       9548,      682,     4092, 0x61e67ff5
diff --git a/tests/ref/fate/caf-qdm2-remux b/tests/ref/fate/caf-qdm2-remux
new file mode 100644
index 0000000000..a3bde1264b
--- /dev/null
+++ b/tests/ref/fate/caf-qdm2-remux
@@ -0,0 +1,12 @@ 
+2b71d78aa6c9d13a3c0dbbbebe885227 *tests/data/fate/caf-qdm2-remux.caf
+51228 tests/data/fate/caf-qdm2-remux.caf
+#extradata 0:       64, 0x10d20603
+#tb 0: 1/44100
+#media_type 0: audio
+#codec_id 0: qdm2
+#sample_rate 0: 44100
+#channel_layout 0: 3
+#channel_layout_name 0: stereo
+0,          0,          0,        0,      370, 0x4d1897fc
+0,       4096,       4096,        0,      370, 0xea999da0
+0,       8192,       8192,        0,      370, 0xca259462