summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorAndreas Rheinhardt <andreas.rheinhardt@outlook.com>2022-05-05 10:07:21 +0200
committerAndreas Rheinhardt <andreas.rheinhardt@outlook.com>2022-05-10 10:03:32 +0200
commitf98b6cf543cc41037b18dbf4d9fa72e426383f16 (patch)
tree309502c272b1409bf53a5ff7a4a52a0deb5a329f /tests
parent7f5b57766bd5c6360fc83dd67c72bed772864da8 (diff)
downloadffmpeg-f98b6cf543cc41037b18dbf4d9fa72e426383f16.tar.gz
fate/matroska: Add tests for muxing PGS into Matroska
They test the new pgs_frame_merge BSF. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
Diffstat (limited to 'tests')
-rw-r--r--tests/fate/matroska.mak8
-rw-r--r--tests/ref/fate/matroska-pgs-remux7
-rw-r--r--tests/ref/fate/matroska-pgs-remux-durations7
3 files changed, 22 insertions, 0 deletions
diff --git a/tests/fate/matroska.mak b/tests/fate/matroska.mak
index b8b6945de6..ebd95ced04 100644
--- a/tests/fate/matroska.mak
+++ b/tests/fate/matroska.mak
@@ -163,6 +163,14 @@ FATE_MATROSKA_FFMPEG_FFPROBE-$(call REMUX, MATROSKA, MPEGTS_DEMUXER AC3_DECODER)
+= fate-matroska-mpegts-remux
fate-matroska-mpegts-remux: CMD = transcode mpegts $(TARGET_SAMPLES)/mpegts/pmtchange.ts matroska "-map 0:2 -map 0:2 -c copy -disposition:a:1 -visual_impaired+hearing_impaired -default_mode infer" "-map 0 -c copy" "-show_entries stream_disposition:stream=index"
+FATE_MATROSKA-$(call REMUX, MATROSKA, SUP_DEMUXER) += fate-matroska-pgs-remux
+fate-matroska-pgs-remux: CMD = transcode sup $(TARGET_SAMPLES)/sub/pgs_sub.sup matroska "-copyts -c:s copy" "-copyts -c:s copy"
+
+# This test uses the setts bsf to derive the duration of every packet
+# except the last from the next packet's pts.
+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"
+
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-pgs-remux b/tests/ref/fate/matroska-pgs-remux
new file mode 100644
index 0000000000..4fab0ffdd8
--- /dev/null
+++ b/tests/ref/fate/matroska-pgs-remux
@@ -0,0 +1,7 @@
+9aa538611b5f3bd0455b2afd3dafe08d *tests/data/fate/matroska-pgs-remux.matroska
+49751 tests/data/fate/matroska-pgs-remux.matroska
+#tb 0: 1/1000
+#media_type 0: subtitle
+#codec_id 0: hdmv_pgs_subtitle
+0, 67, 67, 0, 26127, 0x02389441
+0, 401, 401, 0, 23155, 0x1de74712
diff --git a/tests/ref/fate/matroska-pgs-remux-durations b/tests/ref/fate/matroska-pgs-remux-durations
new file mode 100644
index 0000000000..ba649d0ddf
--- /dev/null
+++ b/tests/ref/fate/matroska-pgs-remux-durations
@@ -0,0 +1,7 @@
+20fa9d515b08718c42d3e3a8a4a8bf5d *tests/data/fate/matroska-pgs-remux-durations.matroska
+49763 tests/data/fate/matroska-pgs-remux-durations.matroska
+#tb 0: 1/1000
+#media_type 0: subtitle
+#codec_id 0: hdmv_pgs_subtitle
+0, 67, 67, 334, 26127, 0x02389441
+0, 401, 401, 0, 23155, 0x1de74712