Skip to content

Latest commit

 

History

History
117 lines (91 loc) · 2.49 KB

README.md

File metadata and controls

117 lines (91 loc) · 2.49 KB

undertext

library to load, edit and save different formats of subtitles

PyPI - Version

Note

This Project is under development. Come back soon for updates

Installation

pip3 install undertext

File Formats

ext name read write Flags
.ass Advanced SubStation Alpha TT
.sbv SubViewer TT
.srt SubRip TT
.ssa Sub Station Alpha TT
.sub MicroDVD TF
.vtt WebVTT TT

*Listed formats that are currently unsupported may be added at a later version

Flag Information:

T. = Text Based
B. = Bitmap Based
.T = Time-Based
.F = Frame-Based

Examples

import undertext

captions = undertext.load("example.en.srt")
undertext.dump(captions, "example.en.vtt")
import undertext

captions = [
    undertext.Caption(start=0, end=10, text="Hello"),
    undertext.Caption(start=10, end=20, text="World"),
]
undertext.dump(captions, "out.srt")

CLI

Note

During the installation the undertext command should be installed and then available. If this didn't work you can invoke it with python3 -m undertext instead.

$ cat example.vtt
WEBVTT

00:00:00.000 --> 00:00:01.000
hello world 0

00:00:02.000 --> 00:00:03.000
hello world 2

00:00:04.000 --> 00:00:05.000
hello world 4

00:00:06.000 --> 00:00:07.000
hello world 6

00:00:08.000 --> 00:00:09.000
hello world 8
$ undertext read example.vtt
<00:00:00.000 -> 00:00:01.000> 'hello world 0'
<00:00:02.000 -> 00:00:03.000> 'hello world 2'
<00:00:04.000 -> 00:00:05.000> 'hello world 4'
<00:00:06.000 -> 00:00:07.000> 'hello world 6'
<00:00:08.000 -> 00:00:09.000> 'hello world 8'
$ undertext convert example.vtt output.srt 
$ cat output.srt
1
00:00:00,000 --> 00:00:01,000
hello world 0

2
00:00:02,000 --> 00:00:03,000
hello world 2

3
00:00:04,000 --> 00:00:05,000
hello world 4

4
00:00:06,000 --> 00:00:07,000
hello world 6

5
00:00:08,000 --> 00:00:09,000
hello world 8