CLI tools for editing videos in python. A plugin based approach.
Project description
vidtoolz
Make vides using python. A plugin-based CLI toolset for editing, authering videos, built with python.
Overview
vidtoolz is a collection of command-line tools designed to make videos and edit videos easier. The project takes a plugin-based approach, allowing users to extend its functionality by creating custom plugins.
After installing vidtoolz, install any of the following plugins.
VidToolz Plugins
| Command | Description |
|---|---|
| vidtoolz-beats | Get beats from a mp3 song |
| vidtoolz-concat | Concat videos using ffmpeg |
| vidtoolz-shorts | Create shorts from long form videos |
| vidtoolz-trim | Trim video using ffmpeg |
| vidtoolz-replace-audio | Replace audio for a video file |
| vidtoolz-add-sound | Add sound to a video |
| vidtoolz-add-text | Add text to a video file |
| vidtoolz-apply-greenscreen | Overlay a greenscreen video on top of a video |
To get help, just type vidtoolz or its shortcut vid to access the cli.
vidtoolz --help
or
vid --help
This will show all the plugins installed.
usage: vid [-h]
{plugins,install,trim,addtext,chapters,beats,greenscreen,shorts,repaudio,addsound,concat}
...
Video Tools for editing videos using python
positional arguments:
plugins Get all listed plugins
install Install plugins in the same environemnt as vidtoolz
trim Trim video using ffmpeg
addtext Add text to a video file
chapters Write formated youtube chapters with text inputs
beats Get beats from a mp3 song
greenscreen Apply greenscreen video on top of a video
shorts Create shorts from long form videos
repaudio Replace audio for a video file
addsound Add sound to a video
concat Concat videos using ffmpeg
optional arguments:
-h, --help show this help message and exit
To install a plugin, just type
vid install vidtoolz-trim
Features
- A simple and intuitive CLI interface
- Extensive plugin support for customizing and extending the toolset
- Integration with popular Python libraries and frameworks
- Support for multiple Python versions (>=3.9)
Requirements
- Python 3.9 or later
- The
pluggylibrary for plugin management
Installation
pip install vidtoolz
Developing your plugin
You'll need to have cookiecutter installed.
pipx install cookiecutter
Regular pip will work OK too.
Usage
Run cookiecutter gh:sukhbinder/vidtoolz-plugin and then answer the prompts. Here's an example run:
cookiecutter gh:sukhbinder/vidtoolz-plugin
This will show this. Fill this and the template is ready. Just add your code.
plugin_name []: vidtoolz plugin template demo
description []: Demonstrating https://github.com/sukhbinder/vidtoolz-plugin
hyphenated [vidtoolz-plugin-template-demo]:
underscored [vidtoolz_plugin_template_demo]:
github_username []: sukhbinder
author_name []: Sukhbinder Singh
Project details
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file vidtoolz-0.0.2.tar.gz.
File metadata
- Download URL: vidtoolz-0.0.2.tar.gz
- Upload date:
- Size: 8.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
28f959ce17615586feb3b2f870c5c3a4455f69d38a1212ce4baf930dcb20f732
|
|
| MD5 |
d5d001a7fbd0e8594240e2ff196bca0a
|
|
| BLAKE2b-256 |
2fc90dfdbf826aaf0b94194d7773a9c340cfad1ed3098633440561878b989ae8
|
Provenance
The following attestation bundles were made for vidtoolz-0.0.2.tar.gz:
Publisher:
publish.yml on sukhbinder/vidtoolz
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vidtoolz-0.0.2.tar.gz -
Subject digest:
28f959ce17615586feb3b2f870c5c3a4455f69d38a1212ce4baf930dcb20f732 - Sigstore transparency entry: 182939926
- Sigstore integration time:
-
Permalink:
sukhbinder/vidtoolz@940ca97bf8fc8358cdb253f378558d1667bcd45b -
Branch / Tag:
refs/tags/v0.0.2 - Owner: https://github.com/sukhbinder
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@940ca97bf8fc8358cdb253f378558d1667bcd45b -
Trigger Event:
release
-
Statement type:
File details
Details for the file vidtoolz-0.0.2-py3-none-any.whl.
File metadata
- Download URL: vidtoolz-0.0.2-py3-none-any.whl
- Upload date:
- Size: 9.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
62adb6695d67209fe64279186d636148a639a1e6506548fd73d63b4442369eed
|
|
| MD5 |
6aebed2d4b688425a8ffe99d7a31f8c1
|
|
| BLAKE2b-256 |
a987dec61a26cbe5324def58967d075529aa78909a2c1631d7329226f7f1d752
|
Provenance
The following attestation bundles were made for vidtoolz-0.0.2-py3-none-any.whl:
Publisher:
publish.yml on sukhbinder/vidtoolz
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vidtoolz-0.0.2-py3-none-any.whl -
Subject digest:
62adb6695d67209fe64279186d636148a639a1e6506548fd73d63b4442369eed - Sigstore transparency entry: 182939928
- Sigstore integration time:
-
Permalink:
sukhbinder/vidtoolz@940ca97bf8fc8358cdb253f378558d1667bcd45b -
Branch / Tag:
refs/tags/v0.0.2 - Owner: https://github.com/sukhbinder
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@940ca97bf8fc8358cdb253f378558d1667bcd45b -
Trigger Event:
release
-
Statement type: