Skip to content

2.3.0 - webvtt demuxer (external .vtt subtitles)

Choose a tag to compare

@superuser404notfound superuser404notfound released this 28 Jul 18:25

Added

  • The webvtt demuxer is enabled, so a standalone .vtt file can be opened at all. The webvtt DECODER was always in the allowlist, since it serves WebVTT tracks inside Matroska and HLS where those demuxers supply the stream, but without the demuxer avformat_open_input rejects a .vtt file with AVERROR_INVALIDDATA and an external WebVTT subtitle never loads. Same shape as the raw-PGS sup demuxer gap fixed in 2.1.3, and it hid for the same reason: the codec was present, so the gap looked like it had to be somewhere else. It also carries the placement. libavcodec's WebVTT decoder drops line / position / align and says so as a @todo in webvttdec.c's file header, but the demuxer attaches the verbatim cue settings to every packet as AV_PKT_DATA_WEBVTT_SETTINGS, which is the only path they take out of libavformat. AetherEngine reads that side data as of 5.27.0.

Demuxer count goes from 24 to 25; no other configure change. FFmpeg stays at n8.1.2, dav1d 1.5.1, zimg 3.0.5, zvbi 0.2.44.