framix 0.1.2

A simple yet powerful Rust-based video editor wrapper for FFmpeg
framix-0.1.2 is not a library.

Framix (Video Editor)

A Rust-based command-line tool for basic video editing tasks, utilizing ffmpeg under the hood.

Features

  • Combine: Merge multiple video files into one.
  • Compress: Reduce video file size using CRF (Constant Rate Factor).
  • Add Music: Add a background audio track to a video (mixing or replacing).
  • Timelapse: Speed up a video to create a timelapse effect.
  • Info: Display detailed metadata about a video file.

Prerequisites

  • Rust (latest stable)
  • FFmpeg (must be added to your system PATH)

Installation

git clone https://github.com/PritamP20/framix
cd video-editor
cargo build --release

Usage

You can run the tool using cargo run -- <command> or after installing with framix <command>.

1. Combine Videos

Concatenate multiple video files into a single output.

framix combine --inputs v1.mp4 v2.mp4 v3.mp4 --output combined.mp4

2. Compress Video

Compress a video to reduce file size.

  • --crf: Constant Rate Factor (0-51). Lower is better quality, higher is lower size. Default is 23.
framix compress --input input.mp4 --output output.mp4 --crf 28

3. Add Music

Add an audio file to a video.

  • --reduce-original: Volume of the original video audio (e.g., 0.1 for 10%). Default is 1.0.
framix add-music --video input.mp4 --audio music.mp3 --output output.mp4 --reduce-original 0.2

4. Create Timelapse

Speed up a video. usage of --speed factor. Audio is removed.

framix timelapse --input input.mp4 --output output.mp4 --speed 10.0

5. Get Video Info

Show metadata about a video file (resolution, codecs, bitrate, etc.).

framix info --input input.mp4

TUI Mode

Framix now includes an interactive Terminal User Interface (TUI).

framix tui
# or simply
framix

Keybindings

Key Action
Shift + Tab Switch Tab
Tab Autocomplete (files)
↑ / ↓ Select Field
Enter Next Field
Shift + Enter Execute Command
Ctrl + C Quit

License

MIT