webvtt-py package reference
webvtt.webvtt
- class webvtt.webvtt.WebVTT(file='', captions=None, styles=None)
Parse captions in WebVTT format and also from other formats like SRT.
To read WebVTT:
WebVTT().read(‘captions.vtt’)
For other formats like SRT, use from_[format in lower case]:
WebVTT().from_srt(‘captions.srt’)
A list of all supported formats is available calling list_formats().
- property captions
Returns the list of captions.
- property content
Return webvtt content with webvtt formatting.
This property is useful in cases where the webvtt content is needed but no file saving on the system is required.
- classmethod from_sbv(file)
Reads captions from a file in YouTube SBV format.
- classmethod from_srt(file)
Reads captions from a file in SubRip format.
- static list_formats()
Provides a list of supported formats that this class can read from.
- classmethod read(file)
Reads a WebVTT captions file.
- classmethod read_buffer(buffer)
Reads a WebVTT captions from a file-like object. Such file-like object may be the return of an io.open call, io.StringIO object, tempfile.TemporaryFile object, etc.
- save(output='')
Save the document. If no output is provided the file will be saved in the same location. Otherwise output can determine a target directory or file.
- property total_length
Returns the total length of the captions.
webvtt.segmenter
- class webvtt.segmenter.WebVTTSegmenter
Provides segmentation of WebVTT captions for HTTP Live Streaming (HLS).
- property seconds
Returns the number of seconds used for segmenting captions.
- segment(webvtt, output='', seconds=10, mpegts=900000)
Segments the captions based on a number of seconds.
- property segments
Return the list of segments.
- property total_segments
Returns the total of segments.
webvtt.cli
- Usage:
webvtt segment <file> [–target-duration=SECONDS] [–mpegts=OFFSET] [–output=<dir>] webvtt -h | –help webvtt –version
- Options:
-h –help Show this screen. –version Show version. –target-duration=SECONDS Target duration of each segment in seconds [default: 10]. –mpegts=OFFSET Presentation timestamp value [default: 900000]. –output=<dir> Output to directory [default: ./].
- Examples:
webvtt segment captions.vtt –output destination/directory
- webvtt.cli.main()
Main entry point for CLI commands.
- webvtt.cli.segment(f, output, target_duration, mpegts)
Segment command.
webvtt.generic
webvtt.parsers
- class webvtt.parsers.SBVParser(parse_options=None)
Bases:
TextBasedParser
YouTube SBV parser.
- class webvtt.parsers.SRTParser(parse_options=None)
Bases:
TextBasedParser
SRT parser.
- class webvtt.parsers.TextBasedParser(parse_options=None)
Bases:
object
Parser for plain text caption files. This is a generic class, do not use directly.
- read(file)
Reads the captions file.
- class webvtt.parsers.WebVTTParser
Bases:
TextBasedParser
WebVTT parser.