FFmpeg made simple. Just type what you want.
Project description
🎵 VibeFFmpeg
FFmpeg made simple. Just type what you want.
VibeFFmpeg is an intelligent, open-source Python wrapper that democratizes media processing. Instead of memorizing complex CLI flags, users interact with media files using natural language.
🚀 Features
- 🧠 Natural Language Parsing: Understands commands like "Extract audio as mp3" or "Trim first 10 seconds".
- 🛡️ Smart Validation: Automatically detects codecs, file extensions, and prevents destructive overwrites.
- 🔌 Modular Architecture: Built with decoupled command parsing and execution logic for easy extensibility.
- ⚡ Lightweight: Zero heavy dependencies, designed for speed.
🛠️ Installation
- bash
Clone the repository
git clone https://github.com/gintokisakamoto/VibeFFmpeg.git cd VibeFFmpeg
Install dependencies
pip install -r requirements.txt
Ensure FFmpeg is installed (Ubuntu/Debian)
sudo apt install ffmpeg
📖 Usage
Trim a video
python main.py --input video.mp4 --cmd "Trim first 10 sec"
Convert format
python main.py --input video.mov --cmd "Convert to mp4"
Extract audio
python main.py --input lecture.mp4 --cmd "Extract audio as wav"
🏗️ Architecture
app/cmd_parser.py: Core NLP engine. Uses regex and pattern matching to translate intent into FFmpeg arguments.
app/wrapper.py: Safe execution layer handling subprocess calls and error management.
ui/cli.py: Command-line interface logic.
🤝 Contributing
Contributions are welcome!
-
Fork the repo.
-
Create a feature branch (git checkout -b feature/AmazingFeature).
-
Commit your changes (git commit -m 'Add some AmazingFeature').
-
Push to the branch.
-
Open a Pull Request.
Built with ❤️ by GintokiSakamoto
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
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 vibeffmpeg-0.1.0.tar.gz.
File metadata
- Download URL: vibeffmpeg-0.1.0.tar.gz
- Upload date:
- Size: 9.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
46635c24980be88127dd7a305e61b7413338269569386ace893fee97247fa0a7
|
|
| MD5 |
b39235b5fb2c03eeabeaf9d90cb50696
|
|
| BLAKE2b-256 |
73ff5116d73ca37fb6cd341d38f1ef6b02ab5b0f0623c56be286b118d3f4a509
|
File details
Details for the file vibeffmpeg-0.1.0-py3-none-any.whl.
File metadata
- Download URL: vibeffmpeg-0.1.0-py3-none-any.whl
- Upload date:
- Size: 8.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c7a199305b37b938346422d8d37bc6d8ffbf9754119f6bc6c12c1ef763b283e1
|
|
| MD5 |
2af6f3c963501a857b11422ec002ee2a
|
|
| BLAKE2b-256 |
05821a8b391fae157fa40d31f31153da9cd15f30db837933bc9774bf214da936
|