FFmpeg-based CLI tool for video and audio operations like editing, extracting, streaming, and encoding
Project description
fid-ffmpeg 
Python wrapper around the FFmpeg command line tool for video operations.
fid
https://github.com/user-attachments/assets/abcc8aa0-3ada-4548-8f99-987687cfccd9
Requirements
- python >=3.9 : Download Python
- ffmpeg : Download FFmpeg
- install fid-cli with pip :
pip install fid-ffmpeg
installation demo
https://github.com/user-attachments/assets/6063b46b-dd4a-4cb3-a318-869f37bcf60f
Usage
Run fid for the interactive menu, or use direct commands:
fid --help: Show help for fid CLI.fid info "videoPath": Get all info about the video.fid audio "videoPath": Extract audio from the video.fid mute "videoPath": Mute the video.fid gif "videoPath": Create a GIF from the video.fid frames "videoPath": Extract all video frames into a folder.fid compress "videoPath": Compress the video to reduce file size.
For more advanced options, use the interactive mode by running fid without arguments.
Features
- Interactive CLI with menus for video, audio, extract, stream, and encode operations.
- Built with Typer for commands and Questionary for interactive prompts.
- Rich console output for a modern look.
Project Structure
FID ├─ LICENSE ├─ pyproject.toml ├─ README.md └─ src ├─ fid.py ├─ fid_interactive.py ├─ initial_files │ ├─ error_handling.py │ └─ init.py ├─ tasks │ ├─ audio │ │ ├─ audio_interactive.py │ │ ├─ bitrate.py │ │ ├─ channels.py │ │ ├─ codec.py │ │ ├─ compressor.py │ │ ├─ delay.py │ │ ├─ denoise.py │ │ ├─ equalizer.py │ │ ├─ fade.py │ │ ├─ mix.py │ │ ├─ mute.py │ │ ├─ normalize.py │ │ ├─ replace.py │ │ ├─ speed.py │ │ ├─ trim.py │ │ ├─ volume.py │ │ └─ init.py │ ├─ encode │ │ ├─ av1.py │ │ ├─ encode_interactive.py │ │ ├─ h264.py │ │ ├─ h265.py │ │ └─ init.py │ ├─ extract │ │ ├─ attachments.py │ │ ├─ audio.py │ │ ├─ audio_channels.py │ │ ├─ audio_track.py │ │ ├─ chapters.py │ │ ├─ extract_interactive.py │ │ ├─ frames.py │ │ ├─ keyframes.py │ │ ├─ subtitles.py │ │ ├─ subtitles_convert.py │ │ ├─ subtitles_track.py │ │ ├─ thumbnails.py │ │ └─ init.py │ ├─ info.py │ ├─ stream │ │ ├─ dash.py │ │ ├─ hls.py │ │ ├─ http.py │ │ ├─ rtmp.py │ │ ├─ rtsp.py │ │ ├─ srt.py │ │ ├─ stream_interactive.py │ │ ├─ udp.py │ │ └─ init.py │ ├─ video │ │ ├─ compressor.py │ │ ├─ concat.py │ │ ├─ crop.py │ │ ├─ fps.py │ │ ├─ gif.py │ │ ├─ resize.py │ │ ├─ rotate.py │ │ ├─ speed.py │ │ ├─ trim.py │ │ ├─ video_interactive.py │ │ └─ init.py │ └─ init.py ├─ welcome.py └─ init.py
## Contributing
Contributions are welcome! Fork the repo, create a branch, and submit a pull request. For major changes, open an issue first.
## About
Python wrapper around the FFmpeg command line tool.
[PyPI Project](https://pypi.org/project/fid-ffmpeg/)
### Topics
- audio
- python
- cli
- video
- ffmpeg
- frames
- gif
- compressor
- ffmpeg-wrapper
- rich
- mute
- typer-cli
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 fid_ffmpeg-0.4.3.tar.gz.
File metadata
- Download URL: fid_ffmpeg-0.4.3.tar.gz
- Upload date:
- Size: 8.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e78d27a712b412ece5ff1cfa0f851a629405977abc62644cb15a9f8aea8a6adc
|
|
| MD5 |
322b6f0fcf1c387b911552ab02e3f480
|
|
| BLAKE2b-256 |
4158ae7a287b08027b269329945ab63f9a3cc7b16a6ea3dd159a4b9fbc9e1bcc
|
File details
Details for the file fid_ffmpeg-0.4.3-py3-none-any.whl.
File metadata
- Download URL: fid_ffmpeg-0.4.3-py3-none-any.whl
- Upload date:
- Size: 16.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e5cebd02d993cbd37a4947f4d215787a212c108eb95b79b611e4f6aed824b84e
|
|
| MD5 |
e0e9243600743fb29ee0d516a0b5b31e
|
|
| BLAKE2b-256 |
861cdd35a19d2a48fb7eeb43258bfc56e2286c373ed914c0a5221fea7e8540f1
|