Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/BlockListed/encodedir

Encode a dir using ffmpeg
https://github.com/BlockListed/encodedir

automation encoding ffmpeg linux rust unix video

Last synced: about 1 month ago
JSON representation

Encode a dir using ffmpeg

Awesome Lists containing this project

README

        

# LINUX ONLY

# Encodedir
Encode a directory using the systems ffmpeg.

# Install
* Make sure ffmpeg is installed on your system.
* Download latest release from the releases tab.
* Unpack the archive using `tar -xf [downloaded archive goes here]`.
* Run `sh ./install.sh` from a terminal in the extracted folder.
* If your shell can't find it, that probably means the default binary location (~/.local/bin) isn't in your path.
* If this is the case please either add the location to your path or run with `~/.local/bin/encodedir`.
## Notes
* The default config use hevc_nvenc as the encoder. If your system doesn't have an nvidia gpu with nvenc, edit the config file to use an encoder like hevc_vaapi (for systems, that support vaapi) or just the cpu encoder (libx265).

# Install from source
* Install a rust toolchain for your system. (Only linux is tested and I probably won't add config locations that work with windows for a while).
* Compile with `cargo build --release`.
* (Optional) strip binary with `strip target/release/encodedir`.
* Move file to a location in your path (Ex. /usr/bin or $HOME/.local/bin (AKA ~/.local/bin)).
* Use with `encodedir [Path to directory]`.

# Usage
* Usage information is available using `encodedir --help`

# Configuration
* The config file is location at `$HOME/.config/encodedir.toml` (AKA `~/.config/encodedir.toml`).
* Configure command args (Like switching from nvidia nvenc to vaapi or cpu encoding).
* Configure what files encodedir sees as video files, incase you don't have your files in an MKV, MP4 or MOV container.