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

Uploaded Python 3

File details

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

File metadata

  • Download URL: fid_ffmpeg-0.4.2.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.2.tar.gz
Algorithm Hash digest
SHA256 acb2c966f51372eede986fe161d541e641bb0ab3fe24241399b5a1916b1347f8
MD5 ebefa49e70dde36b7328deb7775a96db
BLAKE2b-256 f624f28e24501866ee1b7c7877df0f4434f46e205ab64800486ce012c050f3ed

See more details on using hashes here.

File details

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

File metadata

  • Download URL: fid_ffmpeg-0.4.2-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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 6eb4ccc94403fec8f7b1dde48f3485d0522533d38f8f33c13a117d9ae1a466cf
MD5 84ee337947f995e4526eb36026d3b602
BLAKE2b-256 4fb3ba407ba326d10f12b27511038c2442f2983345876a61e8b1f2a16427e74b

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