-
Notifications
You must be signed in to change notification settings - Fork 0
Anleitung
Dieser Wrapper dient der automatisierten Video-Transkodierung mit NVEncC unter Windows. Er stellt eine strukturierte Kommandozeilen-Schnittstelle bereit, mit der komplexe NVEnc-Parameter konsistent und nachvollziehbar angewendet werden können.
Der Wrapper trennt bewusst die Zuständigkeiten von Crop, Auflösung, Skalierung, Filtern und Modes, um ein kontrolliertes und vorhersehbares Verarbeitungsergebnis zu erzielen.
Der Wrapper verarbeitet alle unterstützten Videodateien im aktuellen Arbeitsverzeichnis. Bereits verarbeitete Dateien oder Dateien, die bereits im Zielcodec vorliegen, werden automatisch erkannt und nicht erneut kodiert.
Die Verarbeitung erfolgt in einer festen Reihenfolge:
- Validierung der Kommandozeilenparameter
- Festlegung von Encoder-, Audio- und Qualitätsparametern
- Bestimmung von Crop- und Auflösungsparametern
- Analyse von Filtern und Modes
- Entscheidung über notwendige Skalierung
- Übergabe der finalen Parameter an NVEncC
Crop, Resize, Filter und Mode sind logisch voneinander getrennt und greifen nur dort ineinander, wo es technisch erforderlich ist.
Der Wrapper wird direkt im Verzeichnis mit den zu verarbeitenden Videodateien ausgeführt.
Syntax:
encoder audio quality crop filter mode decoder
Alle Parameter sind positionsabhängig. Nicht angegebene Parameter werden durch interne Standardwerte ersetzt.
Beispiel:
hevc ac3 auto auto
Der Encoder-Parameter bestimmt den Zielcodec und das zugehörige Profil. Profil, Farbtiefe und encoder-spezifische Optionen werden intern gesetzt.
| Wert | Bedeutung |
|---|---|
| def | Standard-Encoder (HEVC, Main-Profil) |
| hevc | HEVC-Encoding |
| he10 | HEVC-Encoding mit 10-Bit-Farbtiefe |
| h264 | AVC-Encoding |
| av1 | AV1-Encoding |
Der Audio-Parameter steuert die Behandlung aller Audiostreams.
Ein Reencode erfolgt nur, wenn der jeweilige Quell-Audiostream nicht bereits im Zielformat vorliegt. Dies gilt gleichermaßen für AC3, AAC und E-AC3.
| Wert | Bedeutung |
|---|---|
| copy | Alle Audiostreams unverändert übernehmen |
| copy1 | Nur Audiostream 1 übernehmen |
| copy2 | Nur Audiostream 2 übernehmen |
| copy12 | Audiostream 1 und 2 übernehmen |
| copy23 | Audiostream 2 und 3 übernehmen |
| ac3 | AC3-Encoding (Stereo und 5.1) |
| aac | AAC-Encoding (Stereo und ≥5.1, inkl. höherer Kanalzahlen) |
| eac3 | E-AC3-Encoding (Stereo und Mehrkanal) |
Der Qualitätsparameter steuert den QVBR-Wert des Videoencoders.
| Wert | Bedeutung |
|---|---|
| def | Standardqualität |
| auto | Automatische Qualitätswahl anhand des Dateinamens |
| hq | Hohe Qualität |
| uhq | Sehr hohe Qualität |
| lq | Niedrige Qualität |
| ulq | Sehr niedrige Qualität |
| Wert | Bedeutung |
|---|---|
| auto | Automatische Crop-Erkennung ohne Skalierung |
Im automatischen Modus analysiert der Wrapper das Video mithilfe von ffmpeg cropdetect. Dabei werden schwarze Balken sowie tolerierbare Randbereiche erkannt.
Der automatische Crop-Modus bestimmt ausschließlich die notwendigen Crop-Werte sowie die sich daraus ergebende native Zielauflösung. Eine Skalierung wird dadurch nicht ausgelöst.
| Wert | Bedeutung |
|---|---|
| 696 | Vertikaler Crop auf 696 Pixel |
| 768 | Vertikaler Crop auf 768 Pixel |
| 800 | Vertikaler Crop auf 800 Pixel |
| 804 | Vertikaler Crop auf 804 Pixel |
| 808 | Vertikaler Crop auf 808 Pixel |
| 812 | Vertikaler Crop auf 812 Pixel |
| 816 | Vertikaler Crop auf 816 Pixel |
| 872 | Vertikaler Crop auf 872 Pixel |
| 960 | Vertikaler Crop auf 960 Pixel |
| 1012 | Vertikaler Crop auf 1012 Pixel |
| 1024 | Vertikaler Crop auf 1024 Pixel |
| 1036 | Vertikaler Crop auf 1036 Pixel |
| 1040 | Vertikaler Crop auf 1040 Pixel |
| Wert | Bedeutung |
|---|---|
| 720 | Skalierung auf 1280 Pixel Breite |
| 720p | Skalierung auf 720 Pixel Höhe |
| 720f | Skalierung auf 1280×720 |
| 1080 | Skalierung auf 1920 Pixel Breite |
| 1080p | Skalierung auf 1080 Pixel Höhe |
| 1080f | Skalierung auf 1920×1080 |
| 2160 | Skalierung auf 3840 Pixel Breite |
| 2160p | Skalierung auf 2160 Pixel Höhe |
| 2160f | Skalierung auf 3840×2160 |
| 1036p | Skalierung auf 1920×1036 |
Filter werden nach Crop und ggf. Skalierung angewendet.
| Wert | Bedeutung |
|---|---|
| copy | Kein Filter |
| smooth | Glättung |
| smooth31 | Stärkere Glättung |
| smooth63 | Sehr starke Glättung |
| nlmeans | NLMeans-Rauschfilter |
| gauss | Gauß-Filter |
| gauss5 | Stärkerer Gauß-Filter |
| sharp | Nachschärfung |
| ss | Glättung + Schärfung |
| denoise | KI-Rauschreduzierung |
| denoisehq | Stärkere KI-Rauschreduzierung |
| artifact | KI-Artefaktreduktion |
| artifacthq | Stärkere KI-Artefaktreduktion |
| superres | KI-Upscaling |
| superreshq | Hochwertiges KI-Upscaling |
| vsr | Video Super Resolution |
| vsrdenoise | VSR + Rauschreduzierung |
| vsrartifact | VSR + Artefaktreduktion |
Filter mit eigener Skalierung übernehmen vollständig die Resize-Aufgabe.
| Wert | Bedeutung |
|---|---|
| copy | Keine Modifikation |
| deint | Automatisches Deinterlacing |
| yadif | YADIF-Deinterlacing |
| yadifbob | YADIF-Bob-Deinterlacing |
| double | Framerate-Verdopplung |
| 23fps | Umstellung auf 23,976 fps |
| 25fps | Umstellung auf 25 fps |
| 30fps | Umstellung auf 30 fps |
| 60fps | Umstellung auf 60 fps |
| 29fps | Umstellung auf 29,97 fps |
| 59fps | Umstellung auf 59,94 fps |
| HDRtoSDR | HDR-zu-SDR-Konvertierung |
| dv | Dolby-Vision-Passthrough |
| dolby-vision | Dolby-Vision-Passthrough |
| Wert | Bedeutung |
|---|---|
| def | Standard-Hardware-Decoding |
| hw | Erzwingt Hardware-Decoding |
| sw | Erzwingt Software-Decoding |
| auto | Automatische Auswahl |
Die Entscheidung, ob eine Skalierung durchgeführt wird, erfolgt ausschließlich anhand der gesetzten Parameter.
Eine Skalierung wird nur dann durchgeführt, wenn sie technisch erforderlich ist.
| Situation | Verhalten |
|---|---|
| Automatischer Crop | Kein Resize |
| Fester Crop ohne Zielauflösung | Kein Resize |
| Explizite Zielauflösung | Resize erforderlich |
| Filter mit eigener Skalierung | Kein zusätzlicher Resize |
| Mode mit eigener Skalierung | Kein zusätzlicher Resize |
| Resize erforderlich, kein Filter skaliert | Hochwertiger Scaler wird gesetzt |
Der Debug-Modus dient der Nachvollziehbarkeit interner Entscheidungen.
| Wert | Bedeutung |
|---|---|
| DEBUG_AUTOCROP=1 | Debug-Ausgaben aktiv |
| DEBUG_AUTOCROP=0 | Debug-Ausgaben deaktiviert |
Im Debug-Modus werden Crop-Werte, Zielauflösungen, Resize-Entscheidungen und finale NVEnc-Parameter ausgegeben.
Bereits im Zielcodec vorliegende Dateien werden nicht erneut kodiert.
Statt codec-spezifischer Ordner werden alle übersprungenen Dateien
einheitlich in das Verzeichnis _Converted verschoben.
Dateien mit nicht eindeutig bestimmbarer Geometrie werden in das Verzeichnis _Check verschoben.
Existiert bereits eine Ausgabedatei, wird die Verarbeitung übersprungen.
Der Wrapper kann optional Container-Metadaten nach dem Encode normalisieren.
Diese Funktion wird intern über die Variable:
EDIT_TAGS=1
aktiviert.
Die Normalisierung umfasst unter anderem:
- Entfernen globaler Titel
- Bereinigung generischer Tracknamen
- Normalisierung von Sprach-Tags
- Korrektur von Default- und Forced-Flags
Fehler bei der Metadatenverarbeitung führen zur Isolation der Datei im Verzeichnis _Check.
Archivmaterial
Automatischer Crop, keine Skalierung, optionale Filter.
Kinomaterial
Automatischer Crop zur Entfernung von Letterbox-Balken, Beibehaltung der nativen Auflösung.
Upscaling
Explizite Zielauflösung in Kombination mit KI-basierten Filtern.
| Bereich | Prinzip |
|---|---|
| Crop | explizit oder automatisch |
| Resize | nur bei Bedarf |
| Filter | getrennt von Geometrie |
| Audio | Reencode nur bei Bedarf |
| Debug | rein informativ |