From f98b6cf543cc41037b18dbf4d9fa72e426383f16 Mon Sep 17 00:00:00 2001 From: Andreas Rheinhardt Date: Thu, 5 May 2022 10:07:21 +0200 Subject: fate/matroska: Add tests for muxing PGS into Matroska They test the new pgs_frame_merge BSF. Signed-off-by: Andreas Rheinhardt --- tests/fate/matroska.mak | 8 ++++++++ tests/ref/fate/matroska-pgs-remux | 7 +++++++ tests/ref/fate/matroska-pgs-remux-durations | 7 +++++++ 3 files changed, 22 insertions(+) create mode 100644 tests/ref/fate/matroska-pgs-remux create mode 100644 tests/ref/fate/matroska-pgs-remux-durations 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 -- cgit v1.2.3