An open API service indexing awesome lists of open source software.

https://github.com/dennysora/auto-video-organize

Blazing fast CLI tool for automating video organization. Features batch HEVC encoding, file deduplication, contact sheet generation, and intelligent sorting. Written in Rust.
https://github.com/dennysora/auto-video-organize

automation file-management media-organization rust thumbnail-generator tooling video video-compression video-organize video-processing

Last synced: 6 months ago
JSON representation

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

Awesome Lists containing this project

README

          

[繁體中文](doc/README.zh-TW.md) | [简体中文](doc/README.zh-CN.md) | [日本語](doc/README.ja.md)

# 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):
```bash
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.