Batch-Videotranscoding-Wrapper für NVEncC64 von rigaya mit automatischer Crop-Erkennung, Qualitätsautomatik, Audio-Behandlung und Metadaten-Bereinigung.
- Auto-Crop — Ermittelt schwarze Balken per
ffmpeg cropdetectan 3 Zeitpunkten und mapped auf Standard-16:9-Resolutionen - Auto-Quality — Wählt Qualitätsstufe anhand des Jahrzehnts im Dateinamen (
(19xx)= hq,(20xx)= def) - Auto-Skip — Bereits im Zielcodec vorliegende Dateien werden ohne Neukodierung verschoben
- Audio-Encoding — AC3, AAC, E-AC3 oder direkte Kopie (auch selektive Streams)
- VPP-Filter — Denoise, Sharpening, Super-Resolution, VSR, Deinterlacing, HDR→SDR u.v.m.
- Tag-Bereinigung — Automatische MKV-Metadaten-Normalisierung via
mkvpropedit - Fehlerbehandlung — Nicht analysierbare Dateien landen in
_Check/zur manuellen Prüfung - Debug-Modus — Detaillierte Ausgabe des Auto-Crop-Prozesses via
DEBUG_AUTOCROP=1
Folgende Programme müssen im Pfad verfügbar sein:
ffmpeg.exe / ffprobe.exe
mediainfo.exe
nvencc64.exe
mkvpropedit.exe / mkvmerge.exe
nvencc64_wrapper <encoder> [audio] [quality] [crop] [filter] [mode] [decoder] [chkenc]
| Pos | Parameter | Default | Beschreibung |
|---|---|---|---|
| 1 | encoder | (required) | Videoencoder |
| 2 | audio | ac3 |
Audiobehandlung |
| 3 | quality | def |
Qualitätsstufe (QVBR-Wert) |
| 4 | crop | none |
Crop-Modus / Zielauflösung |
| 5 | filter | none |
VPP-Filterkette |
| 6 | mode | none |
Spezialmodi (Deinterlace, FPS, HDR→SDR, Dolby Vision) |
| 7 | decoder | hw |
Hardware- oder Software-Decoder |
| 8 | chkenc | true |
Bereits kodierte Dateien erkennen |
| Wert | Codec | Profil |
|---|---|---|
def / hevc |
HEVC (H.265) | main |
he10 |
HEVC (H.265) | main10, 10-bit |
h264 |
H.264 | high |
av1 |
AV1 | high |
| Wert | Verhalten |
|---|---|
ac3 (default) |
AC3, Stereo → 192k, 5.1 → 384k, 7.1 → 5.1 Downmix |
aac |
AAC, Stereo → 128k, 5.1 → 256k |
eac3 |
E-AC3, Stereo → 320k, 5.1 → 640k |
copy |
Alle Audiostreams unverändert kopieren |
copy1 |
Nur Stream 1 kopieren |
copy2 |
Nur Stream 2 kopieren |
copy12 |
Streams 1 und 2 kopieren |
copy23 |
Streams 2 und 3 kopieren |
| Wert | HEVC QVBR | H.264 QVBR | Tuning | Multipass |
|---|---|---|---|---|
uhq |
24 | 20 | uhq / hq | 2pass-full |
hq |
26 | 22 | hq | 2pass-full |
def (default) |
28 | 24 | hq | 2pass-quarter |
lq |
30 | 26 | lowlatency | none |
ulq |
32 | 28 | ultralowlatency | none |
auto |
auto | auto | Automatisch anhand Jahr im Dateinamen: (19xx) → hq, (20xx) → def, sonst def |
Automatisch:
| Wert | Verhalten |
|---|---|
auto |
Führt ffmpeg cropdetect an 3 Zeitpunkten durch, ermittelt per Median schwarze Balken und mapped auf Standard-16:9-Resolutionen |
none |
Kein Crop |
Vertikaler Crop (schwarze Balken oben/unten entfernen, Zielbreite 1920):
696, 768, 800, 804, 808, 812, 816, 872, 960, 1012, 1024, 1036, 1040
Resolutionen (kein aktiver Crop, nur Skalierung):
| Wert | Auflösung |
|---|---|
720 |
1280x-2 (Breite fix) |
720p |
-2x720 (Höhe fix) |
720f |
1280x720 (fest) |
1080 |
1920x-2 (Breite fix) |
1080p |
-2x1080 (Höhe fix) |
1080f |
1920x1080 (fest) |
2160 |
3840x-2 (Breite fix) |
2160p |
-2x2160 (Höhe fix) |
2160f |
3840x2160 (fest) |
Letterbox-Standards (1920x1080 Basis mit horizontalem Crop):
1440, 1348, 1420, 1480, 1500, 1764, 1780, 1788, 1792, 1800
Aliase (alle = kein Crop): c1, c2, c3, c4, c5, c6
| Wert | Effekt |
|---|---|
none |
Kein Filter |
edgelevel |
Kantenschärfung (--vpp-edgelevel) |
smooth |
Motion-Smoothing (--vpp-msmooth) |
smooth3 |
Motion-Smoothing, Stärke 3 |
smooth6 |
Motion-Smoothing, Stärke 6 |
nlmeans |
Rauschreduzierung (--vpp-nlmeans) |
gauss |
Weichzeichner Gauss 3px |
gauss5 |
Weichzeichner Gauss 5px |
sharp |
Schärfung (--vpp-msharpen) |
denoise |
NVIDIA Denoise (leicht) |
denoisehq |
NVIDIA Denoise (stark) |
artifact |
NVIDIA Artifact-Reduction (leicht) |
artifacthq |
NVIDIA Artifact-Reduction (stark) |
superres |
NVIDIA Super-Resolution (Mode 0) |
superreshq |
NVIDIA Super-Resolution (Mode 1) |
vsr |
NVIDIA VSR (NGX) + Unsharp |
vsrdenoise |
VSR + Denoise (leicht) |
vsrdenoisehq |
VSR + Denoise (stark) |
vsrartifact |
VSR + Artifact-Reduction (leicht) |
vsrartifacthq |
VSR + Artifact-Reduction (stark) |
log |
Schreibt Input-Packet-Log (--log-packets) |
f1–f6 |
Aliase = kein Filter |
| Wert | Effekt |
|---|---|
none |
Kein Spezialmodus |
deint |
Auto-Deinterlacing (adaptive) |
yadif |
Yadif-Deinterlacing (auto) |
yadifbob |
Yadif Bob (verdoppelt Framerate) |
double |
FRUC-Frameverdopplung |
23fps |
FPS auf 24000/1001 erzwingen |
25fps |
FPS auf 25.0 erzwingen |
30fps |
FPS auf 30.0 erzwingen |
60fps |
FPS auf 60.0 erzwingen |
29fps |
FPS auf 30000/1001 erzwingen |
59fps |
FPS auf 60000/1001 erzwingen |
tweak |
Helligkeit/Kontrast/Gamma/Sättigung anpassen |
lighter |
Curves heller |
darker |
Curves dunkler |
vintage |
Curves Vintage-Look |
linear |
Lineare Curves (alle Kanäle) |
HDRtoSDR |
HDR→SDR (BT.2390) |
HDRtoSDRR |
HDR→SDR (Reinhard) |
HDRtoSDRM |
HDR→SDR (Mobius) |
HDRtoSDRH |
HDR→SDR (Hable) |
dv / dolby-vision |
Dolby-Vision-Passthrough (RPU, Master-Display, MaxCLL) |
| Wert | Verhalten |
|---|---|
def / hw |
Hardware-Decoder (--avhw) |
sw |
Software-Decoder (--avsw) |
auto |
Kein expliziter Decoder — NVEncC wählt automatisch |
| Wert | Verhalten |
|---|---|
def / true (default) |
Prüft, ob Quelle bereits im Zielcodec vorliegt → überspringt Neukodierung |
false |
Immer neu kodieren |
Der Auto-Crop (crop=auto) funktioniert folgendermaßen:
- Probe:
ffmpeg cropdetectwird an 3 Zeitpunkten ausgeführt (00:02:00, 00:10:00, 00:20:00) - Median: Aus den Crop-Ergebnissen wird der Median gebildet
- Mapping: Der ermittelte vertikale Crop wird auf eine Standard-16:9-Höhe gemappt:
- 696px ↔ 192+192, 768px ↔ 156+156, 800px ↔ 140+140, …
- 1080px ↔ 0+0 (kein Crop = Full HD)
- Asymmetrie-Erkennung: Bei zu großen Abweichungen zwischen oberem und unterem Crop wird die Datei nach
_Check/verschoben
Der Auto-Crop skaliert auf 1920px Breite. Horizontale Letterbox-Varianten (z.B. 2.35:1) werden auf passende Breiten gemapped.
Nach der Kodierung werden automatisch MKV-Metadaten via mkvpropedit normalisiert:
- Video-Track: Sprache auf
und, Default/Forced-Flags auf 0, Name gelöscht - Audio: Erster deutscher Track (
ger/deu) wird als Default markiert - Subtitles: Forced-Tracks werden korrekt geflaggt (erster Forced-Track = Default+Forced)
- Track-Namen: Reine Sprachennamen (
Deutsch,English),FulloderSDH/Forcedwerden normalisiert oder gelöscht
set "DEBUG_AUTOCROP=1"Aktiviert detaillierte Ausgabe der Crop-Erkennung, NVEnc-Parameter und Zwischenergebnisse.
- Alle Videodateien im aktuellen Ordner werden nacheinander verarbeitet
- Pro Datei: Codec-Prüfung → ggf. Auto-Crop → Encoding nach
_Converted/<name>.mkv - Nach Encoding: 5s Pause, dann nächste Datei
- Am Ende: Anzeige der Speicherersparnis (komprimierte vs. originale Größe)
- Unbekannter Codec → Datei wird nach
_Check/verschoben - Crop-Probe fehlgeschlagen → Datei wird nach
_Check/verschoben - Asymmetrische schwarze Balken → Datei wird nach
_Check/verschoben - Quelle zu klein (< 1280×696) → Datei wird nach
_Check/verschoben - Tag-Edit fehlgeschlagen → Datei wird nach
_Check/verschoben
nvencc64_wrapper hevc ac3Standard: HEVC, AC3-Audio, Qualität def, kein Crop, kein Filter.
nvencc64_wrapper hevc ac3 auto autoAutomatische Qualität (anhand Jahreszahl) + automatischer Crop.
nvencc64_wrapper hevc copy auto 1080 vsrHEVC, Audio Kopie, Auto-Qualität, Skalierung auf 1080p, VSR-Upscaling.
nvencc64_wrapper he10 copy hq 1080 gauss sw false10-bit HEVC, Audio Kopie, hohe Qualität, Gauss-Weichzeichner, Software-Decoder, immer neu kodieren.
nvencc64_wrapper hevc eac3 auto auto vsrdenoise auto falseHEVC, E-AC3-Audio, Auto-Qualität, Auto-Crop, VSR+Denoise, HW-Decoder, immer kodieren.
nvencc64_wrapper av1 aac lq 720p sharpAV1, AAC-Audio, niedrige Qualität, 720p Höhen-skaliert, Schärfung.
nvencc64_wrapper hevc ac3 auto none none HDRtoSDRHDR→SDR-Konvertierung mit BT.2390-Tonemapping.
Für einen automatisierten Workflow empfiehlt sich ein minimaler Parametersatz. Der Wrapper übernimmt dann Qualitätsauswahl, Crop und Audio automatisch:
nvencc64_wrapper hevc ac3 auto autoNeue Dateien im Verzeichnis werden damit einheitlich und ohne manuelle Eingriffe verarbeitet.
Für weiterführende Fragen: Wiki
Private use / experimental. No warranty.