summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorAndreas Rheinhardt <andreas.rheinhardt@outlook.com>2022-05-10 11:13:33 +0200
committerAndreas Rheinhardt <andreas.rheinhardt@outlook.com>2022-05-12 08:33:11 +0200
commitcf9e470d05e69dd7e534dda59ad91dd8a0337670 (patch)
treef88f8d0d0a0f41eed6bd62eb364ddb1faae131f8 /tests
parente5163b1d34381a3319214a902ef1df923dd2eeba (diff)
fate/matroska: Add test for remuxing DVB subtitles to Matroska
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
Diffstat (limited to 'tests')
-rw-r--r--tests/fate/matroska.mak10
-rw-r--r--tests/ref/fate/matroska-dvbsub-remux52
2 files changed, 62 insertions, 0 deletions
diff --git a/tests/fate/matroska.mak b/tests/fate/matroska.mak
index ebd95ced04..b49ec761cf 100644
--- a/tests/fate/matroska.mak
+++ b/tests/fate/matroska.mak
@@ -171,6 +171,16 @@ fate-matroska-pgs-remux: CMD = transcode sup $(TARGET_SAMPLES)/sub/pgs_sub.sup m
FATE_MATROSKA-$(call REMUX, MATROSKA, SUP_DEMUXER PGS_FRAME_MERGE_BSF SETTS_BSF) += fate-matroska-pgs-remux-durations
fate-matroska-pgs-remux-durations: CMD = transcode sup $(TARGET_SAMPLES)/sub/pgs_sub.sup matroska "-copyts -c:s copy -bsf pgs_frame_merge,setts=duration=if(gt(DURATION\,0)\,DURATION\,if(eq(PTS\,NOPTS)\,0\,if(eq(NEXT_PTS\,NOPTS)\,0\,NEXT_PTS-PTS))):pts=PTS" "-copyts -c:s copy"
+# This test muxes DVB subtitles twice into Matroska: Once normally
+# and once with durations derived via the setts filter. Said filter
+# sets the duration for every packet except the last it receives.
+# The "-t 20" also tests that the BSF is properly flushed even
+# when processing ended due to something else than the input's EOF.
+# Notice that the last packet of stream 0 before 20s is present,
+# but has no duration (like stream 1).
+FATE_MATROSKA-$(call REMUX, MATROSKA, MPEGTS_DEMUXER DVBSUB_PARSER SETTS_BSF) += fate-matroska-dvbsub-remux
+fate-matroska-dvbsub-remux: CMD = transcode mpegts $(TARGET_SAMPLES)/sub/dvbsubtest_filter.ts matroska "-map 0:s -map 0:s -t 20 -c copy -bsf:0 setts=duration=if(gt(DURATION\,0)\,DURATION\,if(eq(PTS\,NOPTS)\,0\,if(eq(NEXT_PTS\,NOPTS)\,0\,NEXT_PTS-PTS))):pts=PTS" "-map 0 -c copy"
+
FATE_MATROSKA_FFPROBE-$(call ALLYES, MATROSKA_DEMUXER) += fate-matroska-spherical-mono
fate-matroska-spherical-mono: CMD = run ffprobe$(PROGSSUF)$(EXESUF) -show_entries stream_side_data_list -select_streams v -v 0 $(TARGET_SAMPLES)/mkv/spherical.mkv
diff --git a/tests/ref/fate/matroska-dvbsub-remux b/tests/ref/fate/matroska-dvbsub-remux
new file mode 100644
index 0000000000..7c543e5a7d
--- /dev/null
+++ b/tests/ref/fate/matroska-dvbsub-remux
@@ -0,0 +1,52 @@
+e675d3a76a4720f3e65bf56ec6041fe1 *tests/data/fate/matroska-dvbsub-remux.matroska
+39025 tests/data/fate/matroska-dvbsub-remux.matroska
+#extradata 0: 5, 0x00bb0064
+#extradata 1: 5, 0x00bb0064
+#tb 0: 1/1000
+#media_type 0: subtitle
+#codec_id 0: dvb_subtitle
+#tb 1: 1/1000
+#media_type 1: subtitle
+#codec_id 1: dvb_subtitle
+0, 0, 0, 280, 14, 0x05f400e1
+1, 0, 0, 0, 14, 0x05f400e1
+0, 280, 280, 5000, 14, 0x066400f1
+1, 280, 280, 0, 14, 0x066400f1
+0, 5280, 5280, 5020, 14, 0x06d40101
+1, 5280, 5280, 0, 14, 0x06d40101
+0, 10300, 10300, 3600, 14, 0x07440111
+1, 10300, 10300, 0, 14, 0x07440111
+0, 13900, 13900, 220, 14, 0x07b40121
+1, 13900, 13900, 0, 14, 0x07b40121
+0, 14120, 14120, 1440, 14, 0x08240131
+1, 14120, 14120, 0, 14, 0x08240131
+0, 15560, 15560, 40, 14, 0x08940141
+1, 15560, 15560, 0, 14, 0x08940141
+0, 15600, 15600, 160, 944, 0x454c0939
+1, 15600, 15600, 0, 944, 0x454c0939
+0, 15760, 15760, 240, 630, 0x49dbb35f
+1, 15760, 15760, 0, 630, 0x49dbb35f
+0, 16000, 16000, 340, 344, 0xb1eb63ed
+1, 16000, 16000, 0, 344, 0xb1eb63ed
+0, 16340, 16340, 600, 966, 0xb8a61edf
+1, 16340, 16340, 0, 966, 0xb8a61edf
+0, 16940, 16940, 460, 470, 0x80597fba
+1, 16940, 16940, 0, 470, 0x80597fba
+0, 17400, 17400, 360, 1212, 0x554768d6
+1, 17400, 17400, 0, 1212, 0x554768d6
+0, 17760, 17760, 220, 4804, 0xab67ddbe
+1, 17760, 17760, 0, 4804, 0xab67ddbe
+0, 17980, 17980, 960, 1016, 0x15e42d56
+1, 17980, 17980, 0, 1016, 0x15e42d56
+0, 18940, 18940, 220, 456, 0x57917e6f
+1, 18940, 18940, 0, 456, 0x57917e6f
+0, 19160, 19160, 260, 830, 0xcff3efde
+1, 19160, 19160, 0, 830, 0xcff3efde
+0, 19420, 19420, 100, 860, 0xd89903b6
+1, 19420, 19420, 0, 860, 0xd89903b6
+0, 19520, 19520, 220, 4426, 0x01eb43f1
+1, 19520, 19520, 0, 4426, 0x01eb43f1
+0, 19740, 19740, 220, 1132, 0xedda51a8
+1, 19740, 19740, 0, 1132, 0xedda51a8
+0, 19960, 19960, 0, 466, 0x9c957e09
+1, 19960, 19960, 0, 466, 0x9c957e09