History

tests/Makefile: Redo how to keep intermediate FATE-files

Extend the ordinary mechanism to signal KEEP for this. This also allows to remove the keep-parameter from enc_dec, transcode and stream_remux, so that several empty parameters '""' could be removed.

Andreas Rheinhardt committed 4 years ago

Commit 95cbd971 parent 80c725815 files · +55 −43Browse files

Unified · Split

15 files
  1. tests/Makefile +13 −1
  2. tests/fate-run.sh +10 −10
  3. tests/fate/acodec.mak +1 −1
  4. tests/fate/caf.mak +1 −1
  5. tests/fate/cover-art.mak +3 −3
  6. tests/fate/ffmpeg.mak +2 −2
  7. tests/fate/filter-video.mak +2 −2
  8. tests/fate/id3v2.mak +2 −2
  9. tests/fate/image.mak +2 −2
  10. tests/fate/matroska.mak +10 −10
  11. tests/fate/mov.mak +5 −5
  12. tests/fate/mxf.mak +1 −1
  13. tests/fate/oma.mak +1 −1
  14. tests/fate/seek.mak +1 −1
  15. tests/fate/vcodec.mak +1 −1
tests/Makefile+13−1
@@ -1,4 +1,16 @@
11
2+ifneq ($(strip $(KEEP)),)
3+ifneq ($(strip $(KEEP)),0)
4+# KEEP_FILES is normally undefined; it is set to 2 # if the user requested
5+# to keep all intermediate FATE-files by setting KEEP.
6+# For some tests it is also set to 1 if it is unset; this indicates
7+# that only some intermediate files (namely only non-raw files)
8+# are to be kept. This allows reusing these intermediate files as input
9+# files for other tests (mostly the seek-tests).
10+KEEP_FILES = 2
11+endif
12+endif
13+
214 THREADS = 1
315 VREF = tests/vsynth1/00.pgm
416 AREF = tests/data/asynth1.sw
@@ -279,7 +291,7 @@ $(FATE): export EXECSUF = $(EXESUF) · 274 unmodified lines
279291 $(FATE): export HOSTEXECSUF = $(HOSTEXESUF)
280292 $(FATE): $(FATE_UTILS:%=tests/%$(HOSTEXESUF)) | $(FATE_OUTDIRS)
281293 @echo "TEST $(@:fate-%=%)"
282− $(Q)$(SRC_PATH)/tests/fate-run.sh $@ "$(TARGET_SAMPLES)" "$(TARGET_EXEC)" "$(TARGET_PATH)" '$(CMD)' '$(CMP)' '$(REF)' '$(FUZZ)' '$(THREADS)' '$(THREAD_TYPE)' '$(CPUFLAGS)' '$(CMP_SHIFT)' '$(CMP_TARGET)' '$(SIZE_TOLERANCE)' '$(CMP_UNIT)' '$(GEN)' '$(HWACCEL)' '$(REPORT)' '$(KEEP)'
294+ $(Q)$(SRC_PATH)/tests/fate-run.sh $@ "$(TARGET_SAMPLES)" "$(TARGET_EXEC)" "$(TARGET_PATH)" '$(CMD)' '$(CMP)' '$(REF)' '$(FUZZ)' '$(THREADS)' '$(THREAD_TYPE)' '$(CPUFLAGS)' '$(CMP_SHIFT)' '$(CMP_TARGET)' '$(SIZE_TOLERANCE)' '$(CMP_UNIT)' '$(GEN)' '$(HWACCEL)' '$(REPORT)' '$(KEEP_FILES)'
283295
284296 fate-list:
285297 @printf '%s\n' $(sort $(FATE))
tests/fate-run.sh+10−10
@@ -205,11 +205,11 @@ enc_dec(){ · 204 unmodified lines
205205 enc_opt=$4
206206 dec_fmt=$5
207207 dec_opt=$6
208− ffprobe_opts=$9
208+ ffprobe_opts=$8
209209 encfile="${outdir}/${test}.${enc_fmt}"
210210 decfile="${outdir}/${test}.out.${dec_fmt}"
211211 cleanfiles="$cleanfiles $decfile"
212− test "$7" = -keep || cleanfiles="$cleanfiles $encfile"
212+ test "$keep" -ge 1 || cleanfiles="$cleanfiles $encfile"
213213 tsrcfile=$(target_path $srcfile)
214214 tencfile=$(target_path $encfile)
215215 tdecfile=$(target_path $decfile)
@@ -217,7 +217,7 @@ enc_dec(){ · 1 unmodified line
217217 -f $enc_fmt -y $tencfile || return
218218 do_md5sum $encfile
219219 echo $(wc -c $encfile)
220− ffmpeg -auto_conversion_filters $8 $DEC_OPTS -i $tencfile $ENC_OPTS $dec_opt $FLAGS \
220+ ffmpeg -auto_conversion_filters $7 $DEC_OPTS -i $tencfile $ENC_OPTS $dec_opt $FLAGS \
221221 -f $dec_fmt -y $tdecfile || return
222222 do_md5sum $decfile
223223 tests/tiny_psnr${HOSTEXECSUF} $srcfile $decfile $cmp_unit $cmp_shift
@@ -231,12 +231,12 @@ transcode(){ · 7 unmodified lines
231231 enc_fmt=$3
232232 enc_opt=$4
233233 final_encode=$5
234− ffprobe_opts=$7
235− additional_input=$8
236− final_decode=$9
234+ ffprobe_opts=$6
235+ additional_input=$7
236+ final_decode=$8
237237 test -z "$additional_input" || additional_input="$DEC_OPTS $additional_input"
238238 encfile="${outdir}/${test}.${enc_fmt}"
239− test "$6" = -keep || cleanfiles="$cleanfiles $encfile"
239+ test $keep -ge 1 || cleanfiles="$cleanfiles $encfile"
240240 tsrcfile=$(target_path $srcfile)
241241 tencfile=$(target_path $encfile)
242242 ffmpeg -f $src_fmt $DEC_OPTS -i $tsrcfile $additional_input \
@@ -255,9 +255,9 @@ stream_remux(){ · 12 unmodified lines
255255 enc_fmt=$3
256256 stream_maps=$4
257257 final_decode=$5
258− ffprobe_opts=$7
258+ ffprobe_opts=$6
259259 encfile="${outdir}/${test}.${enc_fmt}"
260− test "$6" = -keep || cleanfiles="$cleanfiles $encfile"
260+ test $keep -ge 1 || cleanfiles="$cleanfiles $encfile"
261261 tsrcfile=$(target_path $srcfile)
262262 tencfile=$(target_path $encfile)
263263 ffmpeg -f $src_fmt -i $tsrcfile $stream_maps -codec copy $FLAGS \
@@ -598,7 +598,7 @@ if test $err != 0 && test $gen != "no" ; then · 334 unmodified lines
598598 fi
599599
600600 if test $err = 0; then
601− if test $keep = 0; then
601+ if test $keep -lt 2; then
602602 rm -f $outfile $errfile $cmpfile $cleanfiles
603603 fi
604604 elif test $gen = "no"; then
tests/fate/acodec.mak+1−1
@@ -1,6 +1,6 @@
11 fate-acodec-%: CODEC = $(@:fate-acodec-%=%)
22 fate-acodec-%: SRC = tests/data/asynth-44100-2.wav
3−fate-acodec-%: CMD = enc_dec wav $(SRC) $(FMT) "-b:a 128k -c $(CODEC) $(ENCOPTS)" wav "-c pcm_s16le $(DECOPTS)" "$(KEEP_OVERRIDE)"
3+fate-acodec-%: CMD = enc_dec wav $(SRC) $(FMT) "-b:a 128k -c $(CODEC) $(ENCOPTS)" wav "-c pcm_s16le $(DECOPTS)"
44 fate-acodec-%: CMP_UNIT = 2
55 fate-acodec-%: REF = $(SRC_PATH)/tests/ref/acodec/$(@:fate-acodec-%=%)
66
tests/fate/caf.mak+1−1
@@ -2,7 +2,7 @@ FATE_CAF_FFMPEG-$(call ALLYES, CAF_DEMUXER CRC_MUXER) += fate-caf-demux · 1 unmodified line
22 fate-caf-demux: CMD = crc -i $(TARGET_SAMPLES)/caf/caf-pcm16.caf -c copy
33
44 FATE_CAF_FFMPEG_FFPROBE-$(call REMUX, CAF, MOV_DEMUXER) += fate-caf-alac-remux
5−fate-caf-alac-remux: CMD = transcode m4a $(TARGET_SAMPLES)/lossless-audio/inside.m4a caf "-map 0:a -c copy -metadata major_brand= " "-c copy -t 0.2" "" "-show_entries format_tags"
5+fate-caf-alac-remux: CMD = transcode m4a $(TARGET_SAMPLES)/lossless-audio/inside.m4a caf "-map 0:a -c copy -metadata major_brand= " "-c copy -t 0.2" "-show_entries format_tags"
66
77 FATE_CAF_FFMPEG-$(call REMUX, CAF, AMR_DEMUXER) += fate-caf-amr_nb-remux
88 fate-caf-amr_nb-remux: CMD = transcode amr $(TARGET_SAMPLES)/amrnb/4.75k.amr caf "-c copy" "-c copy -t 0.2"
tests/fate/cover-art.mak+3−3
@@ -37,14 +37,14 @@ FATE_COVER_ART_REMUX-$(call ALLYES, FILE_PROTOCOL FLAC_DEMUXER MJPEG_DECODER \ · 36 unmodified lines
3737 AIFF_DEMUXER BMP_DECODER PNG_DECODER \
3838 FRAMECRC_MUXER PIPE_PROTOCOL) \
3939 += fate-cover-art-aiff-id3v2-remux
40−fate-cover-art-aiff-id3v2-remux: CMD = transcode flac $(TARGET_SAMPLES)/cover_art/cover_art.flac aiff "-map 0 -map 0:v -map 0:v -map 0:v -c:a pcm_s16be -c:v:0 copy -filter:v:1 scale -c:v:1 png -filter:v:2 scale -c:v:2 bmp -c:v:3 copy -write_id3v2 1 -metadata:g unknown_key=unknown_value -metadata compilation=foo -metadata:s:v:0 title=first -metadata:s:v:1 title=second -metadata:s:v:1 comment=Illustration -metadata:s:v:2 title=third -metadata:s:v:2 comment=Conductor -metadata:s:v:3 title=fourth -metadata:s:v:3 comment=Composer" "-map 0 -c copy -t 0.1" "" "-show_entries format_tags:stream_tags:stream_disposition=attached_pic:stream=index,codec_name"
40+fate-cover-art-aiff-id3v2-remux: CMD = transcode flac $(TARGET_SAMPLES)/cover_art/cover_art.flac aiff "-map 0 -map 0:v -map 0:v -map 0:v -c:a pcm_s16be -c:v:0 copy -filter:v:1 scale -c:v:1 png -filter:v:2 scale -c:v:2 bmp -c:v:3 copy -write_id3v2 1 -metadata:g unknown_key=unknown_value -metadata compilation=foo -metadata:s:v:0 title=first -metadata:s:v:1 title=second -metadata:s:v:1 comment=Illustration -metadata:s:v:2 title=third -metadata:s:v:2 comment=Conductor -metadata:s:v:3 title=fourth -metadata:s:v:3 comment=Composer" "-map 0 -c copy -t 0.1" "-show_entries format_tags:stream_tags:stream_disposition=attached_pic:stream=index,codec_name"
4141
4242 FATE_COVER_ART_REMUX-$(call ALLYES, FILE_PROTOCOL MP3_DEMUXER MJPEG_DECODER \
4343 SCALE_FILTER PNG_ENCODER BMP_ENCODER \
4444 MP3_MUXER BMP_DECODER PNG_DECODER \
4545 FRAMECRC_MUXER PIPE_PROTOCOL) \
4646 += fate-cover-art-mp3-id3v2-remux
47−fate-cover-art-mp3-id3v2-remux: CMD = transcode mp3 $(TARGET_SAMPLES)/exif/embedded_small.mp3 mp3 "-map 0 -map 0:v -map 0:v -c:a copy -filter:v:0 scale -filter:v:2 scale -c:v:0 bmp -c:v:1 copy -c:v:2 png -metadata:s:v:0 comment=Band/Orchestra" "-map 0 -c copy -t 0.1" "" "-show_entries stream_tags:stream_disposition=attached_pic:stream=index,codec_name"
47+fate-cover-art-mp3-id3v2-remux: CMD = transcode mp3 $(TARGET_SAMPLES)/exif/embedded_small.mp3 mp3 "-map 0 -map 0:v -map 0:v -c:a copy -filter:v:0 scale -filter:v:2 scale -c:v:0 bmp -c:v:1 copy -c:v:2 png -metadata:s:v:0 comment=Band/Orchestra" "-map 0 -c copy -t 0.1" "-show_entries stream_tags:stream_disposition=attached_pic:stream=index,codec_name"
4848
4949 # Also covers muxing and demuxing of nonstandard channel layouts into FLAC
5050 # as well as the unorthodox multi_dim_quant option of the FLAC encoder.
@@ -55,7 +55,7 @@ FATE_COVER_ART_REMUX-$(call ALLYES, FILE_PROTOCOL MOV_DEMUXER OGG_DEMUXER \ · 4 unmodified lines
5555 FLAC_MUXER FLAC_DEMUXER FLAC_DECODER \
5656 FRAMECRC_MUXER PIPE_PROTOCOL) \
5757 += fate-cover-art-flac-remux
58−fate-cover-art-flac-remux: CMD = transcode mov $(TARGET_SAMPLES)/lossless-audio/inside.m4a flac "-map 0 -map 1:v -map 1:v -af channelmap=channel_layout=FL+FC,aresample -c:a flac -multi_dim_quant 1 -c:v:0 copy -metadata:s:v:0 comment=Illustration -metadata:s:v:0 title=OpenMusic -filter:v:1 scale -c:v:1 png -metadata:s:v:1 title=landscape -c:v:2 copy -filter:v:3 scale -metadata:s:v:2 title=portrait -c:v:3 bmp -metadata:s:v:3 comment=Conductor -c:v:4 copy -t 0.4" "-map 0 -map 0:a -c:a:0 copy -c:v copy" "" "-show_entries format_tags:stream_tags:stream_disposition=attached_pic:stream=index,codec_name" "-f ogg -i $(TARGET_SAMPLES)/cover_art/ogg_vorbiscomment_cover.opus"
58+fate-cover-art-flac-remux: CMD = transcode mov $(TARGET_SAMPLES)/lossless-audio/inside.m4a flac "-map 0 -map 1:v -map 1:v -af channelmap=channel_layout=FL+FC,aresample -c:a flac -multi_dim_quant 1 -c:v:0 copy -metadata:s:v:0 comment=Illustration -metadata:s:v:0 title=OpenMusic -filter:v:1 scale -c:v:1 png -metadata:s:v:1 title=landscape -c:v:2 copy -filter:v:3 scale -metadata:s:v:2 title=portrait -c:v:3 bmp -metadata:s:v:3 comment=Conductor -c:v:4 copy -t 0.4" "-map 0 -map 0:a -c:a:0 copy -c:v copy" "-show_entries format_tags:stream_tags:stream_disposition=attached_pic:stream=index,codec_name" "-f ogg -i $(TARGET_SAMPLES)/cover_art/ogg_vorbiscomment_cover.opus"
5959
6060 FCA_TEMP-$(call ALLYES, RAWVIDEO_MUXER FILE_PROTOCOL) = $(FATE_COVER_ART-yes)
6161 FATE_COVER_ART = $(FCA_TEMP-yes)
tests/fate/ffmpeg.mak+2−2
@@ -46,13 +46,13 @@ fate-force_key_frames: tests/data/vsynth_lena.yuv · 45 unmodified lines
4646 fate-force_key_frames: CMD = enc_dec \
4747 "rawvideo -s 352x288 -pix_fmt yuv420p" tests/data/vsynth_lena.yuv \
4848 avi "-c mpeg4 -g 240 -qscale 10 -force_key_frames 0.5,0:00:01.5" \
49− framecrc "" "" "-skip_frame nokey"
49+ framecrc "" "-skip_frame nokey"
5050
5151 # Tests that the video is properly autorotated using the contained
5252 # display matrix and that the generated file does not contain
5353 # a display matrix any more.
5454 FATE_SAMPLES_FFMPEG_FFPROBE-$(call ALLYES, FILE_PROTOCOL MOV_DEMUXER H264_DECODER AAC_FIXED_DECODER MPEG2VIDEO_ENCODER AC3_FIXED_ENCODER MOV_MUXER MPEG2VIDEO_DECODER EXTRACT_EXTRADATA_BSF PIPE_PROTOCOL FRAMECRC_MUXER) += fate-autorotate
55−fate-autorotate: CMD = transcode "mov -c:a aac_fixed" $(TARGET_SAMPLES)/filter/sample-in-issue-505.mov mov "-c:v mpeg2video -c:a ac3_fixed" "-c copy -t 0.5" "" "-show_entries stream_side_data_list"
55+fate-autorotate: CMD = transcode "mov -c:a aac_fixed" $(TARGET_SAMPLES)/filter/sample-in-issue-505.mov mov "-c:v mpeg2video -c:a ac3_fixed" "-c copy -t 0.5" "-show_entries stream_side_data_list"
5656
5757 FATE_SAMPLES_FFMPEG-$(call ALLYES, VOBSUB_DEMUXER DVDSUB_DECODER AVFILTER OVERLAY_FILTER DVDSUB_ENCODER) += fate-sub2video
5858 fate-sub2video: tests/data/vsynth_lena.yuv
tests/fate/filter-video.mak+2−2
@@ -584,7 +584,7 @@ fate-filter-pad: CMD = video_filter "pad=iw*1.5:ih*1.5:iw*0.3:ih*0.2" · 583 unmodified lines
584584 FATE_FILTER_PP = fate-filter-pp fate-filter-pp1 fate-filter-pp2 fate-filter-pp3 fate-filter-pp4 fate-filter-pp5 fate-filter-pp6
585585 FATE_FILTER_VSYNTH-$(CONFIG_PP_FILTER) += $(FATE_FILTER_PP)
586586 $(FATE_FILTER_PP): fate-vsynth1-mpeg4-qprd
587−fate-vsynth1-mpeg4-qprd: KEEP_OVERRIDE= -keep
587+fate-vsynth1-mpeg4-qprd: KEEP_FILES ?= 1
588588
589589 fate-filter-pp: CMD = framecrc -flags bitexact -export_side_data venc_params -idct simple -i $(TARGET_PATH)/tests/data/fate/vsynth1-mpeg4-qprd.avi -frames:v 5 -flags +bitexact -vf "pp=be/hb/vb/tn/l5/al"
590590 fate-filter-pp1: CMD = video_filter "pp=fq|4/be/hb/vb/tn/l5/al"
@@ -857,7 +857,7 @@ fate-filter-metadata-avf-aphase-meter-out-of-phase: SRC = $(TARGET_SAMPLES)/filt · 266 unmodified lines
857857 fate-filter-metadata-avf-aphase-meter-out-of-phase: CMD = run $(FILTER_METADATA_COMMAND) "amovie='$(SRC)',aphasemeter=video=0"
858858
859859 FATE_FILTER_SAMPLES-$(call TRANSCODE, RAWVIDEO H264, MOV, ARESAMPLE_FILTER AAC_FIXED_DECODER) += fate-filter-meta-4560-rotate0
860−fate-filter-meta-4560-rotate0: CMD = transcode mov $(TARGET_SAMPLES)/filter/sample-in-issue-505.mov mov "-c copy -metadata:s:v:0 rotate=0" "-af aresample" "" "" "" "-flags +bitexact -c:a aac_fixed"
860+fate-filter-meta-4560-rotate0: CMD = transcode mov $(TARGET_SAMPLES)/filter/sample-in-issue-505.mov mov "-c copy -metadata:s:v:0 rotate=0" "-af aresample" "" "" "-flags +bitexact -c:a aac_fixed"
861861
862862 REFCMP_DEPS = FFMPEG LAVFI_INDEV TESTSRC2_FILTER AVGBLUR_FILTER METADATA_FILTER
863863
tests/fate/id3v2.mak+2−2
@@ -2,10 +2,10 @@ FATE_ID3V2_FFPROBE-$(CONFIG_MP3_DEMUXER) += fate-id3v2-priv · 1 unmodified line
22 fate-id3v2-priv: CMD = probetags $(TARGET_SAMPLES)/id3v2/id3v2_priv.mp3
33
44 FATE_ID3V2_FFMPEG_FFPROBE-$(call REMUX, MP3) += fate-id3v2-priv-remux
5−fate-id3v2-priv-remux: CMD = transcode mp3 $(TARGET_SAMPLES)/id3v2/id3v2_priv.mp3 mp3 "-c copy" "-c copy -t 0.1" "" "-show_entries format_tags"
5+fate-id3v2-priv-remux: CMD = transcode mp3 $(TARGET_SAMPLES)/id3v2/id3v2_priv.mp3 mp3 "-c copy" "-c copy -t 0.1" "-show_entries format_tags"
66
77 FATE_ID3V2_FFMPEG_FFPROBE-$(call REMUX, AIFF, WAV_DEMUXER) += fate-id3v2-chapters
8−fate-id3v2-chapters: CMD = transcode wav $(TARGET_SAMPLES)/wav/200828-005.wav aiff "-c copy -metadata:c:0 description=foo -metadata:c:0 date=2021 -metadata:c copyright=none -metadata:c:1 genre=nonsense -write_id3v2 1" "-c copy -t 0.05" "" "-show_entries format_tags:chapters"
8+fate-id3v2-chapters: CMD = transcode wav $(TARGET_SAMPLES)/wav/200828-005.wav aiff "-c copy -metadata:c:0 description=foo -metadata:c:0 date=2021 -metadata:c copyright=none -metadata:c:1 genre=nonsense -write_id3v2 1" "-c copy -t 0.05" "-show_entries format_tags:chapters"
99
1010 FATE_SAMPLES_FFPROBE += $(FATE_ID3V2_FFPROBE-yes)
1111 FATE_SAMPLES_FFMPEG_FFPROBE += $(FATE_ID3V2_FFMPEG_FFPROBE-yes)
tests/fate/image.mak+2−2
@@ -338,7 +338,7 @@ FATE_JPG += fate-jpg-jfif · 337 unmodified lines
338338 fate-jpg-jfif: CMD = framecrc -idct simple -i $(TARGET_SAMPLES)/jpg/20242.jpg
339339
340340 FATE_JPG_TRANSCODE-$(call TRANSCODE, MJPEG, MJPEG IMAGE_JPEG_PIPE, IMAGE_PNG_PIPE_DEMUXER PNG_DECODER SCALE_FILTER) += fate-jpg-icc
341−fate-jpg-icc: CMD = transcode png_pipe $(TARGET_SAMPLES)/png1/lena-int_rgb24.png mjpeg "-vf scale" "" "" "-show_frames"
341+fate-jpg-icc: CMD = transcode png_pipe $(TARGET_SAMPLES)/png1/lena-int_rgb24.png mjpeg "-vf scale" "" "-show_frames"
342342
343343 FATE_JPG-$(call DEMDEC, IMAGE2, MJPEG) += $(FATE_JPG)
344344 FATE_IMAGE_FRAMECRC += $(FATE_JPG-yes)
@@ -390,7 +390,7 @@ fate-png-side-data: CMD = run ffprobe$(PROGSSUF)$(EXESUF) -show_frames \ · 45 unmodified lines
390390 -i $(TARGET_SAMPLES)/png1/lena-int_rgb24.png
391391
392392 FATE_PNG_TRANSCODE-$(call TRANSCODE, PNG, IMAGE2 IMAGE_PNG_PIPE) += fate-png-icc
393−fate-png-icc: CMD = transcode png_pipe $(TARGET_SAMPLES)/png1/lena-int_rgb24.png image2 "-c png" "" "" "-show_frames"
393+fate-png-icc: CMD = transcode png_pipe $(TARGET_SAMPLES)/png1/lena-int_rgb24.png image2 "-c png" "" "-show_frames"
394394
395395 FATE_PNG-$(call DEMDEC, IMAGE2, PNG) += $(FATE_PNG)
396396 FATE_PNG_PROBE-$(call DEMDEC, IMAGE2, PNG) += $(FATE_PNG_PROBE)
tests/fate/matroska.mak+10−10
@@ -55,7 +55,7 @@ fate-matroska-flac-extradata-update: CMD = transcode matroska $(TARGET_SAMPLES)/ · 54 unmodified lines
5555 FATE_MATROSKA_FFMPEG_FFPROBE-$(call ALLYES, MATROSKA_DEMUXER OGG_DEMUXER \
5656 VORBIS_DECODER VORBIS_PARSER WEBM_MUXER) \
5757 += fate-webm-dash-chapters
58−fate-webm-dash-chapters: CMD = transcode ogg $(TARGET_SAMPLES)/vorbis/vorbis_chapter_extension_demo.ogg webm "-c copy -cluster_time_limit 1500 -dash 1 -dash_track_number 124 -reserve_index_space 400" "-c copy -t 0.5" "" -show_chapters
58+fate-webm-dash-chapters: CMD = transcode ogg $(TARGET_SAMPLES)/vorbis/vorbis_chapter_extension_demo.ogg webm "-c copy -cluster_time_limit 1500 -dash 1 -dash_track_number 124 -reserve_index_space 400" "-c copy -t 0.5" -show_chapters
5959
6060 # The input file has a Block whose payload has a size of zero before reversing
6161 # header removal compression; it furthermore uses chained SeekHeads and has
@@ -65,7 +65,7 @@ fate-webm-dash-chapters: CMD = transcode ogg $(TARGET_SAMPLES)/vorbis/vorbis_cha · 3 unmodified lines
6565 # It furthermore tests correct propagation of the description tag.
6666 FATE_MATROSKA_FFMPEG_FFPROBE-$(call DEMMUX, MATROSKA, MATROSKA) \
6767 += fate-matroska-zero-length-block
68−fate-matroska-zero-length-block: CMD = transcode matroska $(TARGET_SAMPLES)/mkv/zero_length_block.mks matroska "-c:s copy -dash 1 -dash_track_number 2000000000 -reserve_index_space 62 -metadata_header_padding 1 -default_mode infer_no_subs" "-c:s copy" "" "-show_entries stream_tags=description"
68+fate-matroska-zero-length-block: CMD = transcode matroska $(TARGET_SAMPLES)/mkv/zero_length_block.mks matroska "-c:s copy -dash 1 -dash_track_number 2000000000 -reserve_index_space 62 -metadata_header_padding 1 -default_mode infer_no_subs" "-c:s copy" "-show_entries stream_tags=description"
6969
7070 # This mainly tests the Matroska muxer's ability to shift the data
7171 # to create enough free space to write the Cues at the front.
@@ -83,12 +83,12 @@ fate-matroska-move-cues-to-front: CMD = transcode wav $(TARGET_SAMPLES)/audio-re · 11 unmodified lines
8383 # the initially reserved amount of space turns out to be insufficient.
8484 FATE_MATROSKA_FFMPEG_FFPROBE-$(call REMUX, MATROSKA, MOV_DEMUXER HEVC_DECODER) \
8585 += fate-matroska-dovi-write-config7
86−fate-matroska-dovi-write-config7: CMD = transcode mov $(TARGET_SAMPLES)/mov/dovi-p7.mp4 matroska "-map 0 -c copy -cues_to_front yes -reserve_index_space 40 -metadata_header_padding 64339" "-map 0 -c copy" "" "-show_entries stream_side_data_list"
86+fate-matroska-dovi-write-config7: CMD = transcode mov $(TARGET_SAMPLES)/mov/dovi-p7.mp4 matroska "-map 0 -c copy -cues_to_front yes -reserve_index_space 40 -metadata_header_padding 64339" "-map 0 -c copy" "-show_entries stream_side_data_list"
8787
8888 FATE_MATROSKA_FFMPEG_FFPROBE-$(call REMUX, MATROSKA, MOV_DEMUXER \
8989 HEVC_DECODER AAC_DECODER) \
9090 += fate-matroska-dovi-write-config8
91−fate-matroska-dovi-write-config8: CMD = transcode mov $(TARGET_SAMPLES)/hevc/dv84.mov matroska "-c copy" "-map 0 -c copy -t 0.4" "" "-show_entries stream_side_data_list -select_streams v"
91+fate-matroska-dovi-write-config8: CMD = transcode mov $(TARGET_SAMPLES)/hevc/dv84.mov matroska "-c copy" "-map 0 -c copy -t 0.4" "-show_entries stream_side_data_list -select_streams v"
9292
9393 # This tests the scenario like tickets #4536, #5784 where
9494 # the first packet (with the overall lowest dts) is a video packet,
@@ -120,7 +120,7 @@ fate-matroska-qt-mode: CMD = transcode mov $(TARGET_SAMPLES)/svq1/marymary-shack · 25 unmodified lines
120120 # and modifying and writing colorspace properties.
121121 FATE_MATROSKA_FFMPEG_FFPROBE-$(call REMUX, MATROSKA, H264_DECODER H264_PARSER) \
122122 += fate-matroska-spherical-mono-remux
123−fate-matroska-spherical-mono-remux: CMD = transcode matroska $(TARGET_SAMPLES)/mkv/spherical.mkv matroska "-map 0 -map 0 -c copy -disposition:0 -default+forced -disposition:1 -default -default_mode passthrough -color_primaries:1 bt709 -color_trc:1 smpte170m -colorspace:1 bt2020c -color_range:1 pc" "-map 0 -c copy -t 0" "" "-show_entries stream_side_data_list:stream_disposition=default,forced:stream=color_range,color_space,color_primaries,color_transfer"
123+fate-matroska-spherical-mono-remux: CMD = transcode matroska $(TARGET_SAMPLES)/mkv/spherical.mkv matroska "-map 0 -map 0 -c copy -disposition:0 -default+forced -disposition:1 -default -default_mode passthrough -color_primaries:1 bt709 -color_trc:1 smpte170m -colorspace:1 bt2020c -color_range:1 pc" "-map 0 -c copy -t 0" "-show_entries stream_side_data_list:stream_disposition=default,forced:stream=color_range,color_space,color_primaries,color_transfer"
124124
125125 # The input file of the following test contains Content Light Level as well as
126126 # Mastering Display Metadata and so this test tests correct muxing and demuxing
@@ -132,7 +132,7 @@ FATE_MATROSKA_FFMPEG_FFPROBE-$(call TRANSCODE, FFV1 PRORES, MATROSKA, MXF_DEMUXE · 5 unmodified lines
132132 PCM_S24LE_DECODER ARESAMPLE_FILTER \
133133 PCM_S16BE_ENCODER NOISE_BSF) \
134134 += fate-matroska-mastering-display-metadata
135−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=amount=-1:drop=-4" "-map 0 -c copy" "" "-show_entries stream_side_data_list:stream=index,codec_name"
135+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=amount=-1:drop=-4" "-map 0 -c copy" "-show_entries stream_side_data_list:stream=index,codec_name"
136136
137137 # This test tests remuxing annex B H.264 into Matroska. It also tests writing
138138 # the correct interlaced flags and overriding the sample aspect ratio, leading
@@ -148,7 +148,7 @@ FATE_MATROSKA_FFMPEG_FFPROBE-$(call TRANSCODE, PCM_S32LE MP2, MATROSKA, \ · 9 unmodified lines
148148 ARESAMPLE_FILTER \
149149 PCM_S32BE_ENCODER) \
150150 += fate-matroska-h264-remux
151−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"
151+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"
152152
153153 # Tests writing BlockAdditional and BlockGroups with ReferenceBlock elements;
154154 # it also tests setting a track as suitable for hearing impaired.
@@ -156,12 +156,12 @@ fate-matroska-h264-remux: CMD = transcode mpegts $(TARGET_SAMPLES)/h264/h264_int · 1 unmodified line
156156 # (the input file lacks ReferenceBlock elements making everything a keyframe).
157157 FATE_MATROSKA_FFMPEG_FFPROBE-$(call REMUX, MATROSKA, VP8_PARSER) \
158158 += fate-matroska-vp8-alpha-remux
159−fate-matroska-vp8-alpha-remux: CMD = transcode matroska $(TARGET_SAMPLES)/vp8_alpha/vp8_video_with_alpha.webm matroska "-c copy -disposition +hearing_impaired -cluster_size_limit 100000" "-c copy -t 0.2" "" "-show_entries stream_disposition:stream_side_data_list"
159+fate-matroska-vp8-alpha-remux: CMD = transcode matroska $(TARGET_SAMPLES)/vp8_alpha/vp8_video_with_alpha.webm matroska "-c copy -disposition +hearing_impaired -cluster_size_limit 100000" "-c copy -t 0.2" "-show_entries stream_disposition:stream_side_data_list"
160160
161161 # The audio stream to be remuxed here has AV_DISPOSITION_VISUAL_IMPAIRED.
162162 FATE_MATROSKA_FFMPEG_FFPROBE-$(call REMUX, MATROSKA, MPEGTS_DEMUXER AC3_DECODER) \
163163 += fate-matroska-mpegts-remux
164−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"
164+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"
165165
166166 FATE_MATROSKA_FFPROBE-$(call ALLYES, MATROSKA_DEMUXER) += fate-matroska-spherical-mono
167167 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
@@ -172,7 +172,7 @@ fate-matroska-spherical-mono: CMD = run ffprobe$(PROGSSUF)$(EXESUF) -show_entrie · 4 unmodified lines
172172 # with multiple CueTrackPositions if the timestamps coincide.
173173 FATE_MATROSKA_FFMPEG_FFPROBE-$(call REMUX, WEBM MATROSKA, WEBVTT_DEMUXER) \
174174 += fate-webm-webvtt-remux
175−fate-webm-webvtt-remux: CMD = transcode webvtt $(TARGET_SAMPLES)/sub/WebVTT_capability_tester.vtt webm "-map 0 -map 0 -map 0 -map 0 -c:s copy -disposition:0 original+descriptions+hearing_impaired -disposition:1 lyrics+default+metadata -disposition:2 comment+forced -disposition:3 karaoke+captions+dub" "-map 0:0 -map 0:1 -c copy" "" "-show_entries stream_disposition:stream=index,codec_name:packet=stream_index,pts:packet_side_data_list -show_data_hash CRC32"
175+fate-webm-webvtt-remux: CMD = transcode webvtt $(TARGET_SAMPLES)/sub/WebVTT_capability_tester.vtt webm "-map 0 -map 0 -map 0 -map 0 -c:s copy -disposition:0 original+descriptions+hearing_impaired -disposition:1 lyrics+default+metadata -disposition:2 comment+forced -disposition:3 karaoke+captions+dub" "-map 0:0 -map 0:1 -c copy" "-show_entries stream_disposition:stream=index,codec_name:packet=stream_index,pts:packet_side_data_list -show_data_hash CRC32"
176176
177177 FATE_SAMPLES_AVCONV += $(FATE_MATROSKA-yes)
178178 FATE_SAMPLES_FFPROBE += $(FATE_MATROSKA_FFPROBE-yes)
tests/fate/mov.mak+5−5
@@ -128,22 +128,22 @@ fate-mov-mp4-extended-atom: CMD = run ffprobe$(PROGSSUF)$(EXESUF) -show_packets · 127 unmodified lines
128128
129129 FATE_MOV_FFMPEG_FFPROBE-$(call REMUX, MP4 MOV, OGG_DEMUXER VORBIS_DECODER) \
130130 += fate-mov-mp4-chapters
131−fate-mov-mp4-chapters: CMD = transcode ogg $(TARGET_SAMPLES)/vorbis/vorbis_chapter_extension_demo.ogg mp4 "-c copy" "-c copy -t 0.1" "" "-show_chapters"
131+fate-mov-mp4-chapters: CMD = transcode ogg $(TARGET_SAMPLES)/vorbis/vorbis_chapter_extension_demo.ogg mp4 "-c copy" "-c copy -t 0.1" "-show_chapters"
132132
133133 FATE_MOV_FFMPEG_FFPROBE-$(call TRANSCODE, PNG, MP4 MOV, MJPEG_DECODER SCALE_FILTER) \
134134 += fate-mov-cover-image
135−fate-mov-cover-image: CMD = transcode mov $(TARGET_SAMPLES)/cover_art/Owner-iTunes_9.0.3.15.m4a mp4 "-map 0 -map 0:v -c:a copy -c:v:0 copy -filter:v:1 scale -c:v:1 png" "-map 0 -t 0.1 -c copy" "" "-show_entries stream_disposition=attached_pic:stream=index,codec_name"
135+fate-mov-cover-image: CMD = transcode mov $(TARGET_SAMPLES)/cover_art/Owner-iTunes_9.0.3.15.m4a mp4 "-map 0 -map 0:v -c:a copy -c:v:0 copy -filter:v:1 scale -c:v:1 png" "-map 0 -t 0.1 -c copy" "-show_entries stream_disposition=attached_pic:stream=index,codec_name"
136136
137137 FATE_MOV_FFMPEG_FFPROBE-$(call TRANSCODE, TTML SUBRIP, MP4 MOV, SRT_DEMUXER TTML_MUXER) += fate-mov-mp4-ttml-stpp fate-mov-mp4-ttml-dfxp
138−fate-mov-mp4-ttml-stpp: CMD = transcode srt $(TARGET_SAMPLES)/sub/SubRip_capability_tester.srt mp4 "-map 0:s -c:s ttml -time_base:s 1:1000" "-map 0 -c copy" "" "-of json -show_entries packet:stream=index,codec_type,codec_tag_string,codec_tag,codec_name,time_base,start_time,duration_ts,duration,nb_frames,nb_read_packets:stream_tags"
139−fate-mov-mp4-ttml-dfxp: CMD = transcode srt $(TARGET_SAMPLES)/sub/SubRip_capability_tester.srt mp4 "-map 0:s -c:s ttml -time_base:s 1:1000 -tag:s dfxp -strict unofficial" "-map 0 -c copy" "" "-of json -show_entries packet:stream=index,codec_type,codec_tag_string,codec_tag,codec_name,time_base,start_time,duration_ts,duration,nb_frames,nb_read_packets:stream_tags"
138+fate-mov-mp4-ttml-stpp: CMD = transcode srt $(TARGET_SAMPLES)/sub/SubRip_capability_tester.srt mp4 "-map 0:s -c:s ttml -time_base:s 1:1000" "-map 0 -c copy" "-of json -show_entries packet:stream=index,codec_type,codec_tag_string,codec_tag,codec_name,time_base,start_time,duration_ts,duration,nb_frames,nb_read_packets:stream_tags"
139+fate-mov-mp4-ttml-dfxp: CMD = transcode srt $(TARGET_SAMPLES)/sub/SubRip_capability_tester.srt mp4 "-map 0:s -c:s ttml -time_base:s 1:1000 -tag:s dfxp -strict unofficial" "-map 0 -c copy" "-of json -show_entries packet:stream=index,codec_type,codec_tag_string,codec_tag,codec_name,time_base,start_time,duration_ts,duration,nb_frames,nb_read_packets:stream_tags"
140140
141141 # Resulting remux should have:
142142 # 1. first audio stream with AV_DISPOSITION_HEARING_IMPAIRED
143143 # 2. second audio stream with AV_DISPOSITION_VISUAL_IMPAIRED | DESCRIPTIONS
144144 FATE_MOV_FFMPEG_FFPROBE-$(call REMUX, MP4 MOV, MPEGTS_DEMUXER AC3_DECODER) \
145145 += fate-mov-mp4-disposition-mpegts-remux
146−fate-mov-mp4-disposition-mpegts-remux: CMD = transcode mpegts $(TARGET_SAMPLES)/mpegts/pmtchange.ts mp4 "-map 0:1 -map 0:2 -c copy -disposition:a:0 +hearing_impaired" "-map 0 -c copy" "" "-of json -show_entries stream_disposition:stream=index"
146+fate-mov-mp4-disposition-mpegts-remux: CMD = transcode mpegts $(TARGET_SAMPLES)/mpegts/pmtchange.ts mp4 "-map 0:1 -map 0:2 -c copy -disposition:a:0 +hearing_impaired" "-map 0 -c copy" "-of json -show_entries stream_disposition:stream=index"
147147
148148 FATE_SAMPLES_FFMPEG_FFPROBE += $(FATE_MOV_FFMPEG_FFPROBE-yes)
149149
tests/fate/mxf.mak+1−1
@@ -46,7 +46,7 @@ fate-mxf-user-comments: $(SAMPLES)/mxf/Sony-00001.mxf · 45 unmodified lines
4646 fate-mxf-user-comments: CMD = md5 -y -i $(TARGET_SAMPLES)/mxf/Sony-00001.mxf -c copy -metadata "comment_test=value" -fflags +bitexact -f mxf
4747
4848 FATE_MXF_D10_USER_COMMENTS-$(call ALLYES, FILE_PROTOCOL MXF_DEMUXER DVVIDEO_DECODER SCALE_FILTER MPEG2VIDEO_ENCODER MXF_D10_MUXER EXTRACT_EXTRADATA_BSF MPEGVIDEO_PARSER PIPE_PROTOCOL FRAMECRC_MUXER) += fate-mxf-d10-user-comments
49−fate-mxf-d10-user-comments: CMD = transcode mxf $(TARGET_SAMPLES)/mxf/Avid-00005.mxf mxf_d10 "-c:v mpeg2video -b:v 30000k -minrate:v 30000k -maxrate:v 30000k -bufsize:v 30000k -rc_init_occupancy 30000k -vf scale=w=1280:h=720 -an -metadata comment_test=value -metadata company_name=FATE-company -metadata product_name=FATE-test -metadata product_version=3.14159 -store_user_comments 1" "-c copy -frames:v 5" "" "-show_entries format_tags"
49+fate-mxf-d10-user-comments: CMD = transcode mxf $(TARGET_SAMPLES)/mxf/Avid-00005.mxf mxf_d10 "-c:v mpeg2video -b:v 30000k -minrate:v 30000k -maxrate:v 30000k -bufsize:v 30000k -rc_init_occupancy 30000k -vf scale=w=1280:h=720 -an -metadata comment_test=value -metadata company_name=FATE-company -metadata product_name=FATE-test -metadata product_version=3.14159 -store_user_comments 1" "-c copy -frames:v 5" "-show_entries format_tags"
5050
5151 FATE_MXF_OPATOM_USER_COMMENTS-$(call ENCDEC2, MPEG2VIDEO, PCM_S16LE, MXF) += fate-mxf-opatom-user-comments
5252 fate-mxf-opatom-user-comments: $(SAMPLES)/mxf/Sony-00001.mxf
tests/fate/oma.mak+1−1
@@ -3,7 +3,7 @@ fate-oma-demux: CMD = crc -i $(TARGET_SAMPLES)/oma/01-Untitled-partial.oma -c:a · 2 unmodified lines
33
44 # Also tests splitting and joining the date into TYER and TDAT id3v2.3 tags.
55 FATE_OMA_REMUX_FFPROBE-yes += fate-oma-atrac3p-remux
6−fate-oma-atrac3p-remux: CMD = transcode oma $(TARGET_SAMPLES)/atrac3p/at3p_sample1.oma oma "-c copy -metadata date=2021-09-23 -metadata time=16:00 -metadata title=noise -metadata id3v2_priv.foo=hex\xB3 -metadata_header_padding 500" "-c copy -t 0.2" "" "-show_entries format_tags"
6+fate-oma-atrac3p-remux: CMD = transcode oma $(TARGET_SAMPLES)/atrac3p/at3p_sample1.oma oma "-c copy -metadata date=2021-09-23 -metadata time=16:00 -metadata title=noise -metadata id3v2_priv.foo=hex\xB3 -metadata_header_padding 500" "-c copy -t 0.2" "-show_entries format_tags"
77
88 FATE_OMA_REMUX-$(CONFIG_WAV_DEMUXER) += fate-oma-atrac3-remux
99 fate-oma-atrac3-remux: CMD = transcode wav $(TARGET_SAMPLES)/atrac3/mc_sich_at3_132_small.wav oma "-c copy" "-c copy -t 0.1"
tests/fate/seek.mak+1−1
@@ -202,7 +202,7 @@ FATE_SEEK_EXTRA += $(FATE_SEEK_EXTRA-yes) · 201 unmodified lines
202202 $(FATE_SEEK) $(FATE_SAMPLES_SEEK) $(FATE_SEEK_EXTRA): libavformat/tests/seek$(EXESUF)
203203 $(FATE_SEEK) $(FATE_SAMPLES_SEEK): CMD = run libavformat/tests/seek$(EXESUF) $(TARGET_PATH)/tests/data/$(SRC)
204204 $(FATE_SEEK) $(FATE_SAMPLES_SEEK): fate-seek-%: fate-%
205−$(subst fate-seek-,fate-,$(FATE_SAMPLES_SEEK) $(FATE_SEEK)): KEEP_OVERRIDE = -keep
205+$(subst fate-seek-,fate-,$(FATE_SAMPLES_SEEK) $(FATE_SEEK)): KEEP_FILES ?= 1
206206 fate-seek-%: REF = $(SRC_PATH)/tests/ref/seek/$(@:fate-seek-%=%)
207207
208208 FATE_AVCONV += $(FATE_SEEK)
tests/fate/vcodec.mak+1−1
@@ -6,7 +6,7 @@ fate-vsynth%: CODEC = $(word 3, $(subst -, ,$(@))) · 5 unmodified lines
66 fate-vsynth%: FMT = avi
77 fate-vsynth%: DEFAULT_SIZE = -s 352x288
88 fate-vsynth3-%: DEFAULT_SIZE = -s $(FATEW)x$(FATEH)
9−fate-vsynth%: CMD = enc_dec "rawvideo $(DEFAULT_SIZE) -pix_fmt yuv420p $(RAWDECOPTS)" $(SRC) $(FMT) "-c $(CODEC) $(ENCOPTS)" rawvideo "-pix_fmt yuv420p -vsync passthrough $(DECOPTS)" "$(KEEP_OVERRIDE)" "$(DECINOPTS)"
9+fate-vsynth%: CMD = enc_dec "rawvideo $(DEFAULT_SIZE) -pix_fmt yuv420p $(RAWDECOPTS)" $(SRC) $(FMT) "-c $(CODEC) $(ENCOPTS)" rawvideo "-pix_fmt yuv420p -vsync passthrough $(DECOPTS)" "$(DECINOPTS)"
1010 fate-vsynth%: CMP_UNIT = 1
1111 fate-vsynth%: REF = $(SRC_PATH)/tests/ref/vsynth/$(@:fate-%=%)
1212

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t