Skip to content

Blazing fast CLI tool for automating video organization. Features batch HEVC encoding, file deduplication, contact sheet generation, and intelligent sorting. Written in Rust.

Notifications You must be signed in to change notification settings

DennySORA/Auto-Video-Organize

Repository files navigation

繁體中文 | 简体中文 | 日本語

Auto Video Organize

Overview

This repository focuses on consistent releases, reliable automation, and clear project documentation. The README stays intentionally high-level and avoids implementation details.

Features

This tool provides a suite of utilities to manage large video collections:

  • Video Encoder: Batch converts videos to HEVC/x265 format using FFmpeg to save space while maintaining quality.
  • Duplication Checker: Identifies duplicate files using BLAKE3 hashing and moves them to a separate directory to clean up storage.
  • Contact Sheet Generator: Automatically generates contact sheet images for videos. It uses scene detection to pick meaningful timestamps and processes thumbnails in parallel for speed.
  • Auto Move by Type: Scans a directory and organizes files into subfolders based on their file extensions.
  • Orphan File Mover: Detects and relocates "orphan" files—such as sidecar files or thumbnails that no longer have a corresponding video file.
  • Video Renamer: Sorts video files by their duration and renames them to maintain a specific order.

Install

One-line install (builds from source):

curl -fsSL https://raw.githubusercontent.com/DennySORA/Auto-Video-Organize/main/install.sh | bash

Requirements:

  • git
  • Rust toolchain (cargo)

Release binaries (recommended):

  1. Download the asset matching your OS/arch from GitHub Releases.
  2. Extract it (.tar.gz on macOS/Linux, .zip on Windows).
  3. Move the binary to a directory on your PATH (e.g. ~/.local/bin).

Source build (manual):

  1. git clone https://github.com/DennySORA/Auto-Video-Organize.git
  2. cd Auto-Video-Organize
  3. cargo build --release --locked
  4. Copy target/release/auto_video_organize to a directory on your PATH.

Script options:

  • REF to select a tag/branch (default: main).
  • PREFIX or BIN_DIR to change the install location.

CI/CD

  • Security scanning for dependency advisories
  • Unit tests on every push and pull request
  • Automatic Release creation when a tag is pushed (e.g. v1.2.3)
  • Release assets include prebuilt binaries

Contributing

Open an issue or pull request with a clear scope and rationale.

Support

Use GitHub Issues for questions and requests.

About

Blazing fast CLI tool for automating video organization. Features batch HEVC encoding, file deduplication, contact sheet generation, and intelligent sorting. Written in Rust.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •