tests/matroska: Add test for remuxing annex B H.264 into Matroska

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
This commit is contained in:
Andreas Rheinhardt 2021-03-31 20:25:04 +02:00
parent 79ac8d5546
commit 0c7d02844c
2 changed files with 82 additions and 0 deletions

View File

@ -90,6 +90,23 @@ FATE_MATROSKA_FFMPEG_FFPROBE-$(call ALLYES, FILE_PROTOCOL MXF_DEMUXER \
+= fate-matroska-mastering-display-metadata
fate-matroska-mastering-display-metadata: CMD = transcode mxf $(TARGET_SAMPLES)/mxf/Meridian-Apple_ProResProxy-HDR10.mxf matroska "-map 0 -map 0:0 -c:v:0 copy -c:v:1 ffv1 -c:a:0 copy -bsf:a:0 noise=amount=3 -filter:a:1 aresample -c:a:1 pcm_s16be -bsf:a:1 noise=dropamount=4" "-map 0 -c copy" "" "-show_entries stream_side_data_list:stream=index,codec_name"
# This test tests remuxing annex B H.264 into Matroska. It also tests writing
# the correct interlaced flags and overriding the sample aspect ratio, leading
# to anamorphic video. Given that the input file has lots of filler material,
# the h264_metadata filter is used to remove it as well as the H.264 AUD.
# The video is decoded twice to show that this did not change the decoded
# output. Furthermore, this also tests writing PCM with bitdepth 32.
FATE_MATROSKA_FFMPEG_FFPROBE-$(call ALLYES, FILE_PROTOCOL MPEGTS_DEMUXER \
H264_PARSER MPEGAUDIO_PARSER \
EXTRACT_EXTRADATA_BSF MP2_DECODER \
H264_METADATA_BSF ARESAMPLE_FILTER \
RAWVIDEO_ENCODER PCM_S32LE_ENCODER \
PCM_S32BE_ENCODER MATROSKA_MUXER \
MATROSKA_DEMUXER H264_DECODER \
FRAMECRC_MUXER PIPE_PROTOCOL) \
+= fate-matroska-h264-remux
fate-matroska-h264-remux: CMD = transcode mpegts $(TARGET_SAMPLES)/h264/h264_intra_first-small.ts matroska "-map 0:0 -map 0 -c:v copy -sar:0 3:4 -bsf:v:1 h264_metadata=aud=remove:delete_filler=1 -disposition:v +hearing_impaired -af aresample -c:a:0 pcm_s32le -c:a:1 pcm_s32be -disposition:a:0 original -metadata:s:a:0 title=swedish_silence -metadata:s:a:1 title=norwegian_silence -disposition:a:1 dub" "-map 0:v" "" "-show_entries stream=index,codec_name:stream_tags=title,language"
# Tests writing BlockAdditional and BlockGroups with ReferenceBlock elements;
# it also tests setting a track as suitable for hearing impaired.
# It also tests the capability of the VP8 parser to set the keyframe flag

View File

@ -0,0 +1,65 @@
ded6da7e46ce7df1232b116afb0b2f0a *tests/data/fate/matroska-h264-remux.matroska
2036083 tests/data/fate/matroska-h264-remux.matroska
#tb 0: 1/25
#media_type 0: video
#codec_id 0: rawvideo
#dimensions 0: 1920x1080
#sar 0: 3/4
#tb 1: 1/25
#media_type 1: video
#codec_id 1: rawvideo
#dimensions 1: 1920x1080
#sar 1: 1/1
0, 45, 45, 1, 3110400, 0xa426f15d
1, 45, 45, 1, 3110400, 0xa426f15d
0, 46, 46, 1, 3110400, 0x7066003b
1, 46, 46, 1, 3110400, 0x7066003b
0, 47, 47, 1, 3110400, 0x7691f2c5
1, 47, 47, 1, 3110400, 0x7691f2c5
0, 48, 48, 1, 3110400, 0x1bc501d2
1, 48, 48, 1, 3110400, 0x1bc501d2
0, 49, 49, 1, 3110400, 0xb616ecf1
1, 49, 49, 1, 3110400, 0xb616ecf1
0, 50, 50, 1, 3110400, 0xa334fb27
1, 50, 50, 1, 3110400, 0xa334fb27
0, 51, 51, 1, 3110400, 0x1097ea90
1, 51, 51, 1, 3110400, 0x1097ea90
0, 52, 52, 1, 3110400, 0xbc25f438
1, 52, 52, 1, 3110400, 0xbc25f438
0, 53, 53, 1, 3110400, 0xcab4f0d9
1, 53, 53, 1, 3110400, 0xcab4f0d9
0, 54, 54, 1, 3110400, 0xa740f58c
1, 54, 54, 1, 3110400, 0xa740f58c
0, 55, 55, 1, 3110400, 0x597de7df
1, 55, 55, 1, 3110400, 0x597de7df
0, 56, 56, 1, 3110400, 0x3b79f58d
1, 56, 56, 1, 3110400, 0x3b79f58d
0, 57, 57, 1, 3110400, 0x3705eb68
1, 57, 57, 1, 3110400, 0x3705eb68
0, 58, 58, 1, 3110400, 0x2292f7de
1, 58, 58, 1, 3110400, 0x2292f7de
0, 59, 59, 1, 3110400, 0x2171e805
1, 59, 59, 1, 3110400, 0x2171e805
0, 60, 60, 1, 3110400, 0x14a9f258
0, 61, 61, 1, 3110400, 0xa545ef91
1, 61, 61, 1, 3110400, 0xa545ef91
[STREAM]
index=0
codec_name=h264
[/STREAM]
[STREAM]
index=1
codec_name=h264
[/STREAM]
[STREAM]
index=2
codec_name=pcm_s32le
TAG:language=swe
TAG:title=swedish_silence
[/STREAM]
[STREAM]
index=3
codec_name=pcm_s32be
TAG:language=nor
TAG:title=norwegian_silence
[/STREAM]