vidtoolz-add-text
Add text to a video file using FFmpeg (default) or MoviePy
Installation
First install vidtoolz.
pip install vidtoolz
Then install this plugin in the same environment as your vidtoolz application.
vidtoolz install vidtoolz-add-text
Note: FFmpeg is required. The plugin will automatically try to use FFmpeg from your system path, or fall back to static-ffmpeg if available.
Usage
type vid addtext --help to get help
usage: vid addtext [-h] [-t TEXT] [-mt MULTI_TEXT] [-o OUTPUT]
[-p {top-left,top-right,bottom-left,bottom-right,center,bottom}]
[-st START_TIME] [-et END_TIME] [-f FONTSIZE]
[-pad PADDING] [-d DURATION] [--use-moviepy] [-x X] [-y Y]
main_video
Add text to a video file
positional arguments:
main_video Path to the main video file.
optional arguments:
-h, --help show this help message and exit
-t TEXT, --text TEXT Text to write
-mt MULTI_TEXT, --multi-text MULTI_TEXT
Multi-text in format "text,start,duration". Can be
used multiple times. ex "hello,1:20,10"
-o OUTPUT, --output OUTPUT
Output video file name (default: None)
-p {top-left,top-right,bottom-left,bottom-right,center,bottom}, --position {top-left,top-right,bottom-left,bottom-right,center,bottom}
Position of the text (default: bottom)
-st START_TIME, --start-time START_TIME
Start time when text should appear (supports formats like "1:20" or seconds) (default: 0)
-et END_TIME, --end-time END_TIME
End time when text should disappear (supports formats like "1:20" or seconds) (default: None)
-f FONTSIZE, --fontsize FONTSIZE
Fontsize (default: 70)
-pad PADDING, --padding PADDING
Padding (default: 50)
-d DURATION, --duration DURATION
Duration in seconds (default: 4)
--use-moviepy If provided, use MoviePy instead of FFmpeg
-x X, --x X X position of the overlay (can be number or FFmpeg expression, e.g., 'main_w-text_w')
-y Y, --y Y Y position of the overlay (can be number or FFmpeg expression, e.g., 'main_h-text_h')
Examples
Add text at the bottom of the video (default position):
vid addtext -t "Hello World" input.mp4
Add text at a specific position with custom timing:
vid addtext -t "Hello World" -p top-right -st 10 -et 20 input.mp4
Add text with time format (minutes:seconds):
vid addtext -t "Hello World" -st 0:30 -et 1:15 input.mp4
Add multiple text overlays:
vid addtext -mt "Hello,0:10,5" -mt "World,0:20,5" input.mp4
Use MoviePy instead of FFmpeg:
vid addtext -t "Hello World" --use-moviepy input.mp4
Custom positioning with FFmpeg expressions:
vid addtext -t "Hello World" -x 100 -y 100 input.mp4
Development
To set up this plugin locally, first checkout the code. Then create a new virtual environment:
cd vidtoolz-add-text
python -m venv venv
source venv/bin/activate
Now install the dependencies and test dependencies:
pip install -e '.[test]'
To run the tests:
python -m pytest
Metadata
Release files for vidtoolz-add-text 0.4.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| vidtoolz_add_text-0.4.2.tar.gz | 12.9 kB | With provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| vidtoolz_add_text-0.4.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 24.3 kB
Release files / vidtoolz_add_text-0.4.2.tar.gz
| Download URL | vidtoolz_add_text-0.4.2.tar.gz |
|---|---|
| Size | 12.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a9266d75efbd3b82bb29c5932e75f4bdc7851cacc8682a7ea4ce73690a167f2f
|
|
BLAKE2b-256 checksum How to use checksums |
7205dcdc8b13ba69b8c4b2dbd0fb50c34df2fad30c64447448eef064bd024707
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 11, 2026.
Transparency logRelease files / vidtoolz_add_text-0.4.2-py3-none-any.whl
| Download URL | vidtoolz_add_text-0.4.2-py3-none-any.whl |
|---|---|
| Size | 11.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
35bb86d7d12f014cc74ccc9b8064a417a0949380684c4b72f2335cb5955b9b29
|
|
BLAKE2b-256 checksum How to use checksums |
6464598f44b2597c49ebef1923bbfcad166839f2e863e66802ed1acc4a48fff0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 11, 2026.
Transparency logSecurity for vidtoolz-add-text 0.4.2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for vidtoolz_add_text-0.4.2.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 11, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.