Skip to main content

FFmpeg-based CLI tool for video and audio operations like editing, extracting, streaming, and encoding

Project description

fid-ffmpeg PyPI Downloads

Python wrapper around the FFmpeg command line tool for video operations.

fid

https://github.com/user-attachments/assets/abcc8aa0-3ada-4548-8f99-987687cfccd9

Requirements

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fid_ffmpeg-0.4.3.tar.gz (8.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fid_ffmpeg-0.4.3-py3-none-any.whl (16.9 kB view details)

Uploaded Python 3

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

Hashes for fid_ffmpeg-0.4.3.tar.gz
Algorithm Hash digest
SHA256 e78d27a712b412ece5ff1cfa0f851a629405977abc62644cb15a9f8aea8a6adc
MD5 322b6f0fcf1c387b911552ab02e3f480
BLAKE2b-256 4158ae7a287b08027b269329945ab63f9a3cc7b16a6ea3dd159a4b9fbc9e1bcc

See more details on using hashes here.

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

Hashes for fid_ffmpeg-0.4.3-py3-none-any.whl
Algorithm Hash digest
SHA256 e5cebd02d993cbd37a4947f4d215787a212c108eb95b79b611e4f6aed824b84e
MD5 e0e9243600743fb29ee0d516a0b5b31e
BLAKE2b-256 861cdd35a19d2a48fb7eeb43258bfc56e2286c373ed914c0a5221fea7e8540f1

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page