1.0.0 release snapshot

This commit is contained in:
2026-06-12 11:17:44 +02:00
parent 6115090da1
commit c9ad6b2f06
274 changed files with 138472 additions and 1 deletions
+108
View File
@@ -0,0 +1,108 @@
# Audiobooks
Die Seite `Audiobooks` ist der spezialisierte Workflow für Audible-`*.aax`-Dateien.
## Seitenstruktur
Die Oberfläche besteht aus zwei Hauptbereichen:
1. `Audiobooks Upload`
2. `Audiobook Jobs`
## 1. Audiobooks Upload
Der Upload akzeptiert ausschließlich `.aax`.
### Bedienung
- Datei auswählen oder per Drag-and-Drop ablegen
- Upload starten
- Auswahl entfernen oder laufenden Upload abbrechen
Während des Uploads zeigt die UI:
- Prozentfortschritt
- übertragene und gesamte Bytes
- Statusmeldung
### Ablauf nach erfolgreichem Upload
- die AAX-Datei wird geprüft
- Ripster versucht Metadata, Kapitel und Activation-Bytes-Kontext aufzubauen
- ein Audiobook-Job wird angelegt
- der Job startet direkt oder wird in die Queue eingereiht
## 2. Audiobook Jobs
Die Seite zeigt aktive Jobs. Abgeschlossene Jobs findest du in der `Historie`.
Ein Job kann eingeklappt oder ausgeklappt werden und zeigt:
- Titel, Autor, Sprecher, Jahr
- Kapitelanzahl
- Fortschritt und ETA
- bei Split-Ausgabe den Kapitelstatus
## Konfigurierbare Job-Parameter
Im ausgeklappten Job kannst du setzen:
- Ausgabeformat `m4b`, `mp3` oder `flac`
- formatspezifische Optionen
- Kapitelnamen
- Pre-Encode-Skripte und -Ketten
- Post-Encode-Skripte und -Ketten
### Formatverhalten
- `m4b`: eine Datei mit Kapitelmarken
- `mp3`: eine Datei pro Kapitel
- `flac`: eine Datei pro Kapitel
Wenn du `mp3` oder `flac` wählst, zeigt die UI zusätzlich eine Kapitel-Status-Tabelle.
## Activation Bytes
Wenn Ripster für eine Datei keine Activation Bytes verwenden kann, wird im Workflow eine manuelle Eingabe nötig.
Wichtig:
- die Bytes werden lokal gecacht
- derselbe AAX-Hash muss dann später nicht erneut manuell eingegeben werden
- der Expertenblock in `Settings` zeigt bekannte Cache-Einträge an
## Relevante Settings
- `Audiobook RAW-Ordner`
- `Audiobook Output-Ordner`
- `Eigentümer Audiobook RAW-Ordner`
- `Eigentümer Audiobook Output-Ordner`
- `Audiobook RAW Template`
- `Output Template (Audiobook)`
- `Kapitel Template (Audiobook)`
- `FFprobe Kommando`
- `FFmpeg Kommando`
### So wirken die Settings im Alltag
- `Audiobook RAW Template` bestimmt den Namen des AAX-RAW-Ordners
- `Output Template (Audiobook)` bestimmt die Einzeldatei für `m4b`
- `Kapitel Template (Audiobook)` bestimmt Zielstruktur und Dateinamen für `mp3`/`flac`
- `FFprobe Kommando` liest Kapitel und Metadaten
- `FFmpeg Kommando` erzeugt die finalen Dateien
## Queue und Laufzeit
Audiobook-Jobs nutzen dieselbe globale Pipeline wie die anderen Bereiche.
Relevante Settings:
- `Parallele Jobs`
- `Max. Encodes gesamt (medienunabhängig)`
## Typische Fehlerbilder
- Upload wird abgelehnt: Datei ist keine gültige `*.aax`
- Analyse schlägt fehl: `ffprobe` ist nicht erreichbar
- Encode schlägt fehl: `ffmpeg` ist nicht erreichbar
- Ausgabe landet unerwartet: Templates oder Zielpfade passen nicht zur gewünschten Struktur
+128
View File
@@ -0,0 +1,128 @@
# Converter
Die Seite `Converter` verarbeitet vorhandene Dateien ohne Laufwerks-Rip. Sie ist für Video-, Audio- und ISO-Dateien gedacht, die bereits auf dem System liegen oder hochgeladen werden.
## Betriebsmodell
Der Converter arbeitet auf dem in `Settings` festgelegten `Converter Raw-Ordner`.
Dort landen:
- Uploads
- neu angelegte Ordner
- umbenannte oder verschobene Dateien
- alle Dateien, aus denen später Converter-Jobs entstehen
Wichtig:
- Upload erzeugt nicht automatisch einen Job
- die Joberstellung erfolgt bewusst aus der Explorer-Auswahl
## Datei-Explorer
Der Explorer zeigt den kompletten Baum unter `Converter Raw-Ordner`.
Aktionen:
| Aktion | Wirkung |
|---|---|
| `Upload` | schreibt neue Dateien in den Converter-RAW-Baum |
| `Ordner erstellen` | legt Unterordner an |
| `Umbenennen` | benennt Datei oder Ordner um |
| `Verschieben` | verschiebt Einträge innerhalb des Raw-Baums |
| `Löschen` | entfernt Datei oder Ordner dauerhaft |
| `Scannen` | synchronisiert Dateisystem und Converter-Datenbank |
### Upload- und Scan-Regeln
- Dateiendungen müssen in `Erlaubte Datei-Endungen` enthalten sein
- neue Dateien erscheinen sofort nach manuellem Scan
- mit Polling auch automatisch
Relevante Settings:
- `Erlaubte Datei-Endungen`
- `Auto-Scan (Polling)`
- `Polling-Intervall (Sekunden)`
## Joberstellung aus Explorer-Auswahl
Es gibt zwei Audio-Strategien:
1. `Ein Job pro Datei`
2. `Gemeinsamer Job (Audio)`
Verhalten:
- Video und ISO werden immer als Einzeljobs angelegt
- Audio kann als gemeinsamer Album-/Ordner-Job erzeugt werden
Shared-Audio-Job:
- hält mehrere `inputPaths`
- kann vor dem Start erweitert oder reduziert werden
## Job-Konfiguration
Vor dem Start je Job einstellbar:
- `converterMediaType`
- `outputFormat`
- Metadaten
- Track-/Titelwahl bei Video/ISO
- User-Preset und HandBrake-Preset bei Video
- Pre-/Post-Encode-Skripte und Ketten
Spezifika:
- Video/ISO durchlaufen eine Review ähnlich zum Disc-Flow
- Audio wird direkt über Format und Audio-Optionen konfiguriert
## Ausgabe-Pfade
### Video / ISO
- Zielordner: `Converter Ausgabe (Video)`
- Dateiname: `Output-Template (Video)`
- Endung: aus dem gewählten Ausgabeformat
### Audio
- Zielordner: `Converter Ausgabe (Audio)`
- Dateiname/Ordner: `Output-Template (Audio)`
- bei Shared- oder Folder-Jobs entsteht eine Ordnerstruktur mit mehreren Track-Dateien
Relevante Settings:
- `Converter Ausgabe (Video)`
- `Converter Ausgabe (Audio)`
- `Output-Template (Video)`
- `Output-Template (Audio)`
- `Eigentümer Converter Video Output-Ordner`
- `Eigentümer Converter Audio Output-Ordner`
## Queue und Start
Converter-Jobs laufen über dieselbe globale Pipeline-Queue wie Ripper und Audiobooks.
Das bedeutet:
- sofortiger Start, wenn Limits frei sind
- sonst Einreihung in die Warteschlange
Relevante Settings:
- `Parallele Jobs`
- `Max. Encodes gesamt (medienunabhängig)`
## Typische Einsatzfälle
- vorhandene MKV/MP4-Dateien mit neuem Preset encodieren
- ISO-Dateien in einen Video-Workflow überführen
- Musikdateien gesammelt in einen Audio-Ordner-Job packen
- Medien auf anderem Storage per Upload oder Dateibaum vorbereiten
## Abgrenzung zu Audiobooks
- `Converter`: beliebige Audio-, Video- und ISO-Dateien
- `Audiobooks`: spezialisierter AAX-Workflow mit Activation Bytes, Kapitelmetadaten und Kapiteltemplates
+35
View File
@@ -0,0 +1,35 @@
# Database (Expert)
`/database` ist die Recovery- und Expertensicht für Fälle, in denen Dateisystem und Historie nicht mehr sauber zusammenpassen.
## Zugriff
- direkte Route: `/database`
- nicht Teil der Standardnavigation
## Bereich `Gefundene RAW-Einträge`
Dieser Bereich listet RAW-Verzeichnisse ohne zugeordneten Historie-Job.
Aktionen:
- `RAW prüfen`: scannt konfigurierte RAW-Wurzeln
- `Job anlegen`: erstellt aus einem orphan RAW einen neuen Historie-Job
## Was bei `Job anlegen` passiert
- RAW-Pfad wird als Importquelle registriert
- Job wird in die Historie geschrieben
- anschließende Analyse läuft als RAW-basierter Einstieg (ohne klassischen Disc-Read)
Typischer Einsatz:
- manuelle Dateioperationen außerhalb der UI
- Migrationen
- Wiederherstellung nach abgebrochenen Läufen
## Sicherheits- und Betriebsregeln
- Aktionen wirken direkt auf produktive Historie/Dateipfade.
- Vor Import oder Löschung immer Pfad und Ziel prüfen.
- Diese Seite nur für Recovery-Szenarien nutzen, nicht für normalen Tagesbetrieb.
+58
View File
@@ -0,0 +1,58 @@
# Downloads
Auf `Downloads` werden ZIP-Archive für Historie-Artefakte erstellt und bereitgestellt.
## Was heruntergeladen werden kann
Ein Download-Eintrag referenziert immer einen Historie-Job und genau ein Ziel:
- `RAW`
- `Output`
Erzeugt wird ein ZIP-Archiv im Download-Verzeichnis des Backends.
## Statusmodell
| Status | Bedeutung |
|---|---|
| `queued` | Eintrag erstellt, wartet auf Verarbeitung |
| `processing` | ZIP wird gerade gebaut |
| `ready` | Archiv fertig, Download-Link aktiv |
| `failed` | Erzeugung oder Zugriff fehlgeschlagen |
## Eintrag anlegen
Startpunkt ist die `Historie`:
1. Job öffnen.
2. Download einreihen.
3. Ziel (`RAW` oder `Output`) wählen.
4. Status in `Downloads` verfolgen.
## Wichtige Laufzeitdetails
- Wenn bereits ein passendes, aktuelles Archiv existiert, kann der Eintrag wiederverwendet werden.
- Nach Backend-Neustart werden unterbrochene `queued`/`processing`-Einträge geprüft und fortgesetzt.
- Fehlt eine erwartete ZIP-Datei bei `ready`, wird der Eintrag auf `failed` gesetzt.
## Download auslösen
Bei Status `ready`:
- Download-Button lädt die ZIP direkt aus `/api/downloads/:id/file`.
## Einträge entfernen
`Löschen` entfernt:
- Queue-Metadaten
- zugehörige Archivdatei
Nicht erlaubt:
- Löschen während `queued`/`processing`
## Echtzeitaktualisierung
Die Seite reagiert auf `DOWNLOADS_UPDATED` per WebSocket.
Dadurch sind Statuswechsel ohne Reload sichtbar.
+45
View File
@@ -0,0 +1,45 @@
# Hardware
Die Seite `Hardware` ist die ausführliche Detailansicht für das Live-Monitoring aus dem `Ripper`.
## Was die Seite zeigt
- aktuelle CPU-Auslastung
- RAM-Auslastung
- GPU-Auslastung und VRAM, falls vorhanden
- Temperaturen
- Verlaufshistorie für Auslastung und Temperatur
- Zeitfenster für `1h`, `6h`, `24h`, `4d`
## Live-Bereich
Oben zeigt die Seite:
- ob Monitoring aktiv ist
- aktuelles Polling-Intervall
- Zeitpunkt der letzten Messung
Wenn Monitoring deaktiviert ist, führt die Seite direkt zu `Settings`.
## Historie
Die Historie lädt Messpunkte aus dem Backend und zeigt:
- Auslastung als Linienchart
- Temperatur als Linienchart
- umschaltbare Serien für CPU, RAM und GPU
Das ist besonders nützlich bei:
- mehreren parallelen Encodes
- Fehlersuche bei Hitzespitzen
- Abschätzung, ob weitere Jobs sinnvoll gestartet werden können
## Relevante Settings
- `Hardware Monitoring aktiviert`
- `Hardware Monitoring Intervall (ms)`
Außerdem sinnvoll:
- `Externe Speicher`, damit Speicherstände im `Ripper` sinnvoll angezeigt werden
+88
View File
@@ -0,0 +1,88 @@
# Historie
`Historie` ist die Kontroll- und Nachbearbeitungsoberfläche für alle bereits angelegten Jobs.
## Hauptansicht
Filter und Arbeitsmittel:
- Suche
- Statusfilter
- Mediumfilter
- Sortierung
- Listen-/Grid-Layout
Jeder Eintrag zeigt auf einen Blick:
- Titel, Jahr, Poster oder Cover
- Status und Zeitstempel
- RAW- und Output-Verfügbarkeit
- Medien- und Containerhinweise
## Detaildialog
Der Detaildialog bündelt:
- Metadaten
- Jobstatus und Fehlertexte
- RAW- und Output-Pfade
- Encode-Plan und Trackauswahl
- ausgeführte Kommandos
- Prozesslog
- verfügbare Folgeaktionen
Bei Seriencontainern und Multipart-Jobs wird container- und child-orientiert dargestellt.
## Nachbearbeitungsaktionen
| Aktion | Typischer Einsatz | Technische Wirkung |
|---|---|---|
| `TMDb neu zuweisen` | falsches Match, anderer Film, andere Staffel | Metadaten werden neu geschrieben; Poster, Jahr und ggf. Ordnername werden best effort aktualisiert |
| `Review neu starten` | neue Track-/Titelbewertung nötig | Review wird aus vorhandenem RAW neu aufgebaut |
| `RAW neu encodieren` | neuer Encode mit vorhandenem RAW | startet Encode ohne neuen Disc-Rip |
| `Encode neu starten` | gleiche bestätigte Auswahl erneut fahren | letzter bestätigter Plan wird geladen |
| `Retry Rippen` | Rip oder Analyse erneut anstoßen | neuer Rip-Lauf inklusive RAW-Phase |
Relevante Settings:
- `Encode-Neustart: unvollständige Ausgabe löschen`
- `NFO nach Encode erzeugen`
## Löschaktionen und Vorschau
Vor dem endgültigen Löschen zeigt Ripster eine Vorschau mit:
- RAW-Kandidaten
- Movie-/Episode-Kandidaten
- Related-Scope für Container, Kinder und verbundene Jobs
Wichtige Punkte:
- Pfade sind selektierbar
- bei mehreren RAW-Kandidaten muss mindestens ein RAW-Pfad gewählt werden
- Schutzlogik verhindert Löschungen außerhalb erlaubter Root-Verzeichnisse
## Serien- und Multipart-Sicht
### Serien
- Container zeigt den aggregierten Zustand der Child-Jobs
- Disk- und Episodenaktionen können child-spezifisch ausgeführt werden
- `Im Ripper öffnen` hilft bei offenen Reviews
### Multipart
- gemeinsamer Container mit Disc-Childs
- Disc-Nummern bleiben pro Child nachvollziehbar
- Delete-Preview kann Related-Pfade gemeinsam auflösen
## Logs sinnvoll nutzen
- `Tail laden` für schnellen Fehlerkontext
- `Vollständiges Log laden` für tiefe Analyse
Empfehlung:
1. erst den Tail prüfen
2. dann die Stelle im Log eingrenzen
3. anschließend die passende Wiederanlauf-Aktion wählen
+42
View File
@@ -0,0 +1,42 @@
# GUI-Seiten
Dieses Kapitel ist das Bedienhandbuch für die Oberflächen im Alltag.
## Seitenüberblick
| Seite | Rolle im Betrieb | Typischer Einsatz |
|---|---|---|
| [Ripper](ripper.md) | Live-Steuerung der Disc-Pipeline | Disc erkennen, Analyse starten, Entscheidungen treffen, Queue steuern |
| [Hardware](hardware.md) | Detailansicht für Live-Monitoring | CPU/RAM/GPU und Verlauf prüfen |
| [Audiobooks](audiobooks.md) | AAX-Spezialflow | Upload, Kapitelprüfung und Encode von Audiobooks |
| [Settings](settings.md) | Konfiguration und Automatisierung | Pfade, Tools, Queue, Presets, Skripte, Cron |
| [Historie](history.md) | Nachbearbeitung und Kontrolle | Logs, Re-Encode, TMDb-Neuzuordnung, Löschvorschau |
| [Converter](converter.md) | dateibasierte Konvertierung | Video/Audio/ISO ohne Disc-Rip verarbeiten |
| [Downloads](downloads.md) | ZIP-Exports | RAW/Output aus der Historie bereitstellen |
| [Database (Expert)](database.md) | Recovery-Sicht | orphan RAW finden, prüfen und importieren |
| [TMDb Migration](tmdb-migration.md) | Sonderseite für Altbestände | alte Jobs gesammelt auf TMDb umstellen |
## Empfohlener Tagesablauf
1. `Ripper`, `Converter` oder `Audiobooks`: neue Arbeit starten
2. `Historie`: Ergebnisse kontrollieren und ggf. nachbearbeiten
3. `Downloads`: Artefakte für externe Übergabe vorbereiten
4. `Settings`: Regeln, Presets oder Limits nur kontrolliert anpassen
5. `Hardware`: bei Lastspitzen oder Batch-Läufen den Verlauf prüfen
## Navigation
Direkt in der Top-Navigation:
- `Ripper`
- `Converter`
- `Audiobooks`
- `Settings`
- `Historie`
- `Downloads`
Zusatzansichten:
- `Hardware` unter `/hardware`
- `Database` unter `/database` und im Expertenmodus zusätzlich in der Navigation
- `TMDb Migration` unter `/tmdb-migration` als Direktlink
+227
View File
@@ -0,0 +1,227 @@
# Ripper
Die Seite `Ripper` ist die Live-Steuerung der Disc-Pipeline. Hier laufen Disc-Erkennung, Queue, manuelle Entscheidungen, Review und aktive Jobs zusammen.
## Seitenaufbau
Die wichtigsten Bereiche:
1. `Hardware`
2. `Job Queue`
3. `Skript- / Cron-Status`
4. `Job Übersicht`
5. `Disk-Information`
## 1. Hardware
Die Hardware-Karte zeigt live:
- CPU
- RAM
- GPU, falls vorhanden
- freie Speicherstände der konfigurierten Pfade
Aktionen:
- Klick auf das Hardware-Symbol öffnet die Seite [Hardware](hardware.md)
Relevante Settings:
- `Hardware Monitoring aktiviert`
- `Hardware Monitoring Intervall (ms)`
- `Externe Speicher`
## 2. Job Queue
Es gibt zwei operative Zonen:
- laufende Jobs
- Warteschlange
Mögliche Queue-Einträge:
- normale Job-Starts
- `Retry Rippen`
- `RAW neu encodieren`
- `Encode neu starten`
- `Review neu starten`
- `Audio CD starten`
- `Skript`
- `Skriptkette`
- `Warten`
Wichtige Regeln:
- Reihenfolge ist per Drag-and-Drop änderbar
- `Warten` blockiert nachfolgende Starts, bis keine aktive Verarbeitung mehr läuft
- Queue-Einträge können auch ohne Medienjob existieren
Relevante Settings:
- `Parallele Jobs`
- `Max. parallele Audio CD Jobs`
- `Max. Encodes gesamt (medienunabhängig)`
- `Audio CDs: Queue-Reihenfolge überspringen`
## 3. Skript- / Cron-Status
Zeigt Runtime-Aktivitäten:
- laufende Skripte
- laufende Ketten
- Cron-Ausführungen
- kürzlich abgeschlossene Aktivitäten
Aktionen:
- `Nächster Schritt` bei Ketten
- `Abbrechen`
- `Liste leeren`
## 4. Job Übersicht
Die Jobliste ist der zentrale Arbeitsbereich. Ein Klick öffnet den jeweiligen `Pipeline-Status`.
### Zustandsabhängige Hauptaktionen
| Zustand | Typische Aktion | Ergebnis |
|---|---|---|
| `Medium erkannt` | `Analyse starten` | MakeMKV-Analyse beginnt |
| `Metadatenauswahl` | `Metadaten öffnen` | TMDb-Dialog für Film/Serie |
| `Warte auf Auswahl` | Entscheidung bestätigen | Flow geht an die passende Stelle weiter |
| `Startbereit` | `Job starten` | Rip oder RAW-basierte Prüfung startet |
| `Bereit zum Encodieren` | `Encoding starten` | HandBrake startet mit bestätigter Auswahl |
| laufend | `Abbrechen` | Job wird gestoppt |
| `Fehler` / `Abgebrochen` | `Retry Rippen` | neuer Rip-Anlauf |
### Was `Warte auf Auswahl` heute bedeuten kann
Der Status ist nicht nur für eine einzige Entscheidung da. Im aktuellen Stand gibt es drei typische Fälle:
#### Vorhandenes RAW
Ripster hat zu den Metadaten bereits ein passendes RAW gefunden. Dann entscheidest du:
- mit RAW weiterarbeiten
- RAW löschen und neu rippen
- in passenden Film-Fällen optional Multipart mit Orphan-RAW bilden
#### Playlist-Auswahl
Bei mehrdeutigen Blu-rays oder bestimmten DVD-Fällen musst du eine Playlist bestätigen. Die Liste zeigt unter anderem:
- Playlist-Datei
- Titel-ID
- Laufzeit
- Score
- Empfehlung
- Segment- und Audio-Vorschau
Relevante Settings:
- `Minimale Titellänge (Minuten)`
- `TMDb Runtime-Abzug für Playlistfilter (%)`
- `Bei manueller Auswahl senden` für PushOver
#### Titelauswahl / PlayAll-Grenzfall
Wenn Ripster mehrere HandBrake-Titel als plausibel erkannt hat, musst du einen oder mehrere Titel bestätigen. Bei Serien kann das der Grenzfall `PlayAll oder Doppelfolge?` sein.
## 5. Review-Bereich (`Bereit zum Encodieren`)
Hier triffst du die eigentliche Encode-Entscheidung.
Du legst fest:
- welchen Titel Ripster encodieren soll
- welche Audio-Spuren übernommen werden
- welche Untertitel übernommen, erzwungen oder eingebrannt werden
- welches User-Preset oder HandBrake-Preset verwendet wird
- welche Pre-/Post-Encode-Skripte oder Ketten mitlaufen
Wichtig:
- ohne diese Bestätigung startet kein produktiver Encode
- bei Multipart-Locks können Einstellungen von einer Referenz-Disc übernommen und gesperrt sein
### Welche Settings hier direkt sichtbar werden
- `HandBrake Preset`
- `HandBrake Extra Args`
- `Review Audio-Sprachen (...)`
- `Review UT-Sprachen (...)`
- `Ausgabeformat`
- Standard-Zuordnungen aus `Settings -> Encode-Presets`
## RAW-Ordnerphasen
Der Ripper arbeitet mit drei RAW-Zuständen:
- `Incomplete_...` während eines unvollständigen Rips
- `Rip_Complete_...` nach erfolgreichem Rip, vor dem finalen Encode
- ohne Prefix nach erfolgreichem Encode
Das ist wichtig für:
- Recovery
- RAW-Wiederverwendung
- Delete-Preview in `Historie`
## Disk-Information
Zeigt aktuelle Laufwerksdaten:
- Device-Pfad
- Modell
- Disc-Label
- Mount-Informationen
Aktionen:
- `Laufwerk neu lesen`
- `Disk neu analysieren`
- Metadaten-Dialog öffnen
Hinweis:
- `Laufwerk neu lesen` ist nicht mehr an einen festen Pipeline-State gebunden
## Wichtige Dialoge
### Metadaten auswählen
Im Dialog bestätigst du Film- oder Serienmetadaten aus TMDb.
Sonderfälle:
- Film-Duplikat: `Übernahme erzwingen` oder `Multipart movie`
- Serie: `Disc-Nummer` ist Pflicht
### Vorhandenes RAW erkannt
Wenn zu den Metadaten bereits RAW existiert, fordert Ripster eine explizite Entscheidung:
- vorhandenes RAW verwenden
- RAW verwerfen/löschen und neu rippen
### Queue-Eintrag einfügen
Du kannst gezielt ab Position einfügen:
- Skript
- Skriptkette
- Wartezeit
### Audible Activation Bytes eintragen
Wenn für eine AAX-Datei keine Activation Bytes verfügbar sind, öffnet Ripster einen Dialog zur manuellen Eingabe.
- Format: genau 8 Hex-Zeichen, z. B. `1a2b3c4d`
- Speicherung: lokal im Activation-Bytes-Cache
- Wirkung: der Audiobook-Flow kann anschließend fortgesetzt werden
## Siehe auch
- [Hardware](hardware.md)
- [Settings](settings.md)
- [Workflows aus Nutzersicht](../workflows/index.md)
+283
View File
@@ -0,0 +1,283 @@
# Settings
Die Seite `Settings` ist das Kontrollzentrum für Laufzeitverhalten, Standardwerte und Automatisierung. Alles, was spätere Jobs automatisch tun oder vorschlagen, wird hier vorbereitet.
Für die detaillierte Feld-für-Feld-Erklärung jeder einzelnen Einstellung nutze die Seite [Einstellungsreferenz](../configuration/settings-reference.md). Dort ist jedes sichtbare Feld aus der GUI mit Wirkung, Workflow-Bezug und typischem Einsatz beschrieben.
## Tab-Überblick
| Tab | Zweck |
|---|---|
| `Konfiguration` | alle fachlichen Einstellungen aus der GUI |
| `Scripte` | einzelne Bash-Skripte anlegen, testen und sortieren |
| `Skriptketten` | mehrstufige Abläufe aus Skript- und Warte-Schritten bauen |
| `Encode-Presets` | eigene Video-Presets und Standard-Zuordnungen pflegen |
| `Cronjobs` | zeitgesteuerte Ausführung von Skripten oder Ketten |
## Tab `Konfiguration`
### Bedienlogik
1. Felder ändern
2. `Änderungen speichern` klicken
3. erst dann gelten die neuen Werte für künftige Starts, Reviews oder Scheduler
Ausnahmen:
- `Expertenmodus` wird sofort gespeichert
- Buttons wie `PushOver Test`, `Coverarts prüfen` oder der MakeMKV-Betakey-Import lösen direkte Aktionen aus
### Toolbar-Aktionen
- `Änderungen speichern`: schreibt nur geänderte Felder
- `Änderungen verwerfen`: setzt den Formularzustand zurück
- `Neu laden`: lädt Schema und Werte neu
- `PushOver Test`: sendet eine Testnachricht mit den aktuellen PushOver-Werten
- `Coverarts prüfen`: startet den Coverart-Recovery-Lauf sofort
### Was die Kategorien im Alltag steuern
#### Benachrichtigungen
Hier steuerst du zwei Dinge:
- ob und wohin Ripster PushOver-Nachrichten sendet
- bei welchen Ereignissen Ripster überhaupt benachrichtigt
Wichtig:
- `PushOver aktiviert` ist der Master-Schalter
- `Bei manueller Auswahl senden` ist besonders relevant für Playlist-, RAW- oder Titelentscheidungen
- der `Expertenmodus` blendet zusätzliche technische Felder in der gesamten Settings-Seite ein
#### Laufwerk
Diese Kategorie beeinflusst, wie Ripster optische Laufwerke findet und überwacht.
Typische Fragen:
- Soll Ripster Laufwerke automatisch erkennen?
- Soll ein bestimmtes Laufwerk fest an einen MakeMKV-Index gebunden werden?
- Soll das Laufwerk nach erfolgreichem Rip automatisch auswerfen?
Das ist vor allem wichtig bei:
- mehreren Laufwerken
- USB-SATA-Adaptern
- Hosts mit instabilen Device-Namen
#### Logging
Diese Felder ändern nicht die Job-Logs auf Platte, sondern die Ausgabe im Server-Terminal.
Damit steuerst du zum Beispiel:
- ob `start.sh` oder ein Terminal-Run sehr gesprächig sein darf
- ob HTTP-Requests im Terminal sichtbar sein sollen
- ob DEBUG/INFO/WARN/ERROR dort mitlaufen
#### Metadaten
Hier legst du fest, wie Ripster mit TMDb, Covern und NFO-Dateien umgeht.
Besonders wichtig:
- ohne `TMDb Read Access Token` funktionieren Film-/Seriensuche und Neu-Zuordnung nur eingeschränkt oder gar nicht
- `Film-Sprache` und `Fallback Sprache` bestimmen, welche Titel, Beschreibungen und Staffelinformationen bevorzugt werden
- `Coverart-Nachladen aktiv` hilft bei nachträglich fehlenden Postern/Covern
#### Monitoring
Steuert das Hardware-Monitoring für:
- CPU
- RAM
- GPU
- Speicherstände
Diese Werte erscheinen:
- kompakt im `Ripper`
- ausführlich in der Seite `Hardware`
#### Pfade
Hier legst du fest, wohin Ripster schreibt und wie Dateien benannt werden.
Die Felder steuern:
- RAW-Verzeichnisse pro Medium
- Zielordner für Filme, Serien, CDs, Audiobooks, Converter und Downloads
- Eigentümer per `user:gruppe`
- Templates für Datei- und Ordnernamen
Praxisbeispiele:
- Serien getrennt von Filmen ablegen
- RAW auf große HDD, Final-Output auf NAS
- Audiobooks kapitelweise in Unterordnern strukturieren
#### Converter
Diese Kategorie wirkt nur auf die Seite `Converter`.
Sie steuert:
- welche Dateiendungen der Upload und der Verzeichnisscan akzeptieren
- ob der Converter-RAW-Baum automatisch neu gescannt wird
- wie häufig dieses Polling läuft
#### Tools
Diese Kategorie entscheidet über das technische Verhalten der eigentlichen Pipeline.
Dazu gehören:
- Pfade/Befehle für externe Tools
- MakeMKV-Filter und Rip-Modi
- HandBrake-Presets und Extra-Args
- Vorauswahl von Audio-/Untertitelsprachen in der Review
- Ausgabeformate
- Queue- und Parallelitätsregeln
- Timeout für Script-Tests
Für die Nutzer-Workflows besonders relevant:
- `Minimale Titellänge (Minuten)`
- `TMDb Runtime-Abzug für Playlistfilter (%)`
- `HandBrake Preset` und `HandBrake Extra Args`
- `Review Audio-Sprachen (...)`
- `Review UT-Sprachen (...)`
- `Parallele Jobs`
- `Max. parallele Audio CD Jobs`
- `Max. Encodes gesamt (medienunabhängig)`
### Kategorie `Pfade`: Besondere Interaktion
Die Pfad-Kategorie hat eine eigene Darstellung:
- Tabelle `Effektive Pfade`: zeigt die aktuell wirklich verwendeten Laufzeitpfade inklusive Fallbacks
- Accordion pro Bereich wie `Blu-ray`, `DVD`, `CD / Audio`, `Audiobook`, `Converter`, `Downloads`, `Logs`
- Owner-Felder (`*_owner`) erscheinen direkt beim zugehörigen Pfad
- Owner-Felder sind deaktiviert, solange der zugehörige Pfad leer ist
### Spezial-Editoren
- `Explizite Laufwerke`: Editor für mehrere Laufwerke mit Pfad und MakeMKV-Index
- `Externe Speicher`: Liste aus Anzeigename und Pfad für die Speicheranzeige
- `Erlaubte Datei-Endungen`: Auswahl der erlaubten Upload-/Scan-Endungen
- `MakeMKV Key`: inkl. Betakey-Hinweis und Übernahme-Button
### Wichtig für Reviews und Workflows
Die Seite `Settings` bestimmt direkt, was Nutzer später im Workflow sehen:
- Playlist-Kandidaten werden durch `Minimale Titellänge` und `TMDb Runtime-Abzug ...` beeinflusst
- Audio-/Untertitel-Vorauswahlen in `Bereit zum Encodieren` hängen an den Review-Sprachfeldern
- automatisch vorgeschlagene Presets hängen an den Standard-Zuordnungen unter `Encode-Presets`
- Queue-Verhalten im `Ripper` hängt an den drei Parallelitätsfeldern plus `Audio CDs: Queue-Reihenfolge überspringen`
## Tab `Scripte`
Funktionen:
- Skript anlegen
- Skript bearbeiten
- Skript löschen
- Skript testen
- Reihenfolge per Drag-and-Drop ändern
- Favorit markieren
Das Testergebnis zeigt:
- Erfolg oder Fehler
- Exit-Code
- Dauer
- stdout/stderr
- Timeout, falls `Script-Test Timeout (ms)` greift
## Tab `Skriptketten`
Skriptketten bestehen aus Schritten:
- `Skript`
- `Warten (Sekunden)`
Funktionen:
- Ketten anlegen, bearbeiten, löschen
- Reihenfolge der Ketten ändern
- einzelne Ketten testen
- Schritte innerhalb der Kette per Drag-and-Drop sortieren
Wichtig:
- dieselben Skripte können sowohl in Jobs als auch in Ketten und Cronjobs wiederverwendet werden
## Tab `Encode-Presets`
Hier werden Video-Standards für Disc- und Converter-Workflows verwaltet.
### Standard-Zuordnungen
Es gibt vier feste Slots:
- `Blu-ray Film`
- `Blu-ray Serie`
- `DVD Film`
- `DVD Serie`
Wenn für einen Workflow hier ein Default gesetzt ist, erscheint dieses User-Preset später in der Review bereits vorausgewählt.
### Preset-Inhalt
Ein User-Preset besteht aus:
- Name
- Medientyp (`all`, `bluray`, `dvd`)
- HandBrake-Preset
- Extra Args
- optionaler Beschreibung
## Tab `Cronjobs`
Funktionen:
- Cronjob anlegen, bearbeiten, löschen
- Cron-Ausdruck live validieren
- Quelle wählen: `Skript` oder `Skriptkette`
- Aktiv- und PushOver-Status pro Job setzen
- `Jetzt ausführen`
- Lauf-Logs öffnen
Die Runtime-Aktivitäten der laufenden Cronjobs werden zusätzlich live angezeigt.
## Expertenbereich: Activation Bytes Cache
Dieser Block wird nur im Expertenmodus angezeigt.
Er zeigt lokal bekannte AAX-Activation-Bytes mit:
- Prüfsumme
- Activation Bytes
- Speicherzeitpunkt
Das hilft bei Audiobook-Workflows, wenn dieselbe Datei oder derselbe Hash später erneut auftaucht.
## Validierung von Template-Feldern
Template-Felder akzeptieren nur:
- Buchstaben und Ziffern
- Leerzeichen
- `_` und `-`
- Platzhalter in `{...}` oder `${...}`
- `/` für Unterordner
Damit verhindert Ripster fehlerhafte Dateinamen schon beim Speichern.
## Siehe auch
- [Alle Einstellungen](../configuration/settings-reference.md)
- [Ripper](ripper.md)
- [Workflows aus Nutzersicht](../workflows/index.md)
+52
View File
@@ -0,0 +1,52 @@
# TMDb Migration
Die Seite `TMDb Migration` ist eine Sonderansicht für ältere Bestandsjobs, die noch nicht als auf TMDb migriert markiert sind.
## Zugriff
- Direktlink: `/tmdb-migration`
- nicht in der normalen Top-Navigation verlinkt
## Wofür die Seite gedacht ist
Typische Einsatzfälle:
- Altbestand aus früheren Ständen bereinigen
- mehrere Jobs nacheinander auf aktuelle TMDb-Metadaten umstellen
- Historie konsistent auf den heutigen Metadaten-Workflow bringen
## Funktionsweise
Die Seite lädt offene Migrationskandidaten und zeigt:
- Job-ID
- Titel
- Jahr
- Medium
- aktuellen Status
Aktionen:
- `Liste neu laden`
- `Start`
- `Stop`
## Ablauf einer Sequenz
1. Jobliste laden
2. `Start`
3. der bekannte TMDb-Metadaten-Dialog öffnet sich für den ersten Job
4. nach erfolgreicher Übernahme plant Ripster den nächsten Job mit Cooldown
Wichtig:
- zwischen zwei Jobs liegt bewusst eine Wartezeit von mindestens 10 Sekunden
- damit wird die TMDb-API bei Serienmigrationen nicht unnötig belastet
## Relevante Settings
- `TMDb Read Access Token`
- `Film-Sprache`
- `Fallback Sprache`
Ohne diese Einstellungen ist die Migration nicht sinnvoll nutzbar.