Skip to content

Commit a0b77e7

Browse files
committed
Add support for the WebVTT format.
The underlying pysubs2 packages supports WebVTT so all this does is allows "vtt" subs to be passed through both for reading and writing.
1 parent bafd232 commit a0b77e7

File tree

2 files changed

+3
-3
lines changed

2 files changed

+3
-3
lines changed

ffsubsync/generic_subtitles.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,7 @@ def write_file(self, fname: str) -> None:
139139
else:
140140
out_format = os.path.splitext(fname)[-1][1:]
141141
subs = list(self.gen_raw_resolved_subs())
142-
if self._sub_format in ("ssa", "ass"):
142+
if self._sub_format in ("ssa", "ass", "vtt"):
143143
ssaf = pysubs2.SSAFile()
144144
ssaf.events = subs
145145
if self._styles is not None:
@@ -149,7 +149,7 @@ def write_file(self, fname: str) -> None:
149149
if self._fonts_opaque is not None:
150150
ssaf.fonts_opaque = self._fonts_opaque
151151
to_write = ssaf.to_string(out_format)
152-
elif self._sub_format == "srt" and out_format in ("ssa", "ass"):
152+
elif self._sub_format == "srt" and out_format in ("ssa", "ass", "vtt"):
153153
to_write = pysubs2.SSAFile.from_string(srt.compose(subs)).to_string(
154154
out_format
155155
)

ffsubsync/subtitle_parser.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ def fit(self, fname: str, *_) -> "GenericSubtitleParser":
116116
parsed_subs = srt.parse(
117117
decoded_subs, ignore_errors=not self._strict
118118
)
119-
elif self.sub_format in ("ass", "ssa", "sub"):
119+
elif self.sub_format in ("ass", "ssa", "sub", "vtt"):
120120
parsed_subs = pysubs2.SSAFile.from_string(decoded_subs)
121121
else:
122122
raise NotImplementedError(

0 commit comments

Comments
 (0)