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.4.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.4-py3-none-any.whl (16.9 kB view details)

Uploaded Python 3

File details

Details for the file fid_ffmpeg-0.4.4.tar.gz.

File metadata

  • Download URL: fid_ffmpeg-0.4.4.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.4.tar.gz
Algorithm Hash digest
SHA256 0a0fd1fe42849ace3520f924a5e0a1a05da8a4c70992dab27c2300bcc3f4c9a6
MD5 80d4019bf2659ecde4d0f2378000a58a
BLAKE2b-256 02d3edeebd565034bceacc5a4d69502f3e6a30b6337d50ac2c8f4980d0798ce9

See more details on using hashes here.

File details

Details for the file fid_ffmpeg-0.4.4-py3-none-any.whl.

File metadata

  • Download URL: fid_ffmpeg-0.4.4-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.4-py3-none-any.whl
Algorithm Hash digest
SHA256 dcd789dbce6f9d3ea0b8e287172da922984a32413526b4c6739d9729fcd22e8e
MD5 0de4055e2bcfa6781b371259018c9ebf
BLAKE2b-256 b520703e1101664a087aab87b8c8a3d933c6340caee6a7ea6de1620ee1b6a5a8

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