5.6 KiB
Quickstart — OpenTranscode
Get from zero to your first batch encode in under 10 minutes.
Prerequisites
- Linux (x86_64, any major distro)
- Python 3.12+ with pip
- ~2 GB free disk in
/tmp(for av1an source build, if needed) - sudo access (for system package installation)
Step 1 — Get the Code
git clone https://git.dcos.net/dcosnet/open-transcode.git
cd open-transcode
Step 2 — Install PySide6
pip install PySide6
If you hit permission errors, use a venv:
python -m venv .venv
source .venv/bin/activate
pip install PySide6
Step 3 — Launch
python open-transcode.py
The window opens with the MMD3 console theme. The ENCODE button is disabled — the app needs to probe your system first.
Step 4 — First-Run Auto-Setup
What happens automatically
~500ms after launch, the app:
- Detects your distro by reading
/etc/os-release(Arch, Debian, Fedora, openSUSE, NixOS, or generic). - Probes for binaries — searches distro-specific paths for
av1an,ffmpeg, andffprobe. - Checks av1an version — needs ≥ 0.4.0 (for
--chunk-methodsupport). - Probes FFmpeg libraries — verifies libsvtav1, libvpx, libx265, libopus, libvorbis, and flac availability.
- If anything is missing, spawns a background thread that:
- Installs all required packages via your distro's package manager.
- If av1an is too old, removes it and builds from source (git clone + cargo build).
- Re-probes the environment after installation completes.
You'll see the log box filling with status messages. Wait for the ENCODE button to light up.
NixOS (manual setup)
NixOS can't auto-install packages at runtime. Add this to your configuration:
environment.systemPackages = with pkgs; [
ffmpeg-full av1an svt-av1 rav1e aom libvpx x265
mkvtoolnix nasm gcc cmake git ninja cargo rustc
opus libvorbis flac
];
Then rebuild: sudo nixos-rebuild switch
Fedora / RHEL — RPM Fusion
If you're on Fedora or RHEL-like systems, the auto-prep installs RPM Fusion repos before attempting FFmpeg. This is handled automatically — just wait for it.
Step 5 — Your First Encode
5a. Set up folders
The defaults are ~/Videos/INCOMING (source) and ~/Videos/ARCHIVE (output). Create them or click the browse buttons to pick your own.
mkdir -p ~/Videos/INCOMING ~/Videos/ARCHIVE
Drop some video files into ~/Videos/INCOMING.
5b. Pick your settings
| Setting | Recommended first run | Why |
|---|---|---|
| VIDEO | AV1 (SVT-AV1) | Best compression, modern standard |
| PRESET | Medium | Good balance of speed and quality |
| AUDIO | Opus 128k | Excellent quality at low bitrate |
| CONTAINER | MKV | Universal, supports all codecs and subtitle formats |
| RESOLUTION | Original | Skip pre-scaling for fastest first run |
| SUBS | None | Skip subtitle muxing for first test |
| CRF knob | 30 | Reasonable file size reduction on most sources |
| AUDIO NORM knob | 0 (off) | No gain adjustment |
5c. Hit ENCODE
Click the amber > ENCODE button. The log box shows per-file progress:
> [1/5] Encoding: video1.mkv → /home/you/Videos/ARCHIVE/video1_archived.mkv
> av1an: workers=7 encoder=svt_av1 chunk-method=select
> ✓ video1.mkv — 1.2 GB → 340 MB (28.3%) duration match: 99.8%
> [2/5] Encoding: video2.mp4 → ...
5d. Verify output
Check ~/Videos/ARCHIVE/. Each file should play correctly in mpv, VLC, or any modern player.
Common First-Run Issues
"ENCODE button stays disabled"
The environment probe found a critical issue. Check the log box for red/warning messages. Common causes:
- No internet — auto-prep can't fetch packages or clone av1an from git.
- av1an build failed — scroll up in the log for the cargo error. Usually a missing Rust toolchain.
- FFmpeg missing libraries — the auto-prep should install them. If not, manually install the FFmpeg "full" variant for your distro.
"Codec greyed out in AUDIO dropdown"
The corresponding FFmpeg library isn't installed. For example, if FLAC is greyed out, install flac (Arch) or flac libflac-dev (Debian). The auto-prep handles this, but if you skipped it, re-launch and let it run.
Encoding is slow
- Try a faster preset (Faster instead of Slow/Medium).
- Raise the CRF — higher = smaller file = faster encode (but lower quality).
- Check your worker count — logged at the start of each encode. It's
physical_cores - 1. If it says 1, your CPU topology detection may have fallen back to a conservative estimate.
Output file is much larger than expected
- Lower the CRF — you may have it set too low (high quality, large file).
- x265/VP9 at low CRF produces significantly larger files than AV1 at the same CRF.
- FLAC audio is lossless and can be 500 MB+ for a 2-hour movie. Use Opus instead.
Next Steps
- Try resolution scaling — pick 1080p or 720p to normalize mixed-resolution batches.
- Enable subtitles — switch SUBS to "English" for forced-track soft subs.
- Batch delete — check "DELETE SOURCE AFTER VERIFY" to auto-remove originals after verified encoding. You'll get a confirmation dialog showing total file count and size before anything is deleted.
- Audio normalization — twist the AUDIO NORM knob if your sources have inconsistent volume. +3 dB is a good starting point for quiet sources.
Keyboard & Mouse
- CRF / Volume knobs — click and drag, or scroll the mouse wheel.
- Knobs snap to ticks by default for precise values.
- Log box — scrollable, read-only. Copy text with mouse selection.