1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-28 20:53:54 +02:00
FFmpeg/tests/ref/seek
Andreas Rheinhardt bd7dea3f4f avformat/matroskaenc: Don't waste bytes writing durations
Tags in the Matroska file format can be summarized as follows: There is
a level 1-element called Tags containing one or many Tag elements each
of which in turn contain a Targets element and one or many SimpleTags.
Each SimpleTag roughly corresponds to a single key-value pair similar to
an AVDictionaryEntry. The Targets meanwhile contains information to what
the metadata contained in the SimpleTags contained in the containing Tag
applies (i.e. to the file as a whole or to an individual track).

The Matroska muxer writes such metadata. It puts the metadata of every
stream into a Tag whose Targets makes it point to the corresponding
track. And if the output is seekable, then it also adds another Tag for
each track whose Targets corresponds to the track and where it reserves
space in a SimpleTag to write the duration at the end of the muxing
process into.

Yet there is no reason to write two Tag elements for a track and a few
bytes (typically 24 bytes per track) can be saved by adding the duration
SimpleTag to the other Tag of the same track (if it exists).

FATE has been updated because the output files changed. (Tests that
write to unseekable output (pipes) needn't be updated (no duration tag
has ever been written for them) and the same applies to tests without
further metadata.)

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2020-04-13 08:08:42 +02:00
..
acodec-adpcm-ima_qt
acodec-adpcm-ima_qt-trellis
acodec-adpcm-ima_wav
acodec-adpcm-ima_wav-trellis
acodec-adpcm-ms
acodec-adpcm-ms-trellis
acodec-adpcm-swf
acodec-adpcm-swf-trellis
acodec-adpcm-yamaha
acodec-adpcm-yamaha-trellis
acodec-alac avformat/movenc: ensure we don't write the major brand as a compatible brand more than once 2019-12-21 11:57:28 -03:00
acodec-flac
acodec-mp2
acodec-pcm-alaw
acodec-pcm-f32be
acodec-pcm-f32le
acodec-pcm-f64be
acodec-pcm-f64le
acodec-pcm-mulaw
acodec-pcm-s8 avformat/movenc: ensure we don't write the major brand as a compatible brand more than once 2019-12-21 11:57:28 -03:00
acodec-pcm-s16be avformat/movenc: ensure we don't write the major brand as a compatible brand more than once 2019-12-21 11:57:28 -03:00
acodec-pcm-s16le
acodec-pcm-s24be avformat/movenc: ensure we don't write the major brand as a compatible brand more than once 2019-12-21 11:57:28 -03:00
acodec-pcm-s24le
acodec-pcm-s32be avformat/movenc: ensure we don't write the major brand as a compatible brand more than once 2019-12-21 11:57:28 -03:00
acodec-pcm-s32le
acodec-pcm-u8
cache-pipe
empty-edit-mp4 lavf/mov.c: Use the correct offset to shift timestamp when seeking. 2018-03-10 17:55:50 +01:00
extra-mp3
extra-mp4
lavf-aiff
lavf-al Merge commit 'eb8a8115994434b548523cf0bca6a4a74784e79c' 2019-03-14 14:19:03 -03:00
lavf-asf
lavf-au
lavf-avi
lavf-bmp
lavf-dv Merge commit '618d02c1fa9e74d490cace64a7d15762656b521c' 2019-03-14 14:36:24 -03:00
lavf-flv Merge commit '618d02c1fa9e74d490cace64a7d15762656b521c' 2019-03-14 14:36:24 -03:00
lavf-gif
lavf-gxf
lavf-jpg
lavf-mkv avformat/matroskaenc: Don't waste bytes writing durations 2020-04-13 08:08:42 +02:00
lavf-mmf
lavf-mov avformat/movenc: ensure we don't write the major brand as a compatible brand more than once 2019-12-21 11:57:28 -03:00
lavf-mpg
lavf-mxf avformat/mxfenc: Add Padding Bits 2018-05-08 23:02:58 +02:00
lavf-mxf_d10 avformat/mxfenc: Add Padding Bits 2018-05-08 23:02:58 +02:00
lavf-mxf_dv25 avformat/mxfenc: Add Padding Bits 2018-05-08 23:02:58 +02:00
lavf-mxf_dvcpro50 avformat/mxfenc: Add Padding Bits 2018-05-08 23:02:58 +02:00
lavf-mxf_opatom avformat/mxfenc: Add Padding Bits 2018-05-08 23:02:58 +02:00
lavf-mxf_opatom_audio avformat/mxfenc: Add Padding Bits 2018-05-08 23:02:58 +02:00
lavf-nut
lavf-ogg
lavf-pbmpipe
lavf-pcx
lavf-pgm
lavf-pgmpipe
lavf-ppm
lavf-ppmpipe
lavf-rm avcodec/eac3: add support for dependent stream 2018-03-29 10:19:03 +02:00
lavf-sgi
lavf-swf
lavf-tga
lavf-tiff
lavf-ts avformat/mpegtsenc: get rid of packet counting for sdt/pat/pmt 2019-08-23 22:49:01 +02:00
lavf-ul Merge commit 'eb8a8115994434b548523cf0bca6a4a74784e79c' 2019-03-14 14:19:03 -03:00
lavf-voc
lavf-wav
lavf-wtv
lavf-y4m Merge commit 'f8df5e2f31a5ba7b30a0e1caaaf5a03c753b3f9b' 2019-03-14 14:59:45 -03:00
mkv-codec-delay
test-iibbibb-mp4 lavf/mov.c: Use the correct offset to shift timestamp when seeking. 2018-03-10 17:55:50 +01:00
test-iibbibb-neg-ctts-mp4 lavf/mov.c: Use the correct offset to shift timestamp when seeking. 2018-03-10 17:55:50 +01:00
vsynth_lena-asv1
vsynth_lena-asv2
vsynth_lena-dnxhd-4k-hr-lb
vsynth_lena-dnxhd-720p
vsynth_lena-dnxhd-720p-rd
vsynth_lena-dnxhd-1080i avformat/movenc: ensure we don't write the major brand as a compatible brand more than once 2019-12-21 11:57:28 -03:00
vsynth_lena-dv
vsynth_lena-dv-50
vsynth_lena-dv-411
vsynth_lena-ffv1
vsynth_lena-flashsv
vsynth_lena-flv
vsynth_lena-h261
vsynth_lena-h263
vsynth_lena-h263p
vsynth_lena-huffyuv
vsynth_lena-jpegls
vsynth_lena-ljpeg
vsynth_lena-mjpeg
vsynth_lena-mpeg1
vsynth_lena-mpeg1b
vsynth_lena-mpeg2-422
vsynth_lena-mpeg2-idct-int
vsynth_lena-mpeg2-ilace
vsynth_lena-mpeg2-ivlc-qprd
vsynth_lena-mpeg2-thread
vsynth_lena-mpeg2-thread-ivlc
vsynth_lena-mpeg4 avformat/movenc: ensure we don't write the major brand as a compatible brand more than once 2019-12-21 11:57:28 -03:00
vsynth_lena-mpeg4-adap
vsynth_lena-mpeg4-adv
vsynth_lena-mpeg4-error
vsynth_lena-mpeg4-nr
vsynth_lena-mpeg4-nsse
vsynth_lena-mpeg4-qpel
vsynth_lena-mpeg4-qprd
vsynth_lena-mpeg4-rc
vsynth_lena-mpeg4-thread
vsynth_lena-msmpeg4
vsynth_lena-msmpeg4v2
vsynth_lena-rgb
vsynth_lena-roqvideo
vsynth_lena-rv10
vsynth_lena-rv20
vsynth_lena-snow
vsynth_lena-snow-ll
vsynth_lena-svq1 avformat/movenc: ensure we don't write the major brand as a compatible brand more than once 2019-12-21 11:57:28 -03:00
vsynth_lena-wmv1
vsynth_lena-wmv2
vsynth_lena-yuv