rect
"WEBVTT" marker. Before, files were not checked if they truly started
with it.
It will also now ignore all non-cue blocks, instead of only a hardcoded
list. This is closer to the specification that calls for no action
if unknown blocks are encountered.
Signed-off-by: Marcos Del Sol Vives
Tomas Härdin:
> tis 2025-06-10 klockan 11:42 + skrev Marcos Del Sol:
> > WebVTT is supposed to be an extensible format.
>
> The syntax says otherwise. Why the W3C feels the need to specify a
> particular imperative algorithm for parsing I cannot know, but this is
> not
> WebVTT is supposed to be an extensible format. Limiting to a small set of
> known values and silently aborting when anything new is introduced does
> not seem like the best option to me. Web browsers do not stop rendering
> pages when they see a new, unknown HTML tag or CSS option.
About this, f
> The linked file does not follow the syntax specified in section 4 of
> the WebVTT standard. Therefore it is not WebVTT.
The section 6.1 on file parsing, says explicitely that processing should
be aborted if, and only if:
- The file is too small (point 4)
- The file does not start with "WEBVTT
El 6 de junio de 2025 21:43:58 CEST, "Tomas Härdin" escribió:
>
>Sounds like the demuxer correctly rejected some broken files
>
The WebVTT standard does not call for a fatal error unless the magic header
does not match. The current implementation is not only non-compliant with the
standard, b
ot;WEBVTT" marker. Before, files were not checked if they truly started
with it.
It will also now ignore all non-cue blocks, instead of only a hardcoded
list. This is closer to the specification that calls for no action
if unknown blocks are encountered.
Signed-off-by: Marcos Del Sol Vives
action
if unknown blocks are encountered.
Signed-off-by: Marcos Del Sol Vives
---
libavformat/webvttdec.c | 178 ++--
1 file changed, 98 insertions(+), 80 deletions(-)
diff --git a/libavformat/webvttdec.c b/libavformat/webvttdec.c
index 6feda1585e..b454b2c1cf 10
Fixes: #11493
---
libavformat/matroskadec.c | 3 ---
1 file changed, 3 deletions(-)
diff --git a/libavformat/matroskadec.c b/libavformat/matroskadec.c
index 29e35e6dd4..2750652c51 100644
--- a/libavformat/matroskadec.c
+++ b/libavformat/matroskadec.c
@@ -3824,9 +3824,6 @@ static int matroska_pars