Add Automatic Captions to YouTube Shorts with AI
Project description
Captametropolis
INFO: This is forked from Captacity.
Just like Captacity but BIGGER!
Add automatic captions to YouTube Shorts (and other videos) using Whisper and MoviePy!
Requirements
-
Install FFmpeg (make sure it's in your
PATH
) -
Install ImageMagick. Make sure to tick both boxes during installation:
- Install legacy utilities (e.g. convert)
- Add application directory to your system path
Quick start
After installing the requirements, enter your terminal and run the following commands:
$ pip install captametropolis -U
$ captametropolis <video_file> <output_file>
INFO: You need to run
register_font
in administrator mode to be able to use custom fonts because it has to inject your fonts into the ImageMagick font directory. See the below example for more information.
Run this command in administrator mode once to register your font (you can also run it normally, but you will be prompted to run it in administrator mode):
$ captametropolis register_font "path/to/your/font.ttf" -qr
or programmatically:
from captametropolis.utils import register_font
register_font("path/to/your/font.ttf", quiet_run=True) # Will also ask for admin rights (UAC panel)
Programmatic use
import captametropolis
captametropolis.add_captions(
video_file="my_short.mp4",
output_file="my_short_with_captions.mp4",
font_path="path/to/your/font.ttf", # Now you can use your custom font here
...
)
Custom configuration
import captametropolis
captametropolis.add_captions(
video_file="my_short.mp4",
output_file="my_short_with_captions.mp4",
font_path = "/path/to/your/font.ttf",
font_size = 130,
font_color = "yellow",
stroke_width = 3,
stroke_color = "black",
shadow_strength = 1.0,
shadow_blur = 0.1,
highlight_current_word = True,
highlight_color = "red",
line_count=1,
rel_width = 0.8,
)
Using Whisper locally
By default, OpenAI Whisper is used locally if the openai-whisper
package is installed. Otherwise, the OpenAI Whisper API is used. If you want to force the use of the API, you can specify use_local_whisper=False
in the arguments to captametropolis.add_captions
:
import captametropolis
captametropolis.add_captions(
video_file="my_short.mp4",
output_file="my_short_with_captions.mp4",
use_local_whisper=False,
)
You can install Captametropolis with pip install captametropolis[local]
to install Whisper locally as well.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for captametropolis-1.0.4-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 076f5105f19c551473d60600290d366491691a32499ce94b4aafbf6c26630d13 |
|
MD5 | f2a839f9334b68a53a456910c2bced57 |
|
BLAKE2b-256 | c64c8d481e5324cb9deb37c913bc2642156b503d555fd6ea9c11b88dd15b668d |