undertext
- package: https://pypi.org/project/undertext/
docs(see source)- source: https://github.com/utility-libraries/undertext-py
Library README scraped 2024-04-03
undertext
library to load, edit and save different formats of subtitles
NOTE
This Project is under development. Come back soon for updates
Installation
shell
pip3 install undertext
File Formats
ext | name | read | write |
---|---|---|---|
.ass | Advanced SubStation Alpha | ❌ | ❌ |
.sbv | SubViewer | ✅ | ✅ |
.srt | SubRip | ✅ | ✅ |
.ssa | Sub Station Alpha | ❌ | ❌ |
.sub | MicroDVD | ✅ | ✅ |
.vtt | WebVTT | ✅ | ✅ |
Listed formats that are currently unsupported may be added at a later version
Examples
python
import undertext
captions = undertext.loads("example.en.srt")
undertext.dumps(captions, "example.en.vtt")
python
import undertext
captions = [
undertext.Caption(start=0, end=10, text="Hello"),
undertext.Caption(start=10, end=20, text="World"),
]
undertext.dumps(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.
shell
$ 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'
shell
$ 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