0.14.0-4 Docs
This commit is contained in:
@@ -1,181 +1,238 @@
|
|||||||
# Einstellungsreferenz
|
# Einstellungsreferenz
|
||||||
|
|
||||||
Diese Seite listet die Felder so, wie sie in der GUI unter `Settings` angezeigt werden.
|
Diese Seite dokumentiert **alle** UI-Settings mit ihrer Wirkung auf Flows, Pfade, Queue und Automatisierung.
|
||||||
|
|
||||||
Hinweis: Interne Schlüsselnamen werden hier bewusst nicht verwendet. Falls du sie für Integrationen brauchst, nutze die API-Dokumentation.
|
## Wie Ripster Settings auflöst
|
||||||
|
|
||||||
---
|
Ripster arbeitet intern mit profilspezifischen Settings (`bluray`, `dvd`, `cd`, `audiobook`) und bildet sie auf effektive Laufzeitwerte ab.
|
||||||
|
|
||||||
## Profil-System
|
Wichtige Regeln:
|
||||||
|
|
||||||
Viele Felder sind pro Medientyp getrennt vorhanden:
|
1. Für `bluray` wird bei fehlenden profilierten Toolwerten auf `dvd` zurückgefallen, und umgekehrt.
|
||||||
|
2. Für `cd` und `audiobook` gibt es nur das eigene Profil.
|
||||||
|
3. Strikt profilgebundene Pfadkeys (`raw_dir`, `movie_dir`, `series_dir` plus Owner) fallen bei leeren Werten auf Installationsdefaults zurück.
|
||||||
|
|
||||||
- Blu-ray
|
Installationsdefaults:
|
||||||
- DVD
|
|
||||||
- Sonstiges
|
|
||||||
- Audiobook (neu ab v0.12.0)
|
|
||||||
|
|
||||||
---
|
- RAW: `data/output/raw`
|
||||||
|
- Movies: `data/output/movies`
|
||||||
|
- Series: `data/output/series`
|
||||||
|
- CD: `data/output/cd`
|
||||||
|
- Audiobook RAW: `data/output/audiobook-raw`
|
||||||
|
- Audiobook Output: `data/output/audiobooks`
|
||||||
|
- Converter RAW: `data/output/converter-raw`
|
||||||
|
- Converter Video: `data/output/converted-movies`
|
||||||
|
- Converter Audio: `data/output/converted-audio`
|
||||||
|
|
||||||
|
## Kritische Wirkungsbereiche
|
||||||
|
|
||||||
|
### 1) Pfad- und Template-Einstellungen
|
||||||
|
|
||||||
|
Diese Settings bestimmen direkt:
|
||||||
|
|
||||||
|
- wo RAW landet
|
||||||
|
- wo finale Ausgaben landen
|
||||||
|
- wie Ordner/Dateinamen gerendert werden
|
||||||
|
|
||||||
|
Relevante Besonderheiten:
|
||||||
|
|
||||||
|
- Serien-RAW nutzt bei Serienworkflow bevorzugt `raw_dir_*_series`.
|
||||||
|
- Serien-Ausgabe nutzt `series_dir_*` und Serien-Templates (Episode/Multi-Episode).
|
||||||
|
- Film-Ausgabe nutzt `movie_dir_*` und Film-Template.
|
||||||
|
- Encode schreibt zunächst in `Incomplete_job-<id>` und finalisiert danach in den Zielpfad.
|
||||||
|
|
||||||
|
### 2) Queue- und Parallelitäts-Settings
|
||||||
|
|
||||||
|
Die vier Limits greifen kombiniert:
|
||||||
|
|
||||||
|
- `pipeline_max_parallel_jobs` (Film/Video-Lane)
|
||||||
|
- `pipeline_max_parallel_cd_encodes` (Audio/CD-Lane)
|
||||||
|
- `pipeline_max_total_encodes` (globaler Deckel)
|
||||||
|
- `pipeline_cd_bypasses_queue` (Audio-Lane darf Filmwarteschlange umgehen)
|
||||||
|
|
||||||
|
Effekt:
|
||||||
|
|
||||||
|
- Film und Audio haben getrennte Lane-Limits.
|
||||||
|
- Das Gesamtlimit überstimmt beide, sobald erreicht.
|
||||||
|
- Queue kann zusätzlich Nicht-Job-Einträge (`Skript`, `Kette`, `Warten`) enthalten.
|
||||||
|
|
||||||
|
### 3) Serien-Metadaten-Settings
|
||||||
|
|
||||||
|
Diese steuern die Serienqualität direkt:
|
||||||
|
|
||||||
|
- TMDb-Token aktiviert TMDb-gestützte Serienmetadaten.
|
||||||
|
- Sprache/Fallback-Sprachen beeinflussen Titel- und Episodenauflösung.
|
||||||
|
- Ordnungspräferenz steuert Episode-Order.
|
||||||
|
- Disc-Profile-Reuse verbessert automatische Zuordnung über mehrere Discs.
|
||||||
|
|
||||||
|
### 4) Tool-Settings
|
||||||
|
|
||||||
|
Toolfelder (`makemkv_*`, `mediainfo_*`, `handbrake_*`, `ffmpeg_*`, `ffprobe_*`, `cdparanoia_*`) wirken unmittelbar auf die tatsächlich ausgeführten CLI-Aufrufe.
|
||||||
|
|
||||||
|
Typische Auswirkungen:
|
||||||
|
|
||||||
|
- falscher Toolpfad => früher Pipelinefehler
|
||||||
|
- geänderte Extra-Args => anderes Analyze-/Encode-Verhalten
|
||||||
|
- geänderte Presets => andere HandBrake-Ausgaben
|
||||||
|
|
||||||
## Template-Platzhalter
|
## Template-Platzhalter
|
||||||
|
|
||||||
### Video-Templates
|
### Film-Templates
|
||||||
- `${title}` — Titel
|
|
||||||
- `${year}` — Erscheinungsjahr
|
- `${title}`, `${year}`, `${imdbId}`
|
||||||
- `${imdbId}` — IMDb-ID
|
|
||||||
|
### Serien-Templates
|
||||||
|
|
||||||
|
- `{seriesTitle}`, `{seasonNr}`, `{episodeNr}`, `{episodeNoStart}`, `{episodeNoEnd}`
|
||||||
|
- `{episodeRange}`, `{episodeTitle}`, `{parts}`, `{discNr}`, `{year}`, `{language}`
|
||||||
|
- führende Null möglich mit `{0:seasonNr}` etc.
|
||||||
|
|
||||||
### Audiobook-Templates
|
### Audiobook-Templates
|
||||||
- `{author}` — Autor
|
|
||||||
- `{title}` — Titel
|
|
||||||
- `{year}` — Erscheinungsjahr
|
|
||||||
- `{narrator}` — Sprecher
|
|
||||||
- `{series}` — Buchreihe
|
|
||||||
- `{part}` — Teil-Nummer
|
|
||||||
- `{format}` — Ausgabeformat
|
|
||||||
|
|
||||||
### Converter-Templates (Video)
|
- `{author}`, `{title}`, `{year}`, `{narrator}`, `{series}`, `{part}`, `{format}`
|
||||||
- `{title}`, `{year}`
|
|
||||||
|
|
||||||
### Converter-Templates (Audio)
|
### Converter-Templates
|
||||||
- `{artist}`, `{title}`, `{album}`, `{year}`, `{trackNr}`
|
|
||||||
|
|
||||||
Nicht gesetzte Werte werden zu `unknown`.
|
- Video: `{title}`, `{year}`
|
||||||
|
- Audio: `{artist}`, `{title}`, `{album}`, `{year}`, `{trackNr}`
|
||||||
|
|
||||||
---
|
## Vollständige Feldliste
|
||||||
|
|
||||||
## Kategorie: Pfade
|
## Kategorie: Benachrichtigungen
|
||||||
|
|
||||||
| Feldname in der GUI | Typ | Default |
|
| GUI-Feld | Key | Typ | Default | Wirkung im System |
|
||||||
|---|---|---|
|
|---|---|---|---|---|
|
||||||
| `Raw Ausgabeordner` | path | `data/output/raw` |
|
| `Expertenmodus` | `ui_expert_mode` | `boolean` | `false` | Schaltet erweiterte Einstellungen in der UI ein. |
|
||||||
| `Raw Ausgabeordner (Blu-ray)` | path | `null` |
|
| `PushOver aktiviert` | `pushover_enabled` | `boolean` | `false` | Master-Schalter für PushOver Versand. |
|
||||||
| `Raw Ausgabeordner (DVD)` | path | `null` |
|
| `PushOver Token` | `pushover_token` | `string` | `leer` | Application Token für PushOver. |
|
||||||
| `Raw Ausgabeordner (Sonstiges)` | path | `null` |
|
| `PushOver User` | `pushover_user` | `string` | `leer` | User-Key für PushOver. |
|
||||||
| `Eigentümer Raw-Ordner (Blu-ray)` | string | `null` |
|
| `PushOver Device (optional)` | `pushover_device` | `string` | `leer` | Optionales Ziel-Device in PushOver. |
|
||||||
| `Eigentümer Raw-Ordner (DVD)` | string | `null` |
|
| `PushOver Titel-Präfix` | `pushover_title_prefix` | `string` | `Ripster` | Prefix im PushOver Titel. |
|
||||||
| `Eigentümer Raw-Ordner (Sonstiges)` | string | `null` |
|
| `PushOver Priority` | `pushover_priority` | `number` | `0` | Priorität -2 bis 2. |
|
||||||
| `Film Ausgabeordner` | path | `data/output/movies` |
|
| `PushOver Timeout (ms)` | `pushover_timeout_ms` | `number` | `7000` | HTTP Timeout für PushOver Requests. |
|
||||||
| `Film Ausgabeordner (Blu-ray)` | path | `null` |
|
| `Bei Metadaten-Auswahl senden` | `pushover_notify_metadata_ready` | `boolean` | `true` | Sendet wenn Metadaten zur Auswahl bereitstehen. |
|
||||||
| `Film Ausgabeordner (DVD)` | path | `null` |
|
| `Bei Rip-Start senden` | `pushover_notify_rip_started` | `boolean` | `true` | Sendet beim Start des MakeMKV-Rips. |
|
||||||
| `Film Ausgabeordner (Sonstiges)` | path | `null` |
|
| `Bei Encode-Start senden` | `pushover_notify_encoding_started` | `boolean` | `true` | Sendet beim Start von HandBrake. |
|
||||||
| `Eigentümer Film-Ordner (Blu-ray)` | string | `null` |
|
| `Bei Erfolg senden` | `pushover_notify_job_finished` | `boolean` | `true` | Sendet bei erfolgreich abgeschlossenem Job. |
|
||||||
| `Eigentümer Film-Ordner (DVD)` | string | `null` |
|
| `Bei Fehler senden` | `pushover_notify_job_error` | `boolean` | `true` | Sendet bei Fehlern in der Pipeline. |
|
||||||
| `Eigentümer Film-Ordner (Sonstiges)` | string | `null` |
|
| `Bei Abbruch senden` | `pushover_notify_job_cancelled` | `boolean` | `true` | Sendet wenn Job manuell abgebrochen wurde. |
|
||||||
| `Log Ordner` | path | `data/logs` |
|
| `Bei Re-Encode Start senden` | `pushover_notify_reencode_started` | `boolean` | `true` | Sendet beim Start von RAW Re-Encode. |
|
||||||
| `Audiobook RAW-Ordner` | path | `null` |
|
| `Bei Re-Encode Erfolg senden` | `pushover_notify_reencode_finished` | `boolean` | `true` | Sendet bei erfolgreichem RAW Re-Encode. |
|
||||||
| `Eigentümer Audiobook RAW-Ordner` | string | `null` |
|
|
||||||
| `Audiobook Output-Ordner` | path | `null` |
|
|
||||||
| `Eigentümer Audiobook Output-Ordner` | string | `null` |
|
|
||||||
| `Output Template (Audiobook)` | string | `{author}/{author} - {title} ({year})` |
|
|
||||||
| `Audiobook RAW Template` | string | `{author} - {title} ({year})` |
|
|
||||||
| `Converter Raw-Ordner` | path | `null` |
|
|
||||||
| `Converter Ausgabe (Video)` | path | `null` |
|
|
||||||
| `Converter Ausgabe (Audio)` | path | `null` |
|
|
||||||
| `Output-Template (Video)` | string | `{title}` |
|
|
||||||
| `Output-Template (Audio)` | string | `{artist} - {title}` |
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Kategorie: Laufwerk
|
|
||||||
|
|
||||||
| Feldname in der GUI | Typ | Default | Hinweis |
|
|
||||||
|---|---|---|---|
|
|
||||||
| `Laufwerksmodus` | select | `auto` | `Auto Discovery` oder `Explizites Device` |
|
|
||||||
| `Device Pfad` | path | `/dev/sr0` | relevant bei `Explizites Device` |
|
|
||||||
| `MakeMKV Source Index` | number | `0` | Disc-Index im Auto-Modus |
|
|
||||||
| `Disc Auto-Erkennung aktiviert` | boolean | `true` | Automatische Disc-Erkennung per Polling |
|
|
||||||
| `Polling Intervall (ms)` | number | `4000` | 1000..60000 |
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Kategorie: Monitoring
|
|
||||||
|
|
||||||
| Feldname in der GUI | Typ | Default |
|
|
||||||
|---|---|---|
|
|
||||||
| `Hardware Monitoring aktiviert` | boolean | `true` |
|
|
||||||
| `Hardware Monitoring Intervall (ms)` | number | `5000` |
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Kategorie: Tools (global)
|
|
||||||
|
|
||||||
| Feldname in der GUI | Typ | Default |
|
|
||||||
|---|---|---|
|
|
||||||
| `MakeMKV Kommando` | string | `makemkvcon` |
|
|
||||||
| `MakeMKV Key` | string | `null` |
|
|
||||||
| `Mediainfo Kommando` | string | `mediainfo` |
|
|
||||||
| `Minimale Titellaenge (Minuten)` | number | `60` |
|
|
||||||
| `HandBrake Kommando` | string | `HandBrakeCLI` |
|
|
||||||
| `FFmpeg Kommando` | string | `ffmpeg` |
|
|
||||||
| `FFprobe Kommando` | string | `ffprobe` |
|
|
||||||
| `Encode-Neustart: unvollständige Ausgabe löschen` | boolean | `true` |
|
|
||||||
| `Parallele Jobs` | number | `1` |
|
|
||||||
|
|
||||||
### Blu-ray-spezifisch
|
|
||||||
|
|
||||||
| Feldname in der GUI | Typ | Default |
|
|
||||||
|---|---|---|
|
|
||||||
| `Mediainfo Extra Args` (Blu-ray) | string | `null` |
|
|
||||||
| `MakeMKV Rip Modus` (Blu-ray) | select | `backup` |
|
|
||||||
| `MakeMKV Analyze Extra Args` (Blu-ray) | string | `null` |
|
|
||||||
| `MakeMKV Rip Extra Args` (Blu-ray) | string | `null` |
|
|
||||||
| `HandBrake Preset` (Blu-ray) | string | `H.264 MKV 1080p30` |
|
|
||||||
| `HandBrake Extra Args` (Blu-ray) | string | `null` |
|
|
||||||
| `Ausgabeformat` (Blu-ray) | select | `mkv` |
|
|
||||||
| `Dateiname Template` (Blu-ray) | string | `${title} (${year})` |
|
|
||||||
| `Ordnername Template` (Blu-ray) | string | `null` |
|
|
||||||
|
|
||||||
### DVD-spezifisch
|
|
||||||
|
|
||||||
| Feldname in der GUI | Typ | Default |
|
|
||||||
|---|---|---|
|
|
||||||
| `Mediainfo Extra Args` (DVD) | string | `null` |
|
|
||||||
| `MakeMKV Rip Modus` (DVD) | select | `mkv` |
|
|
||||||
| `MakeMKV Analyze Extra Args` (DVD) | string | `null` |
|
|
||||||
| `MakeMKV Rip Extra Args` (DVD) | string | `null` |
|
|
||||||
| `HandBrake Preset` (DVD) | string | `H.264 MKV 480p30` |
|
|
||||||
| `HandBrake Extra Args` (DVD) | string | `null` |
|
|
||||||
| `Ausgabeformat` (DVD) | select | `mkv` |
|
|
||||||
| `Dateiname Template` (DVD) | string | `${title} (${year})` |
|
|
||||||
| `Ordnername Template` (DVD) | string | `null` |
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Kategorie: Converter
|
## Kategorie: Converter
|
||||||
|
|
||||||
| Feldname in der GUI | Typ | Default | Hinweis |
|
| GUI-Feld | Key | Typ | Default | Wirkung im System |
|
||||||
|---|---|---|---|
|
|---|---|---|---|---|
|
||||||
| `Erlaubte Datei-Endungen*` | string | `mkv,mp4,m2ts,iso,avi,mov,flac,mp3,wav,m4a,ogg,opus` | In der UI als Checkbox-Liste, ohne Punkt |
|
| `Erlaubte Datei-Endungen*` | `converter_scan_extensions` | `string` | `mkv,mp4,m2ts,iso,avi,mov,flac,mp3,wav,m4a,ogg,opus` | Erlaubte Datei-Endungen für den Converter-Scan (ohne Punkt). Wird in der UI als Checkbox-Liste gepflegt. |
|
||||||
| `Auto-Scan (Polling)` | boolean | `false` | Converter-Ordner automatisch scannen |
|
| `Auto-Scan (Polling)` | `converter_polling_enabled` | `boolean` | `false` | Converter Raw-Ordner automatisch in regelmäßigen Abständen scannen. |
|
||||||
| `Polling-Intervall (Sekunden)` | number | `300` | 30..86400 |
|
| `Polling-Intervall (Sekunden)` | `converter_polling_interval` | `number` | `300` | Intervall für automatischen Scan des Converter-Ordners. |
|
||||||
|
|
||||||
---
|
## Kategorie: Laufwerk
|
||||||
|
|
||||||
|
| GUI-Feld | Key | Typ | Default | Wirkung im System |
|
||||||
|
|---|---|---|---|---|
|
||||||
|
| `Laufwerksmodus` | `drive_mode` | `select` | `auto` | Auto-Discovery oder explizites Device. |
|
||||||
|
| `Device Pfad` | `drive_device` | `path` | `/dev/sr0` | Nur für expliziten Modus, z.B. /dev/sr0. |
|
||||||
|
| `MakeMKV Source Index` | `makemkv_source_index` | `number` | `0` | Disc Index im Auto-Modus. |
|
||||||
|
| `Automatische Disk-Erkennung` | `disc_auto_detection_enabled` | `boolean` | `true` | Wenn deaktiviert, findet keine automatische Laufwerksprüfung statt. Neue Disks werden nur per "Laufwerk neu lesen" erkannt. |
|
||||||
|
| `Polling Intervall (ms)` | `disc_poll_interval_ms` | `number` | `4000` | Intervall für Disk-Erkennung. |
|
||||||
|
|
||||||
## Kategorie: Metadaten
|
## Kategorie: Metadaten
|
||||||
|
|
||||||
| Feldname in der GUI | Typ | Default |
|
| GUI-Feld | Key | Typ | Default | Wirkung im System |
|
||||||
|---|---|---|
|
|---|---|---|---|---|
|
||||||
| `OMDb API Key` | string | `null` |
|
| `OMDb API Key` | `omdb_api_key` | `string` | `leer` | API Key für Metadatensuche. |
|
||||||
| `OMDb Typ` | select | `movie` |
|
| `TMDb Read Access Token` | `tmdb_api_read_access_token` | `string` | `leer` | Read Access Token für Serien-Metadaten über TheMovieDB (TMDb). |
|
||||||
|
| `DVD Serien-Sprache` | `dvd_series_language` | `string` | `de-DE` | Bevorzugte Sprache für Serien-Metadaten im TMDb-Format, z.B. de-DE oder en-US. |
|
||||||
|
| `DVD Serien-Fallback-Sprachen` | `dvd_series_fallback_languages` | `string` | `de-DE,en-US` | Kommagetrennte TMDb-Sprachen für Fallback-Titel, z.B. de-DE,en-US,fr-FR. |
|
||||||
|
| `DVD Serien-Ordnung` | `dvd_series_order_preference` | `select` | `episode_group` | Bevorzugte Episodenordnung für DVD-Serien. Episode Groups nutzen TMDb Alternate Orders, falls vorhanden. |
|
||||||
|
| `DVD Disc-Profile wiederverwenden` | `dvd_series_reuse_disc_profiles` | `boolean` | `true` | Verwendet zuvor bestätigte Disc-Profile erneut, um Episoden automatischer zuzuordnen. |
|
||||||
|
| `OMDb Typ` | `omdb_default_type` | `select` | `movie` | Vorauswahl für Suche. |
|
||||||
|
| `MusicBrainz aktiviert` | `musicbrainz_enabled` | `boolean` | `true` | MusicBrainz-Metadatensuche für CDs aktivieren. |
|
||||||
|
| `Coverart-Nachladen aktiv` | `coverart_recovery_enabled` | `boolean` | `true` | Wenn aktiv, werden fehlende Coverarts automatisch in Intervallen geprüft und nachgeladen. |
|
||||||
|
| `Coverart-Prüfintervall (Stunden)` | `coverart_recovery_interval_hours` | `number` | `6` | Intervall für automatische Prüfung fehlender Coverarts in Stunden. |
|
||||||
|
|
||||||
---
|
## Kategorie: Monitoring
|
||||||
|
|
||||||
## Kategorie: Benachrichtigungen (PushOver)
|
| GUI-Feld | Key | Typ | Default | Wirkung im System |
|
||||||
|
|---|---|---|---|---|
|
||||||
|
| `Hardware Monitoring aktiviert` | `hardware_monitoring_enabled` | `boolean` | `true` | Master-Schalter: aktiviert/deaktiviert das komplette Hardware-Monitoring (Polling + Berechnung + WebSocket-Updates). |
|
||||||
|
| `Hardware Monitoring Intervall (ms)` | `hardware_monitoring_interval_ms` | `number` | `5000` | Polling-Intervall für CPU/RAM/GPU/Storage-Metriken. |
|
||||||
|
|
||||||
| Feldname in der GUI | Typ | Default |
|
## Kategorie: Pfade
|
||||||
|---|---|---|
|
|
||||||
| `PushOver aktiviert` | boolean | `false` |
|
| GUI-Feld | Key | Typ | Default | Wirkung im System |
|
||||||
| `PushOver Token` | string | `null` |
|
|---|---|---|---|---|
|
||||||
| `PushOver User` | string | `null` |
|
| `Raw-Ordner (Blu-ray)` | `raw_dir_bluray` | `path` | `leer` | RAW-Zielpfad für Blu-ray. Leer = Standardpfad (data/output/raw). |
|
||||||
| `PushOver Device (optional)` | string | `null` |
|
| `Raw-Ordner (DVD)` | `raw_dir_dvd` | `path` | `leer` | RAW-Zielpfad für DVD. Leer = Standardpfad (data/output/raw). |
|
||||||
| `PushOver Titel-Präfix` | string | `Ripster` |
|
| `CD RAW-Ordner` | `raw_dir_cd` | `path` | `leer` | Basisordner für rohe CD-WAV-Dateien (cdparanoia-Output). Leer = Standardpfad (data/output/cd). |
|
||||||
| `PushOver Priority` | number | `0` |
|
| `Audiobook RAW-Ordner` | `raw_dir_audiobook` | `path` | `leer` | Basisordner für hochgeladene AAX-Dateien. Leer = Standardpfad (data/output/audiobook-raw). |
|
||||||
| `PushOver Timeout (ms)` | number | `7000` |
|
| `Serien-Ordner (Blu-ray)` | `series_dir_bluray` | `path` | `leer` | Zielordner für Blu-ray-Serienfolgen. Leer = Standardpfad (data/output/series). |
|
||||||
| `Bei Metadaten-Auswahl senden` | boolean | `true` |
|
| `Film-Ordner (Blu-ray)` | `movie_dir_bluray` | `path` | `leer` | Encode-Zielpfad für Blu-ray. Leer = Standardpfad (data/output/movies). |
|
||||||
| `Bei Rip-Start senden` | boolean | `true` |
|
| `Film-Ordner (DVD)` | `movie_dir_dvd` | `path` | `leer` | Encode-Zielpfad für DVD. Leer = Standardpfad (data/output/movies). |
|
||||||
| `Bei Encode-Start senden` | boolean | `true` |
|
| `Serien-Ordner (DVD)` | `series_dir_dvd` | `path` | `leer` | Zielordner für DVD-Serienfolgen. Leer = Standardpfad (data/output/series). |
|
||||||
| `Bei Erfolg senden` | boolean | `true` |
|
| `CD Output-Ordner` | `movie_dir_cd` | `path` | `leer` | Zielordner für encodierte CD-Ausgaben (FLAC, MP3 usw.). Leer = gleicher Ordner wie CD RAW-Ordner. |
|
||||||
| `Bei Fehler senden` | boolean | `true` |
|
| `Audiobook Output-Ordner` | `movie_dir_audiobook` | `path` | `leer` | Zielordner für encodierte Audiobook-Dateien. Leer = Standardpfad (data/output/audiobooks). |
|
||||||
| `Bei Abbruch senden` | boolean | `true` |
|
| `Externe Speicher` | `external_storage_paths` | `path` | `[]` | Wird links unter "Freie Speicher" angezeigt. |
|
||||||
| `Bei Re-Encode Start senden` | boolean | `true` |
|
| `Log Ordner` | `log_dir` | `path` | `data/logs` | Basisordner für Logs. Job-Logs liegen direkt hier, Backend-Logs in /backend. |
|
||||||
| `Bei Re-Encode Erfolg senden` | boolean | `true` |
|
| `CD Output Template` | `cd_output_template` | `string` | `{artist} - {album} ({year})/{trackNr} {artist} - {title}` | Template für relative CD-Ausgabepfade ohne Dateiendung. Platzhalter: {artist}, {album}, {year}, {title}, {trackNr}, {trackNo}. Unterordner sind über "/" möglich – alles nach dem letzten "/" ist der Dateiname. Die Endung wird über das gewählte Ausgabeformat gesetzt. |
|
||||||
|
| `Output Template (Blu-ray)` | `output_template_bluray` | `string` | `${title} (${year})/${title} (${year})` | Template für Ordner und Dateiname. Platzhalter: ${title}, ${year}, ${imdbId}. Unterordner über "/" möglich – alles nach dem letzten "/" ist der Dateiname. Die Endung wird über das gewählte Ausgabeformat gesetzt. |
|
||||||
|
| `Output Template (Blu-ray Serie, Episode)` | `output_template_bluray_series_episode` | `string` | `{seriesTitle}/Staffel {seasonNr}/S{seasonNr}E{episodeNr} - {episodeTitle}` | Template für einzelne Blu-ray-Serienepisoden ohne Dateiendung. Platzhalter: {seriesTitle}, {seasonNr}, {episodeNr}, {episodeTitle}, {discNr}, {year}, {language}. Optional mit führender Null: {0:seasonNr}, {0:episodeNr}. |
|
||||||
|
| `Output Template (Blu-ray Serie, Multi-Episode)` | `output_template_bluray_series_multi_episode` | `string` | `{seriesTitle}/Staffel {seasonNr}/S{0:seasonNr}E{episodeRange} - {episodeTitle} (Teil {parts})` | Template für zusammengefasste Blu-ray-Serienepisoden ohne Dateiendung. Platzhalter: {seriesTitle}, {seasonNr}, {episodeNoStart}, {episodeNoEnd}, {episodeRange}, {episodeTitle}, {parts}, {discNr}, {year}, {language}. Optional mit führender Null: {0:seasonNr}, {0:episodeNoStart}, {0:episodeNoEnd}. |
|
||||||
|
| `Output Template (DVD)` | `output_template_dvd` | `string` | `${title} (${year})/${title} (${year})` | Template für Ordner und Dateiname. Platzhalter: ${title}, ${year}, ${imdbId}. Unterordner über "/" möglich – alles nach dem letzten "/" ist der Dateiname. Die Endung wird über das gewählte Ausgabeformat gesetzt. |
|
||||||
|
| `Output Template (DVD Serie, Episode)` | `output_template_dvd_series_episode` | `string` | `{seriesTitle}/Staffel {seasonNr}/S{seasonNr}E{episodeNr} - {episodeTitle}` | Template für einzelne DVD-Serienepisoden ohne Dateiendung. Platzhalter: {seriesTitle}, {seasonNr}, {episodeNr}, {episodeTitle}, {discNr}, {year}, {language}. Optional mit führender Null: {0:seasonNr}, {0:episodeNr}. |
|
||||||
|
| `Output Template (DVD Serie, Multi-Episode)` | `output_template_dvd_series_multi_episode` | `string` | `{seriesTitle}/Staffel {seasonNr}/S{0:seasonNr}E{episodeRange} - {episodeTitle} (Teil {parts})` | Template für zusammengefasste DVD-Serienepisoden ohne Dateiendung. Platzhalter: {seriesTitle}, {seasonNr}, {episodeNoStart}, {episodeNoEnd}, {episodeRange}, {episodeTitle}, {parts}, {discNr}, {year}, {language}. Optional mit führender Null: {0:seasonNr}, {0:episodeNoStart}, {0:episodeNoEnd}. |
|
||||||
|
| `Output Template (Audiobook)` | `output_template_audiobook` | `string` | `{author}/{author} - {title} ({year})` | Template für relative Audiobook-Ausgabepfade ohne Dateiendung. Platzhalter: {author}, {title}, {year}, {narrator}, {series}, {part}, {format}. Unterordner sind über "/" möglich. |
|
||||||
|
| `Audiobook RAW Template` | `audiobook_raw_template` | `string` | `{author} - {title} ({year})` | Template für relative Audiobook-RAW-Ordner. Platzhalter: {author}, {title}, {year}, {narrator}, {series}, {part}. |
|
||||||
|
| `Converter Raw-Ordner` | `converter_raw_dir` | `path` | `leer` | Eingangsordner für den Converter (Import-Scan und Datei-Uploads). Jeder Upload erhält einen Unterordner. Leer = Standardpfad (data/output/converter-raw). |
|
||||||
|
| `Converter Ausgabe (Video)` | `converter_movie_dir` | `path` | `leer` | Ausgabepfad für konvertierte Video-Dateien. Leer = Standardpfad (data/output/converted-movies). |
|
||||||
|
| `Converter Ausgabe (Audio)` | `converter_audio_dir` | `path` | `leer` | Ausgabepfad für konvertierte Audio-Dateien. Leer = Standardpfad (data/output/converted-audio). |
|
||||||
|
| `Output-Template (Video)` | `converter_output_template_video` | `string` | `{title}` | Dateiname-Template für konvertierte Video-Dateien (ohne Endung). Platzhalter: {title}, {year}. |
|
||||||
|
| `Output-Template (Audio)` | `converter_output_template_audio` | `string` | `{artist} - {title}` | Dateiname-Template für konvertierte Audio-Dateien (ohne Endung). Platzhalter: {artist}, {title}, {album}, {year}, {trackNr}. |
|
||||||
|
| `RAW-Ordner (Blu-ray Serie)` | `raw_dir_bluray_series` | `path` | `leer` | RAW-Zielpfad für Blu-ray-Serien. Leer = gleicher Pfad wie RAW-Ordner (Blu-ray). |
|
||||||
|
| `Eigentümer RAW-Ordner (Blu-ray Serie)` | `raw_dir_bluray_series_owner` | `string` | `leer` | Eigentümer der Dateien im Format user:gruppe für Blu-ray-Serien-RAW. Leer = Eigentümer Raw-Ordner (Blu-ray). |
|
||||||
|
| `Eigentümer Raw-Ordner (Blu-ray)` | `raw_dir_bluray_owner` | `string` | `leer` | Eigentümer der Dateien im Format user:gruppe. Nur aktiv wenn ein Pfad gesetzt ist. Leer = Standardbenutzer des Dienstes. |
|
||||||
|
| `RAW-Ordner (DVD Serie)` | `raw_dir_dvd_series` | `path` | `leer` | RAW-Zielpfad für DVD-Serien. Leer = gleicher Pfad wie RAW-Ordner (DVD). |
|
||||||
|
| `Eigentümer RAW-Ordner (DVD Serie)` | `raw_dir_dvd_series_owner` | `string` | `leer` | Eigentümer der Dateien im Format user:gruppe für DVD-Serien-RAW. Leer = Eigentümer Raw-Ordner (DVD). |
|
||||||
|
| `Eigentümer Raw-Ordner (DVD)` | `raw_dir_dvd_owner` | `string` | `leer` | Eigentümer der Dateien im Format user:gruppe. Nur aktiv wenn ein Pfad gesetzt ist. Leer = Standardbenutzer des Dienstes. |
|
||||||
|
| `Eigentümer CD RAW-Ordner` | `raw_dir_cd_owner` | `string` | `leer` | Eigentümer der Dateien im Format user:gruppe. Nur aktiv wenn ein Pfad gesetzt ist. Leer = Standardbenutzer des Dienstes. |
|
||||||
|
| `Eigentümer Audiobook RAW-Ordner` | `raw_dir_audiobook_owner` | `string` | `leer` | Eigentümer der Audiobook-RAW-Dateien im Format user:gruppe. Nur aktiv wenn ein Pfad gesetzt ist. Leer = Standardbenutzer des Dienstes. |
|
||||||
|
| `Eigentümer Serien-Ordner (Blu-ray)` | `series_dir_bluray_owner` | `string` | `leer` | Eigentümer der Blu-ray-Serienausgaben im Format user:gruppe. Leer = Standardbenutzer des Dienstes. |
|
||||||
|
| `Eigentümer Film-Ordner (Blu-ray)` | `movie_dir_bluray_owner` | `string` | `leer` | Eigentümer der Dateien im Format user:gruppe. Nur aktiv wenn ein Pfad gesetzt ist. Leer = Standardbenutzer des Dienstes. |
|
||||||
|
| `Eigentümer Film-Ordner (DVD)` | `movie_dir_dvd_owner` | `string` | `leer` | Eigentümer der Dateien im Format user:gruppe. Nur aktiv wenn ein Pfad gesetzt ist. Leer = Standardbenutzer des Dienstes. |
|
||||||
|
| `Eigentümer Serien-Ordner (DVD)` | `series_dir_dvd_owner` | `string` | `leer` | Eigentümer der DVD-Serienausgaben im Format user:gruppe. Leer = Standardbenutzer des Dienstes. |
|
||||||
|
| `Eigentümer CD Output-Ordner` | `movie_dir_cd_owner` | `string` | `leer` | Eigentümer der encodierten CD-Ausgaben im Format user:gruppe. Leer = Standardbenutzer des Dienstes. |
|
||||||
|
| `Eigentümer Audiobook Output-Ordner` | `movie_dir_audiobook_owner` | `string` | `leer` | Eigentümer der encodierten Audiobook-Dateien im Format user:gruppe. Leer = Standardbenutzer des Dienstes. |
|
||||||
|
|
||||||
|
## Kategorie: Tools
|
||||||
|
|
||||||
|
| GUI-Feld | Key | Typ | Default | Wirkung im System |
|
||||||
|
|---|---|---|---|---|
|
||||||
|
| `MakeMKV Kommando` | `makemkv_command` | `string` | `makemkvcon` | Pfad oder Befehl für makemkvcon. |
|
||||||
|
| `MakeMKV Key` | `makemkv_registration_key` | `string` | `leer` | Optionaler Registrierungsschlüssel. Wird vor Analyze/Rip automatisch per "makemkvcon reg" gesetzt. |
|
||||||
|
| `Mediainfo Kommando` | `mediainfo_command` | `string` | `mediainfo` | Pfad oder Befehl für mediainfo. |
|
||||||
|
| `Minimale Titellänge (Minuten)` | `makemkv_min_length_minutes` | `number` | `60` | Filtert kurze Titel beim Rip. |
|
||||||
|
| `HandBrake Kommando` | `handbrake_command` | `string` | `HandBrakeCLI` | Pfad oder Befehl für HandBrakeCLI. |
|
||||||
|
| `Encode-Neustart: unvollständige Ausgabe löschen` | `handbrake_restart_delete_incomplete_output` | `boolean` | `true` | Wenn aktiv, wird bei "Encode neu starten" der bisherige (nicht erfolgreiche) Output vor Start entfernt. |
|
||||||
|
| `Max. parallele Film/Video Encodes` | `pipeline_max_parallel_jobs` | `number` | `1` | Maximale Anzahl parallel laufender Film/Video Encode-Jobs. Gilt zusätzlich zum Gesamtlimit. |
|
||||||
|
| `Max. parallele Audio CD Jobs` | `pipeline_max_parallel_cd_encodes` | `number` | `2` | Maximale Anzahl parallel laufender Audio CD Jobs (Rip + Encode als Einheit). Gilt zusätzlich zum Gesamtlimit. |
|
||||||
|
| `Max. Encodes gesamt (medienunabhängig)` | `pipeline_max_total_encodes` | `number` | `3` | Gesamtlimit für alle parallel laufenden Encode-Jobs (Film + Audio CD). Dieses Limit hat Vorrang vor den Einzellimits. |
|
||||||
|
| `Audio CDs: Queue-Reihenfolge überspringen` | `pipeline_cd_bypasses_queue` | `boolean` | `false` | Wenn aktiv, können Audio CD Jobs unabhängig von Film-Jobs starten (überspringen die Film-Queue-Reihenfolge). Einzellimits und Gesamtlimit gelten weiterhin. |
|
||||||
|
| `Script-Test Timeout (ms)` | `script_test_timeout_ms` | `number` | `0` | Timeout fuer Script-Tests in den Settings. 0 = kein Timeout. |
|
||||||
|
| `cdparanoia Kommando` | `cdparanoia_command` | `string` | `cdparanoia` | Pfad oder Befehl für cdparanoia. Wird als Fallback genutzt wenn kein individuelles Kommando gesetzt ist. |
|
||||||
|
| `FFmpeg Kommando` | `ffmpeg_command` | `string` | `ffmpeg` | Pfad oder Befehl für ffmpeg. Wird für Audiobook-Encoding genutzt. |
|
||||||
|
| `FFprobe Kommando` | `ffprobe_command` | `string` | `ffprobe` | Pfad oder Befehl für ffprobe. Wird für Audiobook-Metadaten und Kapitel genutzt. |
|
||||||
|
| `Mediainfo Extra Args` | `mediainfo_extra_args_bluray` | `string` | `leer` | Zusätzliche CLI-Parameter für mediainfo (Blu-ray). |
|
||||||
|
| `MakeMKV Rip Modus` | `makemkv_rip_mode_bluray` | `select` | `backup` | backup: vollständige Blu-ray Struktur im RAW-Ordner (empfohlen, ermöglicht --decrypt). |
|
||||||
|
| `MakeMKV Analyze Extra Args` | `makemkv_analyze_extra_args_bluray` | `string` | `leer` | Zusätzliche CLI-Parameter für Analyze (Blu-ray). |
|
||||||
|
| `MakeMKV Rip Extra Args` | `makemkv_rip_extra_args_bluray` | `string` | `leer` | Zusätzliche CLI-Parameter für Rip (Blu-ray). |
|
||||||
|
| `HandBrake Preset` | `handbrake_preset_bluray` | `string` | `H.264 MKV 1080p30` | Preset Name für -Z (Blu-ray). Leer = kein Preset, nur CLI-Parameter werden verwendet. |
|
||||||
|
| `HandBrake Extra Args` | `handbrake_extra_args_bluray` | `string` | `leer` | Zusätzliche CLI-Argumente (Blu-ray). |
|
||||||
|
| `Ausgabeformat` | `output_extension_bluray` | `select` | `mkv` | Dateiendung für finale Datei (Blu-ray). |
|
||||||
|
| `Mediainfo Extra Args` | `mediainfo_extra_args_dvd` | `string` | `leer` | Zusätzliche CLI-Parameter für mediainfo (DVD). |
|
||||||
|
| `MakeMKV Rip Modus` | `makemkv_rip_mode_dvd` | `select` | `backup` | backup: vollständige Disc-Struktur im RAW-Ordner (einzig gültige Option für DVDs). |
|
||||||
|
| `MakeMKV Analyze Extra Args` | `makemkv_analyze_extra_args_dvd` | `string` | `leer` | Zusätzliche CLI-Parameter für Analyze (DVD). |
|
||||||
|
| `MakeMKV Rip Extra Args` | `makemkv_rip_extra_args_dvd` | `string` | `leer` | Zusätzliche CLI-Parameter für Rip (DVD). |
|
||||||
|
| `HandBrake Preset` | `handbrake_preset_dvd` | `string` | `H.264 MKV 480p30` | Preset Name für -Z (DVD). Leer = kein Preset, nur CLI-Parameter werden verwendet. |
|
||||||
|
| `HandBrake Extra Args` | `handbrake_extra_args_dvd` | `string` | `leer` | Zusätzliche CLI-Argumente (DVD). |
|
||||||
|
| `Ausgabeformat` | `output_extension_dvd` | `select` | `mkv` | Dateiendung für finale Datei (DVD). |
|
||||||
|
|||||||
@@ -1,71 +1,102 @@
|
|||||||
# Ersteinrichtung
|
# Ersteinrichtung
|
||||||
|
|
||||||
Nach der Installation erfolgt die tägliche Konfiguration fast vollständig in der GUI unter `Settings`.
|
Diese Seite ist die Betriebs-Checkliste vor dem ersten produktiven Lauf.
|
||||||
|
|
||||||
## Ziel
|
## Ziel der Ersteinrichtung
|
||||||
|
|
||||||
Vor dem ersten echten Job müssen Pfade, Tools und Metadatenzugriff sauber gesetzt sein.
|
Vor dem ersten Job müssen drei Dinge stabil sein:
|
||||||
|
|
||||||
## Reihenfolge (empfohlen)
|
1. Pfade stimmen (RAW, Output, Logs)
|
||||||
|
2. Tools sind aufrufbar (MakeMKV, HandBrake, MediaInfo)
|
||||||
|
3. Metadatenzugänge funktionieren (OMDb, optional TMDb/MusicBrainz)
|
||||||
|
|
||||||
### 1. `Settings` -> Tab `Konfiguration`
|
## Empfohlene Reihenfolge
|
||||||
|
|
||||||
Setze zuerst diese Pflichtwerte:
|
### 1) Basis in `Settings -> Konfiguration`
|
||||||
|
|
||||||
| Bereich | Wichtige Felder |
|
Setze zuerst:
|
||||||
|
|
||||||
|
- `Raw-Ordner` und `Film-/Serien-Ordner`
|
||||||
|
- `Log Ordner`
|
||||||
|
- `MakeMKV Kommando`, `HandBrake Kommando`, `Mediainfo Kommando`
|
||||||
|
- `OMDb API Key`
|
||||||
|
|
||||||
|
Dann speichern.
|
||||||
|
|
||||||
|
### 2) Profile pro Medium festziehen
|
||||||
|
|
||||||
|
Ripster löst viele Werte profilspezifisch auf (`bluray`, `dvd`, `cd`, `audiobook`).
|
||||||
|
|
||||||
|
Pflichtprüfung:
|
||||||
|
|
||||||
|
- RAW-Pfade je Profil
|
||||||
|
- Output-Pfade je Profil
|
||||||
|
- HandBrake-Preset je Profil
|
||||||
|
- Output-Templates je Profil
|
||||||
|
|
||||||
|
Für Serien zusätzlich:
|
||||||
|
|
||||||
|
- `RAW-Ordner (Blu-ray/DVD Serie)`
|
||||||
|
- `Serien-Ordner (Blu-ray/DVD)`
|
||||||
|
- Serien-Templates (Episode/Multi-Episode)
|
||||||
|
|
||||||
|
### 3) Queue-Verhalten definieren
|
||||||
|
|
||||||
|
Stelle ein:
|
||||||
|
|
||||||
|
- `Max. parallele Film/Video Encodes`
|
||||||
|
- `Max. parallele Audio CD Jobs`
|
||||||
|
- `Max. Encodes gesamt`
|
||||||
|
- optional `Audio CDs: Queue-Reihenfolge überspringen`
|
||||||
|
|
||||||
|
Damit steuerst du Durchsatz, Priorität und Lastverteilung.
|
||||||
|
|
||||||
|
### 4) Metadatenquellen absichern
|
||||||
|
|
||||||
|
Film:
|
||||||
|
|
||||||
|
- OMDb-Key prüfen
|
||||||
|
|
||||||
|
Serien:
|
||||||
|
|
||||||
|
- TMDb Read Access Token setzen
|
||||||
|
- Sprache/Fallback-Sprachen festlegen
|
||||||
|
|
||||||
|
CD/Audiodaten:
|
||||||
|
|
||||||
|
- `MusicBrainz aktiviert` nach Bedarf
|
||||||
|
|
||||||
|
### 5) Optional: Benachrichtigungen
|
||||||
|
|
||||||
|
- PushOver-Zugangsdaten setzen
|
||||||
|
- `PushOver Test` ausführen
|
||||||
|
- Event-Toggles pro Phase prüfen
|
||||||
|
|
||||||
|
### 6) Optional: Automatisierung
|
||||||
|
|
||||||
|
1. Skripte testen
|
||||||
|
2. Skriptketten bauen/testen
|
||||||
|
3. Cronjobs erst danach aktivieren
|
||||||
|
|
||||||
|
## Funktionsprüfung (Kurztest)
|
||||||
|
|
||||||
|
1. Disc in `Ripper` erkennen lassen.
|
||||||
|
2. `Analyse starten`.
|
||||||
|
3. Metadaten übernehmen.
|
||||||
|
4. Bis `Bereit zum Encodieren` laufen.
|
||||||
|
5. Encode starten und Abschluss in `Historie` prüfen.
|
||||||
|
|
||||||
|
## Typische Konfigurationsfehler
|
||||||
|
|
||||||
|
| Symptom | Häufige Ursache |
|
||||||
|---|---|
|
|---|---|
|
||||||
| Pfade | `Raw Ausgabeordner`, `Film Ausgabeordner`, `Log Ordner` |
|
| Job bleibt früh auf Fehler | Toolkommando falsch oder nicht im PATH |
|
||||||
| Tools | `MakeMKV Kommando`, `HandBrake Kommando`, `Mediainfo Kommando` |
|
| RAW/Output landet am falschen Ort | Profilpfade nicht gesetzt, Fallback greift |
|
||||||
| Metadaten | `OMDb API Key`, optional `OMDb Typ` |
|
| Serienausgabe landet bei Filmen | Serienpfade/Serientemplates fehlen |
|
||||||
|
| Queue verhält sich unerwartet | Gesamtlimit und Lane-Limits widersprechen sich |
|
||||||
Danach `Änderungen speichern`.
|
|
||||||
|
|
||||||
### 2. Medienprofile prüfen
|
|
||||||
|
|
||||||
Wenn du Blu-ray und DVD unterschiedlich behandeln willst, pflege die profilbezogenen Felder:
|
|
||||||
|
|
||||||
- `*_bluray`
|
|
||||||
- `*_dvd`
|
|
||||||
- optional `*_other`
|
|
||||||
|
|
||||||
Typische Beispiele:
|
|
||||||
|
|
||||||
- `HandBrake Preset` (Blu-ray und DVD)
|
|
||||||
- `Raw Ausgabeordner` (Blu-ray und DVD)
|
|
||||||
- `Dateiname Template` (Blu-ray und DVD)
|
|
||||||
|
|
||||||
### 3. Queue und Monitoring festlegen
|
|
||||||
|
|
||||||
- `Parallele Jobs` für den gleichzeitigen Durchsatz
|
|
||||||
- `Hardware Monitoring aktiviert` + `Hardware Monitoring Intervall (ms)` für Live-Metriken im Ripper
|
|
||||||
|
|
||||||
### 4. Optional: Push-Benachrichtigungen
|
|
||||||
|
|
||||||
In den Benachrichtigungsfeldern setzen:
|
|
||||||
|
|
||||||
- `PushOver aktiviert`
|
|
||||||
- `PushOver Token`
|
|
||||||
- `PushOver User`
|
|
||||||
|
|
||||||
Dann über `PushOver Test` direkt prüfen.
|
|
||||||
|
|
||||||
## 2-Minuten-Funktionstest
|
|
||||||
|
|
||||||
1. `Ripper` öffnen
|
|
||||||
2. Disc einlegen
|
|
||||||
3. `Analyse starten`
|
|
||||||
4. Metadaten übernehmen
|
|
||||||
5. Bis `Bereit zum Encodieren` laufen lassen
|
|
||||||
|
|
||||||
Wenn diese Schritte funktionieren, ist die Grundkonfiguration korrekt.
|
|
||||||
|
|
||||||
## Wenn Werte nicht gespeichert werden
|
|
||||||
|
|
||||||
- Feld mit Fehler markieren lassen (rote Validierung im Formular)
|
|
||||||
- Pfadangaben und numerische Werte prüfen
|
|
||||||
- bei Tool-Pfaden direkt CLI-Aufruf im Terminal testen
|
|
||||||
|
|
||||||
## Weiter
|
## Weiter
|
||||||
|
|
||||||
- [Erster Lauf](quickstart.md)
|
- [Erster Lauf](quickstart.md)
|
||||||
- [GUI-Seiten im Detail](../gui/index.md)
|
- [GUI-Seiten](../gui/index.md)
|
||||||
|
- [Workflows aus Nutzersicht](../workflows/index.md)
|
||||||
|
|||||||
@@ -1,19 +1,21 @@
|
|||||||
# Erster Lauf
|
# Erster Lauf
|
||||||
|
|
||||||
Dieser Ablauf zeigt einen vollständigen Job aus Anwendersicht: von Disc-Erkennung bis fertiger Datei.
|
Dieser Ablauf führt einen vollständigen Disc-Job von Erkennung bis fertiger Datei durch.
|
||||||
|
|
||||||
## 1. Ripper öffnen und Disc einlegen
|
## 1) Disc erkennen
|
||||||
|
|
||||||
Erwartung:
|
1. `Ripper` öffnen.
|
||||||
|
2. Disc einlegen.
|
||||||
|
3. Auf `Medium erkannt` warten.
|
||||||
|
|
||||||
- Status wechselt auf `Medium erkannt`
|
Prüfen:
|
||||||
- im Bereich `Disk-Information` sind Laufwerksdaten sichtbar
|
|
||||||
|
|
||||||
Wenn nichts passiert: `Laufwerk neu lesen`.
|
- `Disk-Information` zeigt Device/Label.
|
||||||
|
- Falls nicht: `Laufwerk neu lesen`.
|
||||||
|
|
||||||
## 2. Analyse starten
|
## 2) Analyse starten
|
||||||
|
|
||||||
Aktion im Ripper:
|
Aktion:
|
||||||
|
|
||||||
- `Analyse starten`
|
- `Analyse starten`
|
||||||
|
|
||||||
@@ -22,49 +24,67 @@ Erwartung:
|
|||||||
- Status `Analyse`
|
- Status `Analyse`
|
||||||
- danach Metadaten-Dialog
|
- danach Metadaten-Dialog
|
||||||
|
|
||||||
## 3. Metadaten auswählen
|
## 3) Metadaten bestätigen
|
||||||
|
|
||||||
Im Dialog `Metadaten auswählen`:
|
Im Dialog:
|
||||||
|
|
||||||
1. OMDb-Suche nutzen oder manuell eintragen
|
1. Treffer suchen/auswählen.
|
||||||
2. passenden Treffer markieren
|
2. Bei Serie zusätzlich Disc-Nummer setzen.
|
||||||
3. `Auswahl übernehmen`
|
3. `Auswahl übernehmen`.
|
||||||
|
|
||||||
## 4. Auf den nächsten Zustand reagieren
|
Mögliche Abzweigungen:
|
||||||
|
|
||||||
- Normalfall ohne vorhandenes RAW: `Rippen` -> `Mediainfo-Pruefung` -> `Bereit zum Encodieren`
|
- Duplikatfilm -> `Übernahme erzwingen` oder `Multipart movie`
|
||||||
- bei vorhandenem RAW: direkt `Mediainfo-Pruefung` -> `Bereit zum Encodieren`
|
- vorhandenes RAW -> Entscheidungsdialog (weiterverwenden oder neu rippen)
|
||||||
- bei unklarer Blu-ray-Playlist: `Warte auf Auswahl` (Playlist auswählen und übernehmen)
|
|
||||||
|
|
||||||
## 5. Review in `Bereit zum Encodieren`
|
## 4) Rip/Review-Phase
|
||||||
|
|
||||||
Im aufgeklappten Job (`Pipeline-Status`):
|
Normalfall:
|
||||||
|
|
||||||
- Encode-Titel wählen
|
- `Startbereit` -> `Rippen` -> `Mediainfo-Pruefung`
|
||||||
|
|
||||||
|
Mögliche Alternativen:
|
||||||
|
|
||||||
|
- vorhandenes RAW: direkter Sprung in Prüfung
|
||||||
|
- Blu-ray/DVD-Entscheidung nötig: `Warte auf Auswahl` für Playlist/Titel
|
||||||
|
|
||||||
|
## 5) Encode-Review abschließen
|
||||||
|
|
||||||
|
Bei `Bereit zum Encodieren`:
|
||||||
|
|
||||||
|
- Titel festlegen
|
||||||
- Audio-/Subtitle-Spuren prüfen
|
- Audio-/Subtitle-Spuren prüfen
|
||||||
- optional User-Preset auswählen
|
- optional Preset auswählen
|
||||||
- optional Pre-/Post-Skripte bzw. Ketten hinzufügen
|
- optional Pre-/Post-Skripte wählen
|
||||||
|
|
||||||
Dann `Encoding starten`.
|
Dann:
|
||||||
|
|
||||||
## 6. Encoding überwachen
|
- `Encoding starten`
|
||||||
|
|
||||||
|
## 6) Encoding überwachen
|
||||||
|
|
||||||
Während `Encodieren`:
|
Während `Encodieren`:
|
||||||
|
|
||||||
- Fortschritt + ETA im Ripper
|
- Fortschritt/ETA im Ripper
|
||||||
- Live-Log im `Pipeline-Status`
|
- Queue- und Runtime-Status beobachten
|
||||||
- Queue- und Skript/Cron-Status parallel beobachtbar
|
- optional Logkontrolle in Historie
|
||||||
|
|
||||||
## 7. Ergebnis prüfen
|
## 7) Ergebnis verifizieren
|
||||||
|
|
||||||
Bei `Fertig`:
|
Nach `Fertig`:
|
||||||
|
|
||||||
1. Seite `Historie` öffnen
|
1. `Historie` öffnen.
|
||||||
2. Job in Details öffnen
|
2. Jobdetail prüfen.
|
||||||
3. Output-Pfad, Status und Log prüfen
|
3. Output-Pfad und Log plausibilisieren.
|
||||||
|
|
||||||
## Typische Folgeaktionen
|
Kontrollpunkte:
|
||||||
|
|
||||||
- Falsches OMDb-Match: in `Historie` -> `OMDb neu zuordnen`
|
- finale Datei am erwarteten Template-Pfad
|
||||||
- Neue Encodierung aus RAW: `RAW neu encodieren`
|
- RAW-Ordnerzustand finalisiert (kein `Incomplete_`)
|
||||||
- Prüfung komplett neu aufbauen: `Review neu starten`
|
|
||||||
|
## 8) Typische Folgeaktionen
|
||||||
|
|
||||||
|
- falsche Metadaten: `OMDb neu zuordnen`
|
||||||
|
- andere Trackauswahl: `Review neu starten`
|
||||||
|
- erneuter Encode aus RAW: `RAW neu encodieren`
|
||||||
|
- gleicher Plan erneut: `Encode neu starten`
|
||||||
|
|||||||
+40
-32
@@ -1,60 +1,68 @@
|
|||||||
# Audiobooks
|
# Audiobooks
|
||||||
|
|
||||||
Die Seite `Audiobooks` ist die dedizierte Oberfläche für AAX- und Audiobook-Jobs.
|
Die Seite `Audiobooks` ist der spezialisierte AAX-Workflow.
|
||||||
|
|
||||||
---
|
## Ablaufübersicht
|
||||||
|
|
||||||
## Aufbau
|
Die Oberfläche ist in drei Bereiche gegliedert:
|
||||||
|
|
||||||
1. `Audiobooks Upload`
|
1. `Audiobooks Upload`
|
||||||
2. `Audiobook Jobs`
|
2. `Audiobook Jobs`
|
||||||
3. `Audiobook Output Explorer`
|
3. `Audiobook Output Explorer`
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## 1) Audiobooks Upload
|
## 1) Audiobooks Upload
|
||||||
|
|
||||||
Hier werden AAX-Dateien hochgeladen und als Job vorbereitet.
|
Der Upload verarbeitet ausschließlich AAX-Dateien.
|
||||||
|
|
||||||
Typische Schritte:
|
Direkt nach Upload passieren im Hintergrund:
|
||||||
|
|
||||||
1. Datei auswählen
|
- Probe/Metadatenanalyse (ffprobe)
|
||||||
2. optional Format/Startverhalten setzen
|
- Anlage eines RAW-Ordners per `Audiobook RAW Template`
|
||||||
3. Upload starten
|
- Ablage der AAX-Datei im RAW-Pfad
|
||||||
|
- Initiale Jobkonfiguration (Format, Kapitel, Metadaten)
|
||||||
|
|
||||||
Während des Uploads zeigt die Seite Fortschritt und Status an.
|
Wichtige Parameter:
|
||||||
|
|
||||||
---
|
- Zielformat (`m4b`, `mp3`, `flac`)
|
||||||
|
- optionaler Sofortstart
|
||||||
|
|
||||||
|
Toolabhängigkeit:
|
||||||
|
|
||||||
|
- `ffprobe_command` für Metadaten/Kapitel
|
||||||
|
- `ffmpeg_command` für Encode/Cover-Extraktion
|
||||||
|
|
||||||
## 2) Audiobook Jobs
|
## 2) Audiobook Jobs
|
||||||
|
|
||||||
Aktive Audiobook-Jobs werden als Karten dargestellt (mit Status und Fortschritt).
|
Jobkarten zeigen Zustand, Fortschritt und verfügbare Aktionen.
|
||||||
|
|
||||||
Pro Job sind je nach Zustand Aktionen verfügbar:
|
Typische Aktionen:
|
||||||
|
|
||||||
- Starten (mit aktueller Audiobook-Konfiguration)
|
- `Starten`
|
||||||
- Abbrechen
|
- `Abbrechen`
|
||||||
- Retry
|
- `Retry`
|
||||||
- Löschen
|
- `Löschen`
|
||||||
|
- `Im Ripper` (Kontextwechsel)
|
||||||
|
|
||||||
Zusätzlich:
|
Die Karten werden regelmäßig aktualisiert und durch WebSocket-Ereignisse ergänzt.
|
||||||
|
|
||||||
- `Im Ripper` springt in die Hauptansicht
|
|
||||||
- Jobs laden periodisch nach und reagieren auf WebSocket-Updates
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## 3) Audiobook Output Explorer
|
## 3) Audiobook Output Explorer
|
||||||
|
|
||||||
Read-only Baumansicht des konfigurierten Audiobook-Ausgabeordners:
|
Read-only Explorer des Audiobook-Outputpfads:
|
||||||
|
|
||||||
- Ordner- und Dateiansicht
|
- Ordner-/Dateistruktur
|
||||||
- Größen-/Zeitstempelübersicht
|
- Zeitstempel/Größen
|
||||||
- schnelle Kontrolle der erzeugten Ergebnisse
|
- schnelle Ergebnisprüfung ohne Dateisystemwechsel
|
||||||
|
|
||||||
---
|
## Pfad- und Template-Logik
|
||||||
|
|
||||||
## Abgrenzung zum Converter
|
| Bereich | Gesteuert durch |
|
||||||
|
|---|---|
|
||||||
|
| RAW-Ablage | `raw_dir_audiobook` + `audiobook_raw_template` |
|
||||||
|
| Finale Ausgabe | `movie_dir_audiobook` + `output_template_audiobook` |
|
||||||
|
| Dateiformat | Jobkonfiguration (`m4b`, `mp3`, `flac`) |
|
||||||
|
|
||||||
Audio/Video-Datei-Konvertierung läuft weiterhin auf der Seite `Converter`.
|
## Typische Probleme
|
||||||
Der AAX-spezifische Flow (Upload, Start, Jobsteuerung, Output-Explorer) liegt auf `Audiobooks`.
|
|
||||||
|
- Upload wird abgelehnt: Eingabedatei ist keine AAX-Datei.
|
||||||
|
- Start schlägt fehl: `ffmpeg`/`ffprobe` nicht aufrufbar.
|
||||||
|
- Unerwartete Pfade: Templates enthalten ungültige oder zu generische Platzhalter.
|
||||||
|
|||||||
+75
-52
@@ -1,85 +1,108 @@
|
|||||||
# Converter
|
# Converter
|
||||||
|
|
||||||
Die Converter-Seite ermöglicht das Konvertieren vorhandener Audio- und Video-Dateien.
|
Die Seite `Converter` verarbeitet bereits vorhandene Dateien (Video, Audio, ISO) ohne Laufwerks-Rip.
|
||||||
|
|
||||||
---
|
## Betriebsmodell
|
||||||
|
|
||||||
## Überblick
|
Der Converter arbeitet auf dem Eingangspfad `converter_raw_dir`:
|
||||||
|
|
||||||
Der Converter arbeitet mit einem konfigurierbaren Eingangsordner (`converter_raw_dir`). Dateien werden dort abgelegt (manuell oder per Upload) und dann als Converter-Jobs in die Pipeline eingereiht.
|
- Uploads landen dort
|
||||||
|
- Explorer-Aktionen arbeiten dort
|
||||||
|
- daraus werden Converter-Jobs erstellt
|
||||||
|
|
||||||
---
|
Wichtig:
|
||||||
|
|
||||||
|
- Upload erzeugt nicht automatisch einen Job.
|
||||||
|
- Joberstellung erfolgt explizit über Auswahl im Explorer.
|
||||||
|
|
||||||
## Datei-Explorer
|
## Datei-Explorer
|
||||||
|
|
||||||
Der Datei-Explorer zeigt den Inhalt des `converter_raw_dir` als Baumstruktur.
|
Der Explorer zeigt den kompletten Baum unter `converter_raw_dir`.
|
||||||
|
|
||||||
### Verfügbare Aktionen
|
Aktionen:
|
||||||
|
|
||||||
| Aktion | Beschreibung |
|
| Aktion | Wirkung |
|
||||||
|---|---|
|
|---|---|
|
||||||
| **Upload** | Dateien direkt aus dem Browser hochladen (bis zu 50 Dateien) |
|
| `Upload` | Dateien werden in den Raw-Baum geschrieben |
|
||||||
| **Ordner erstellen** | Neuen Unterordner anlegen |
|
| `Ordner erstellen` | legt Unterordner im Raw-Baum an |
|
||||||
| **Umbenennen** | Datei oder Ordner umbenennen |
|
| `Umbenennen` | benennt Datei/Ordner im Raw-Baum um |
|
||||||
| **Verschieben** | Datei oder Ordner in einen anderen Unterordner verschieben |
|
| `Verschieben` | verschiebt innerhalb des Raw-Baums |
|
||||||
| **Löschen** | Datei oder Ordner löschen (unwiderruflich) |
|
| `Löschen` | entfernt Datei/Ordner dauerhaft |
|
||||||
| **Scannen** | Eingangsordner manuell neu scannen |
|
| `Scannen` | synchronisiert Explorer und DB-Zuordnungen |
|
||||||
|
|
||||||
### Dateiauswahl
|
Upload-Regeln:
|
||||||
|
|
||||||
Dateien können per Checkbox ausgewählt werden. Aus der Auswahl lassen sich Jobs erstellen:
|
- Dateiendung muss in `Erlaubte Datei-Endungen*` enthalten sein
|
||||||
|
- bei Verstoß wird der Upload abgelehnt
|
||||||
|
|
||||||
- **Ein Job pro Datei** — jede Datei wird als eigenständiger Job angelegt
|
## Joberstellung aus Explorer-Auswahl
|
||||||
- **Gemeinsamer Job (Audio)** — mehrere Audio-Dateien werden zu einem gemeinsamen Job zusammengefasst
|
|
||||||
|
|
||||||
Erlaubte Dateiendungen werden in den Settings unter `Converter > Erlaubte Datei-Endungen*` als Checkboxen konfiguriert.
|
Es gibt zwei Audio-Strategien:
|
||||||
|
|
||||||
---
|
1. `Ein Job pro Datei`
|
||||||
|
2. `Gemeinsamer Job (Audio)`
|
||||||
|
|
||||||
## Jobs erstellen und konfigurieren
|
Verhalten:
|
||||||
|
|
||||||
Nach der Auswahl und Job-Erstellung erscheinen die Jobs in der Job-Liste.
|
- Video/ISO werden grundsätzlich als Einzeljobs angelegt.
|
||||||
|
- Audio kann als Shared-Job mit mehreren Eingabedateien erzeugt werden.
|
||||||
|
|
||||||
### Job-Konfiguration
|
Shared-Audio-Job:
|
||||||
|
|
||||||
Jeder Job kann konfiguriert werden:
|
- hält mehrere `inputPaths`
|
||||||
|
- kann vor Start erweitert/reduziert werden (nur Audio-Dateien)
|
||||||
|
|
||||||
- **Medientyp:** Video, Audio oder Audiobook
|
## Job-Konfiguration
|
||||||
- **Ausgabeformat:** z. B. `mkv`, `mp4`, `m4b`, `mp3`, `flac`
|
|
||||||
- **HandBrake-Preset:** für Video-Konvertierung
|
|
||||||
- **Track-Auswahl:** Video-, Audio- und Untertitel-Spuren
|
|
||||||
- **Metadaten:** Titel, Autor, Jahr (für Audiobooks)
|
|
||||||
- **MusicBrainz-Suche:** automatische Metadaten-Suche für Audiodateien
|
|
||||||
|
|
||||||
### Job-Start
|
Vor Start je Job einstellbar:
|
||||||
|
|
||||||
Jobs starten sofort oder reihen sich in die Queue ein (abhängig von `Parallele Jobs`).
|
- `converterMediaType` (`video`, `audio`, `iso`)
|
||||||
|
- `outputFormat`
|
||||||
|
- Metadaten
|
||||||
|
- Track-/Titelwahl (bei video/iso)
|
||||||
|
- Pre-/Post-Encode-Skripte und Ketten
|
||||||
|
|
||||||
---
|
Spezifika:
|
||||||
|
|
||||||
|
- Video/ISO laufen durch Mediainfo/Review ähnlich zum Disc-Flow.
|
||||||
|
- Audio kann direkt mit Formatoptionen konfiguriert werden.
|
||||||
|
|
||||||
|
## Ausgabe-Pfade
|
||||||
|
|
||||||
|
### Video/ISO
|
||||||
|
|
||||||
|
- Root: `converter_movie_dir`
|
||||||
|
- Dateiname: `Output-Template (Video)`
|
||||||
|
- Endung: aus gewähltem Output-Format
|
||||||
|
|
||||||
|
### Audio
|
||||||
|
|
||||||
|
- Root: `converter_audio_dir`
|
||||||
|
- Dateiname/Ordner: `Output-Template (Audio)`
|
||||||
|
- bei Shared-/Folder-Job: Ausgabe als Ordnerstruktur mit Trackdateien
|
||||||
|
|
||||||
|
## Queue und Start
|
||||||
|
|
||||||
|
Converter-Jobs laufen über dieselbe Pipeline-/Queue-Logik:
|
||||||
|
|
||||||
|
- sofortiger Start wenn Limits frei
|
||||||
|
- sonst Queue-Eintrag
|
||||||
|
|
||||||
|
Parallelität richtet sich nach den globalen Encode-Limits in `Settings`.
|
||||||
|
|
||||||
## Auto-Scan (Polling)
|
## Auto-Scan (Polling)
|
||||||
|
|
||||||
Wenn in den Settings `Converter > Auto-Scan (Polling)` aktiviert ist, wird der Eingangsordner automatisch in regelmäßigen Abständen gescannt. Neue Dateien werden in der DB erfasst und im Explorer angezeigt.
|
Mit aktiviertem Polling:
|
||||||
|
|
||||||
Das Scan-Intervall wird unter `Converter > Polling-Intervall (Sekunden)` konfiguriert (Standard: 300 Sekunden).
|
- `converter_raw_dir` wird zyklisch gescannt
|
||||||
|
- neue Dateien erscheinen automatisch im Explorer
|
||||||
|
|
||||||
---
|
Relevante Settings:
|
||||||
|
|
||||||
## Hinweis zu Audiobooks
|
- `Auto-Scan (Polling)`
|
||||||
|
- `Polling-Intervall (Sekunden)`
|
||||||
|
|
||||||
Der dedizierte AAX-/Audiobook-Flow ist auf der Seite [Audiobooks](audiobooks.md) dokumentiert.
|
## Abgrenzung zu Audiobooks
|
||||||
|
|
||||||
---
|
- `Converter`: beliebige Audio/Video/ISO-Dateien
|
||||||
|
- `Audiobooks`: dedizierter AAX-Workflow mit Kapitel-/Audiobook-Metadaten
|
||||||
## Einstellungen
|
|
||||||
|
|
||||||
| Setting | Pfad in GUI |
|
|
||||||
|---|---|
|
|
||||||
| Eingangsordner | `Settings > Pfade > Converter Raw-Ordner` |
|
|
||||||
| Videoausgabe | `Settings > Pfade > Converter Ausgabe (Video)` |
|
|
||||||
| Audioausgabe | `Settings > Pfade > Converter Ausgabe (Audio)` |
|
|
||||||
| Erlaubte Endungen | `Settings > Converter > Erlaubte Datei-Endungen*` |
|
|
||||||
| Auto-Scan | `Settings > Converter > Auto-Scan (Polling)` |
|
|
||||||
| Scan-Intervall | `Settings > Converter > Polling-Intervall (Sekunden)` |
|
|
||||||
| Output-Template Video | `Settings > Pfade > Output-Template (Video)` |
|
|
||||||
| Output-Template Audio | `Settings > Pfade > Output-Template (Audio)` |
|
|
||||||
|
|||||||
+21
-15
@@ -1,29 +1,35 @@
|
|||||||
# Database (Expert)
|
# Database (Expert)
|
||||||
|
|
||||||
`/database` ist eine erweiterte Ansicht für Power-User und Recovery-Fälle.
|
`/database` ist die Recovery- und Expertensicht für Fälle, in denen Dateisystem und Historie nicht mehr sauber zusammenpassen.
|
||||||
|
|
||||||
## Zugriff
|
## Zugriff
|
||||||
|
|
||||||
- Route direkt aufrufen: `/database`
|
- direkte Route: `/database`
|
||||||
- nicht Teil der Standard-Navigation
|
- nicht Teil der Standardnavigation
|
||||||
|
|
||||||
## Bereiche
|
## Bereich `Gefundene RAW-Einträge`
|
||||||
|
|
||||||
### `Gefundene RAW-Einträge`
|
Dieser Bereich listet RAW-Verzeichnisse ohne zugeordneten Historie-Job.
|
||||||
|
|
||||||
Listet RAW-Ordner, die keinen zugehörigen Job-Eintrag haben.
|
|
||||||
|
|
||||||
Aktionen:
|
Aktionen:
|
||||||
|
|
||||||
- `RAW prüfen` (Scan der konfigurierten RAW-Pfade)
|
- `RAW prüfen`: scannt konfigurierte RAW-Wurzeln
|
||||||
- `Job anlegen` (Orphan-RAW in Historie importieren)
|
- `Job anlegen`: erstellt aus einem orphan RAW einen neuen Historie-Job
|
||||||
|
|
||||||
## Typischer Einsatz
|
## Was bei `Job anlegen` passiert
|
||||||
|
|
||||||
- nach manuellen Dateioperationen
|
- RAW-Pfad wird als Importquelle registriert
|
||||||
- nach Migrationen oder Recovery
|
- Job wird in die Historie geschrieben
|
||||||
- wenn RAW-Dateien vorhanden sind, aber kein Historieneintrag existiert
|
- anschließende Analyse läuft als RAW-basierter Einstieg (ohne klassischen Disc-Read)
|
||||||
|
|
||||||
## Vorsicht
|
Typischer Einsatz:
|
||||||
|
|
||||||
Diese Seite erlaubt Eingriffe mit direkter Auswirkung auf Datenbestand und Historie. Vor Lösch- oder Importaktionen Pfade und Zieljob sorgfältig prüfen.
|
- 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.
|
||||||
|
|||||||
+35
-30
@@ -1,53 +1,58 @@
|
|||||||
# Downloads
|
# Downloads
|
||||||
|
|
||||||
Die Downloads-Seite ermöglicht es, Ausgabedateien aus abgeschlossenen Jobs als ZIP-Archiv herunterzuladen.
|
Auf `Downloads` werden ZIP-Archive für Historie-Artefakte erstellt und bereitgestellt.
|
||||||
|
|
||||||
---
|
## Was heruntergeladen werden kann
|
||||||
|
|
||||||
## Überblick
|
Ein Download-Eintrag referenziert immer einen Historie-Job und genau ein Ziel:
|
||||||
|
|
||||||
Jobs, die in der Historie abgeschlossen sind, können in die Download-Queue eingereiht werden. Ripster erstellt daraus ein ZIP-Archiv, das direkt im Browser heruntergeladen werden kann.
|
- `RAW`
|
||||||
|
- `Output`
|
||||||
|
|
||||||
---
|
Erzeugt wird ein ZIP-Archiv im Download-Verzeichnis des Backends.
|
||||||
|
|
||||||
## Download-Queue
|
## Statusmodell
|
||||||
|
|
||||||
Die Queue zeigt alle aktuellen Download-Einträge mit ihrem Status:
|
| Status | Bedeutung |
|
||||||
|
|
||||||
| Status | Beschreibung |
|
|
||||||
|---|---|
|
|---|---|
|
||||||
| **Ausstehend** | In der Queue, ZIP-Erstellung noch nicht gestartet |
|
| `queued` | Eintrag erstellt, wartet auf Verarbeitung |
|
||||||
| **Wird verarbeitet** | ZIP-Archiv wird gerade erstellt |
|
| `processing` | ZIP wird gerade gebaut |
|
||||||
| **Bereit** | ZIP fertig, Download-Button verfügbar |
|
| `ready` | Archiv fertig, Download-Link aktiv |
|
||||||
| **Fehlgeschlagen** | Fehler bei der ZIP-Erstellung |
|
| `failed` | Erzeugung oder Zugriff fehlgeschlagen |
|
||||||
|
|
||||||
---
|
## Eintrag anlegen
|
||||||
|
|
||||||
## Download einreihen
|
Startpunkt ist die `Historie`:
|
||||||
|
|
||||||
Downloads können über die **Historie** eingereiht werden:
|
1. Job öffnen.
|
||||||
|
2. Download einreihen.
|
||||||
|
3. Ziel (`RAW` oder `Output`) wählen.
|
||||||
|
4. Status in `Downloads` verfolgen.
|
||||||
|
|
||||||
1. Job in der Historie öffnen
|
## Wichtige Laufzeitdetails
|
||||||
2. **Download einreihen** wählen
|
|
||||||
3. Ziel auswählen: `RAW-Dateien` oder `Ausgabedateien`
|
|
||||||
4. Den Eintrag in der Downloads-Queue verfolgen
|
|
||||||
|
|
||||||
---
|
- 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 starten
|
## Download auslösen
|
||||||
|
|
||||||
Sobald der Status **Bereit** angezeigt wird, kann die ZIP-Datei mit dem Download-Button heruntergeladen werden.
|
Bei Status `ready`:
|
||||||
|
|
||||||
ZIP-Dateinamen folgen dem Muster: `Job_<id>_<target>.zip`
|
- Download-Button lädt die ZIP direkt aus `/api/downloads/:id/file`.
|
||||||
|
|
||||||
---
|
## Einträge entfernen
|
||||||
|
|
||||||
## Einträge löschen
|
`Löschen` entfernt:
|
||||||
|
|
||||||
Abgeschlossene oder fehlerhafte Einträge können einzeln gelöscht werden. Die dazugehörige ZIP-Datei wird dabei ebenfalls vom Server entfernt.
|
- Queue-Metadaten
|
||||||
|
- zugehörige Archivdatei
|
||||||
|
|
||||||
---
|
Nicht erlaubt:
|
||||||
|
|
||||||
## Echtzeit-Updates
|
- Löschen während `queued`/`processing`
|
||||||
|
|
||||||
Die Downloads-Seite aktualisiert sich automatisch per WebSocket (`DOWNLOADS_UPDATED`). Statusänderungen (z. B. von `Wird verarbeitet` zu `Bereit`) werden ohne Seiten-Reload angezeigt.
|
## Echtzeitaktualisierung
|
||||||
|
|
||||||
|
Die Seite reagiert auf `DOWNLOADS_UPDATED` per WebSocket.
|
||||||
|
Dadurch sind Statuswechsel ohne Reload sichtbar.
|
||||||
|
|||||||
+57
-56
@@ -1,88 +1,89 @@
|
|||||||
# Historie
|
# Historie
|
||||||
|
|
||||||
Die Seite `Historie` ist für Suche, Prüfung und Nachbearbeitung bestehender Jobs.
|
`Historie` ist die Kontroll- und Nachbearbeitungsoberfläche für alle bereits angelegten Jobs.
|
||||||
|
|
||||||
## Hauptansicht
|
## Hauptansicht
|
||||||
|
|
||||||
Filter und Werkzeuge:
|
Filter und Arbeitsmittel:
|
||||||
|
|
||||||
- Suche (Titel/IMDb)
|
- Suche (Titel, IMDb, Kontextbegriffe)
|
||||||
- Status-Filter
|
- Statusfilter
|
||||||
- Medium-Filter (`Blu-ray`, `DVD`, `Sonstiges`)
|
- Mediumfilter
|
||||||
- Sortierung
|
- Sortierung
|
||||||
- Listen-/Grid-Layout
|
- Listen-/Grid-Layout
|
||||||
|
|
||||||
Jeder Eintrag zeigt:
|
Jeder Eintrag zeigt auf einen Blick:
|
||||||
|
|
||||||
- Poster, Titel, Jahr, IMDb
|
- Titel, Jahr, Poster
|
||||||
- Medium-Indikator
|
- Status und Zeitstempel
|
||||||
- Status
|
- RAW-/Output-Verfügbarkeit
|
||||||
- Start/Ende
|
- Medien- und ggf. Containerhinweise
|
||||||
- Verfügbarkeit von RAW/Movie
|
|
||||||
- Ratings (wenn OMDb-Daten vorhanden)
|
|
||||||
|
|
||||||
Klick auf einen Eintrag öffnet die Detailansicht.
|
## Detaildialog: Was dort zusammenläuft
|
||||||
|
|
||||||
---
|
Der Detaildialog bündelt:
|
||||||
|
|
||||||
## Job-Detaildialog
|
- Metadaten (Film oder Serie)
|
||||||
|
- Jobstatus und Fehlertexte
|
||||||
|
- RAW-/Output-Pfade
|
||||||
|
- Encode-Plan und Trackauswahl
|
||||||
|
- ausgeführte Kommandodetails
|
||||||
|
- Prozesslog (`Tail` oder vollständig)
|
||||||
|
|
||||||
Bereiche:
|
Bei Seriencontainern wird disk-/child-orientiert dargestellt, nicht nur als Einzeljob.
|
||||||
|
|
||||||
- Film-Infos + OMDb-Details
|
## Nachbearbeitungsaktionen und Wirkung
|
||||||
- Job-Infos (Status, Pfade, Erfolgsflags, Fehler)
|
|
||||||
- hinterlegte Encode-Auswahl
|
|
||||||
- ausgeführter HandBrake-Befehl
|
|
||||||
- strukturierte JSON-Blöcke (OMDb/MakeMKV/MediaInfo/EncodePlan/HandBrake)
|
|
||||||
- Log-Ladefunktionen (`Tail`, `Vollständig`)
|
|
||||||
|
|
||||||
Bei Serien-Containern zeigt der Dialog statt eines globalen Log-Blocks einen `Disks`-Bereich mit einzelnen Disk-Akkordeons.
|
| Aktion | Typischer Einsatz | Technische Wirkung |
|
||||||
Jede Disk kann dort separat geprüft und bearbeitet werden.
|
|---|---|---|
|
||||||
|
| `OMDb neu zuordnen` | falsches Match, Titel/Jahr korrigieren | Metadatenfelder werden neu geschrieben; Folder-Rename wird best effort angestoßen |
|
||||||
|
| `Review neu starten` | neue Track-/Titelbewertung nötig | Mediainfo/Review wird aus RAW neu aufgebaut |
|
||||||
|
| `RAW neu encodieren` | neuer Encode aus vorhandenem RAW | startet Encode ohne neuen Laufwerks-Rip |
|
||||||
|
| `Encode neu starten` | gleiche bestätigte Auswahl erneut fahren | letzter bestätigter Plan wird geladen, optional mit Bereinigung unvollständiger Ausgabe |
|
||||||
|
| `Retry Rippen` | Rip/Analyse neu anstoßen | neuer Rip-Lauf, inkl. erneuter RAW-Phase |
|
||||||
|
|
||||||
## Typische Aktionen im Detaildialog
|
Löschaktionen im Dialog:
|
||||||
|
|
||||||
- `OMDb neu zuordnen`
|
- `RAW löschen`
|
||||||
- `Encode neu starten`
|
- `Movie löschen`
|
||||||
- `Review neu starten`
|
- `Beides löschen`
|
||||||
- `RAW neu encodieren`
|
|
||||||
- `RAW löschen`, `Movie löschen`, `Beides löschen`
|
|
||||||
- `Historieneintrag löschen`
|
- `Historieneintrag löschen`
|
||||||
- bei Queue-Lock: `Aus Queue löschen`
|
|
||||||
|
|
||||||
Zusätzlich bei Serien-Container-Disks:
|
## Löschvorschau und selektives Löschen
|
||||||
|
|
||||||
- `Im Ripper öffnen` (für `READY_TO_ENCODE`-Kinder)
|
Vor endgültigem Löschen zeigt Ripster eine Vorschau mit:
|
||||||
- diskbezogene Löschaktionen (`RAW`, `Folgen`, `Beides`) mit Child-/Subjob-Scope
|
|
||||||
- diskbezogenes Löschen des Historieneintrags (inkl. Subjobs)
|
|
||||||
|
|
||||||
## Wann welche Aktion?
|
- `RAW`-Kandidaten
|
||||||
|
- `Movie`-/Episoden-Kandidaten
|
||||||
|
- Related-Scope (Container/Kinder/verbundene Jobs)
|
||||||
|
|
||||||
| Ziel | Aktion |
|
Wichtige Punkte:
|
||||||
|---|---|
|
|
||||||
| Metadaten korrigieren | `OMDb neu zuordnen` |
|
|
||||||
| mit gleicher bestätigter Auswahl neu encodieren | `Encode neu starten` |
|
|
||||||
| Titel-/Spurprüfung komplett neu berechnen | `Review neu starten` |
|
|
||||||
| aus vorhandenem RAW erneut encodieren | `RAW neu encodieren` |
|
|
||||||
| Speicher freigeben | Dateilöschaktionen |
|
|
||||||
|
|
||||||
---
|
- Pfade sind selektierbar.
|
||||||
|
- Für RAW-Löschung muss bei Mehrfachkandidaten mindestens ein RAW-Pfad gewählt werden.
|
||||||
|
- Schutzlogik verhindert Löschungen außerhalb erlaubter Root-Verzeichnisse.
|
||||||
|
|
||||||
## Löschen mit Vorschau
|
## Serien- und Multipart-Sicht in der Historie
|
||||||
|
|
||||||
Beim Löschen eines Historieneintrags (`Eintrag löschen`) gibt es eine Pfadvorschau:
|
### Serien
|
||||||
|
|
||||||
- getrennt nach `RAW` und Ausgabe (`Movie`/`Folgen`)
|
- Container zeigt aggregierten Zustand aus Child-Jobs.
|
||||||
- für Serien-/Multipart-Fälle mit Scope auf verknüpfte Jobs
|
- Disk-/Episode-Aktionen können child-spezifisch ausgeführt werden.
|
||||||
- selektierbare Pfade vor dem finalen Löschen
|
- `Im Ripper öffnen` hilft bei `Bereit zum Encodieren`-Kindern.
|
||||||
|
|
||||||
Neu im RAW-Bereich:
|
### Multipart
|
||||||
|
|
||||||
- bei mehreren RAW-Kandidaten kann pro Pfad gewählt werden, was entfernt wird
|
- gemeinsamer Container mit Disc-Childs
|
||||||
- mindestens ein RAW-Pfad muss gewählt sein, wenn RAW-Löschung Teil der Aktion ist
|
- Disc-Nummern bleiben pro Child nachvollziehbar
|
||||||
|
- Delete-Preview kann Related-Pfade gemeinsam auflösen
|
||||||
|
|
||||||
Die Buttons (`Eintrag + nur RAW`, `Eintrag + nur ...`, `Eintrag + RAW + ...`) berücksichtigen die aktuelle Pfadauswahl und deaktivieren sich bei unvollständiger Auswahl.
|
## Logs sinnvoll nutzen
|
||||||
|
|
||||||
## Logs
|
- `Tail laden (800)` für schnellen Fehlerkontext
|
||||||
|
- `Vollständiges Log laden` für forensische Analyse
|
||||||
|
|
||||||
- `Tail laden (800)` für schnelle Fehleranalyse
|
Empfehlung:
|
||||||
- `Vollständiges Log laden` für vollständige Nachverfolgung
|
|
||||||
|
1. Erst Tail prüfen.
|
||||||
|
2. Bei Pfad-/Toolproblemen vollständiges Log laden.
|
||||||
|
3. Danach passende Wiederanlauf-Aktion wählen.
|
||||||
|
|||||||
+25
-23
@@ -1,32 +1,34 @@
|
|||||||
# GUI-Seiten
|
# GUI-Seiten
|
||||||
|
|
||||||
Ripster hat sieben Hauptseiten in der Navigation plus eine Expert-Seite.
|
Dieses Kapitel ist das Bedienhandbuch für die Oberflächen im Alltag.
|
||||||
|
|
||||||
## Seitenüberblick
|
## Seitenüberblick
|
||||||
|
|
||||||
| Seite | Zweck |
|
| Seite | Rolle im Betrieb | Typischer Einsatz |
|
||||||
|---|---|
|
|---|---|---|
|
||||||
| [Jobs](jobs.md) | zentrale Inbox mit allen Jobs (Ripper, Converter, Audiobooks) |
|
| [Jobs](jobs.md) | zentrale Inbox | Gesamtlage prüfen und in Fachseite springen |
|
||||||
| [Ripper](ripper.md) | Live-Betrieb: Pipeline, Queue, Aktivitäten, Disc-Infos |
|
| [Ripper](ripper.md) | Live-Steuerung der Pipeline | Disc-Flow starten, Queue steuern, Review freigeben |
|
||||||
| [Audiobooks](audiobooks.md) | AAX-Upload, Audiobook-Jobsteuerung und Output-Explorer |
|
| [Audiobooks](audiobooks.md) | AAX-Spezialflow | Upload, Konfiguration und Encode von Audiobooks |
|
||||||
| [Settings](settings.md) | Konfiguration, Skripte, Ketten, Presets, Cronjobs |
|
| [Settings](settings.md) | Konfiguration/Automatisierung | Pfade, Tools, Queue-Limits, Skripte, Cron |
|
||||||
| [Historie](history.md) | abgeschlossene/laufende Jobs durchsuchen und nachbearbeiten |
|
| [Historie](history.md) | Nachbearbeitung und Kontrolle | Logs, Re-Encode, Löschvorschau, Recovery-Aktionen |
|
||||||
| [Converter](converter.md) | Audio/Video-Dateien konvertieren, Datei-Explorer, Upload |
|
| [Converter](converter.md) | dateibasierte Konvertierung | Video/Audio/ISO ohne Disc-Rip verarbeiten |
|
||||||
| [Downloads](downloads.md) | Ausgabedateien als ZIP herunterladen |
|
| [Downloads](downloads.md) | ZIP-Exports | RAW/Output aus Historie bereitstellen |
|
||||||
| [Database (Expert)](database.md) | tabellarische Rohsicht inkl. Orphan-RAW-Import |
|
| [Database (Expert)](database.md) | Recovery-Sicht | orphan RAW finden und importieren |
|
||||||
|
|
||||||
## Empfohlene Nutzung im Alltag
|
## Empfohlener Tagesablauf
|
||||||
|
|
||||||
1. **Ersten Überblick über alle Jobs:** `Jobs`
|
1. `Jobs`: Statuslage und Auffälligkeiten prüfen.
|
||||||
2. **Start eines neuen Disc-Jobs:** `Ripper`
|
2. `Ripper` oder `Converter`/`Audiobooks`: neue Arbeit starten.
|
||||||
3. **Audio/Video-Dateien konvertieren:** `Converter`
|
3. `Historie`: Ergebnisse validieren und ggf. nachbearbeiten.
|
||||||
4. **AAX/Audiobook-Flow:** `Audiobooks`
|
4. `Downloads`: Exporte für externe Übergabe erzeugen.
|
||||||
5. **Regeln/Automatisierung anpassen:** `Settings`
|
5. `Settings`: Regeln und Limits nur kontrolliert anpassen.
|
||||||
6. **Ergebnisse prüfen oder Jobs nachbearbeiten:** `Historie`
|
|
||||||
7. **Dateien herunterladen:** `Downloads`
|
|
||||||
8. **Sonderfälle/Recovery:** `Database`
|
|
||||||
|
|
||||||
## Hinweise zur Navigation
|
## Navigation
|
||||||
|
|
||||||
- `Jobs`, `Ripper`, `Converter`, `Audiobooks`, `Settings`, `Historie` und `Downloads` sind direkt in der Kopfnavigation.
|
Direkt in der Top-Navigation:
|
||||||
- `Database` ist als Expert-Route verfügbar: `/database`.
|
|
||||||
|
- `Jobs`, `Ripper`, `Converter`, `Audiobooks`, `Settings`, `Historie`, `Downloads`
|
||||||
|
|
||||||
|
Nur per URL:
|
||||||
|
|
||||||
|
- `Database` unter `/database`
|
||||||
|
|||||||
+23
-25
@@ -1,22 +1,18 @@
|
|||||||
# Jobs
|
# Jobs
|
||||||
|
|
||||||
Die Seite `Jobs` ist die zentrale Inbox über alle Job-Typen.
|
`Jobs` ist die zentrale Inbox über alle Jobarten und dient als schneller Einstieg in den Tagesbetrieb.
|
||||||
|
|
||||||
---
|
## Zweck der Seite
|
||||||
|
|
||||||
## Zweck
|
Die Liste vereinheitlicht:
|
||||||
|
|
||||||
`Jobs` zeigt denselben Datenbestand in einer einheitlichen Liste:
|
- Disc-/Ripper-Jobs
|
||||||
|
- Converter-Jobs
|
||||||
- Ripper-Jobs (Blu-ray/DVD/CD)
|
|
||||||
- Converter-Jobs (Audio/Video/ISO)
|
|
||||||
- Audiobook-Jobs
|
- Audiobook-Jobs
|
||||||
|
|
||||||
Die Seite eignet sich als schneller Einstieg, bevor man in den jeweiligen Fachbereich springt.
|
Dadurch kannst du unabhängig von der Fachseite zuerst den Gesamtzustand prüfen.
|
||||||
|
|
||||||
---
|
## Filterlogik
|
||||||
|
|
||||||
## Filter und Ansicht
|
|
||||||
|
|
||||||
### View-Filter
|
### View-Filter
|
||||||
|
|
||||||
@@ -31,26 +27,28 @@ Die Seite eignet sich als schneller Einstieg, bevor man in den jeweiligen Fachbe
|
|||||||
- `Aktiv`
|
- `Aktiv`
|
||||||
- `Fehler/Abbruch`
|
- `Fehler/Abbruch`
|
||||||
|
|
||||||
Zusätzlich gibt es eine Freitextsuche (Titel, Status, IMDb, Job-Kind etc.) und eine Paginierung.
|
Zusätzlich:
|
||||||
|
|
||||||
---
|
- Freitextsuche
|
||||||
|
- Paginierung
|
||||||
|
|
||||||
## Was ein Eintrag zeigt
|
## Was ein Jobeintrag zeigt
|
||||||
|
|
||||||
- Job-ID und Titel
|
- Job-ID und Titel
|
||||||
- Status-Badge (inkl. Queue-Berücksichtigung)
|
- Statusbadge
|
||||||
- Job-Typ-Badge (z. B. Blu-ray, Converter Audio, Audiobook)
|
- Jobtypbadge (z. B. Blu-ray, DVD, Converter Audio, Audiobook)
|
||||||
- Zeitstempel der letzten Aktualisierung
|
- Aktualisierungszeit
|
||||||
|
|
||||||
Die Liste aktualisiert sich zyklisch automatisch.
|
Die Ansicht wird periodisch aktualisiert und ergänzt sich mit WebSocket-Events.
|
||||||
|
|
||||||
---
|
## Schnellaktion pro Zeile
|
||||||
|
|
||||||
## Aktion
|
- `Im Ripper öffnen` für Disc-/Audiobook-nahe Jobs
|
||||||
|
|
||||||
Pro Eintrag gibt es einen Schnellzugriff:
|
|
||||||
|
|
||||||
- `Im Ripper öffnen` für Disc-/Audiobook-orientierte Jobs
|
|
||||||
- `Im Converter öffnen` für Converter-Jobs
|
- `Im Converter öffnen` für Converter-Jobs
|
||||||
|
|
||||||
So gelangst du mit einem Klick in die passende Detailoberfläche.
|
So kommst du ohne Umwege in die Oberfläche mit den passenden Detailaktionen.
|
||||||
|
|
||||||
|
## Empfohlener Einsatz
|
||||||
|
|
||||||
|
1. In `Jobs` Störungen und Auslastung identifizieren.
|
||||||
|
2. Danach gezielt in `Ripper`, `Converter` oder `Historie` springen.
|
||||||
|
|||||||
+96
-68
@@ -1,8 +1,8 @@
|
|||||||
# Ripper
|
# Ripper
|
||||||
|
|
||||||
Das Ripper ist die **Betriebszentrale** für laufende Jobs.
|
Die Seite `Ripper` ist die Live-Steuerung der Pipeline. Hier laufen Disc-Erkennung, Queue-Steuerung, Review und Encode-Start zusammen.
|
||||||
|
|
||||||
## Aufbau der Seite
|
## Seitenaufbau und Betriebslogik
|
||||||
|
|
||||||
Die Bereiche erscheinen in dieser Reihenfolge:
|
Die Bereiche erscheinen in dieser Reihenfolge:
|
||||||
|
|
||||||
@@ -12,129 +12,157 @@ Die Bereiche erscheinen in dieser Reihenfolge:
|
|||||||
4. `Job Übersicht`
|
4. `Job Übersicht`
|
||||||
5. `Disk-Information`
|
5. `Disk-Information`
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## 1) Hardware Monitoring
|
## 1) Hardware Monitoring
|
||||||
|
|
||||||
Zeigt live:
|
Zeigt kontinuierlich:
|
||||||
|
|
||||||
- CPU (gesamt + optional pro Kern)
|
- CPU / RAM
|
||||||
- RAM
|
- GPU (wenn verfügbar)
|
||||||
- GPU-Auslastung/Temperatur/VRAM
|
- freie Speicherstände konfigurierter Pfade
|
||||||
- freien Speicher in den konfigurierten Pfaden
|
|
||||||
|
|
||||||
Wichtig für den Betrieb:
|
Nutzen im Betrieb:
|
||||||
|
|
||||||
- Hohe Speicherauslastung oder fast volle Zielpfade früh erkennen
|
- Engpässe vor Jobfehlern erkennen
|
||||||
- über `Settings` aktivierbar/deaktivierbar (`Hardware Monitoring aktiviert`)
|
- Pfadfüllstände vor Start großer Batchs prüfen
|
||||||
|
|
||||||
|
Gesteuert über `Settings`:
|
||||||
|
|
||||||
|
- `Hardware Monitoring aktiviert`
|
||||||
|
- `Hardware Monitoring Intervall (ms)`
|
||||||
|
|
||||||
## 2) Job Queue
|
## 2) Job Queue
|
||||||
|
|
||||||
Zwei Spalten:
|
Es gibt zwei operative Zonen:
|
||||||
|
|
||||||
- `Laufende Jobs`
|
- `Laufende Jobs`
|
||||||
- `Warteschlange`
|
- `Warteschlange`
|
||||||
|
|
||||||
Mögliche Aktionen:
|
Mögliche Queue-Einträge:
|
||||||
|
|
||||||
- Queue per Drag-and-Drop umsortieren
|
- Job-Startaktionen (`Start`, `Retry Rippen`, `RAW neu encodieren`, `Encode neu starten`, `Review neu berechnen`, `Audio CD starten`)
|
||||||
- Queue-Job entfernen (`X`)
|
- Nicht-Job-Einträge (`Skript`, `Skriptkette`, `Warten`)
|
||||||
- zusätzliche Queue-Elemente einfügen (`+`):
|
|
||||||
- Skript
|
|
||||||
- Skriptkette
|
|
||||||
- Wartezeit
|
|
||||||
|
|
||||||
Hinweis:
|
Wichtige Regeln:
|
||||||
|
|
||||||
- `Parallel` zeigt den Wert aus `Settings` -> `Parallele Jobs`.
|
- Queue-Reihenfolge ist per Drag-and-Drop änderbar.
|
||||||
|
- `Warten` blockiert nachfolgende Queue-Starts bis kein aktiver Prozess mehr läuft.
|
||||||
|
- `Skript` und `Skriptkette` werden als Queue-Einträge mitgeführt.
|
||||||
|
|
||||||
|
Parallelität kommt aus `Settings`:
|
||||||
|
|
||||||
|
- `Max. parallele Film/Video Encodes`
|
||||||
|
- `Max. parallele Audio CD Jobs`
|
||||||
|
- `Max. Encodes gesamt`
|
||||||
|
- optional `Audio CDs: Queue-Reihenfolge überspringen`
|
||||||
|
|
||||||
## 3) Skript- / Cron-Status
|
## 3) Skript- / Cron-Status
|
||||||
|
|
||||||
Zeigt:
|
Zeigt Runtime-Aktivitäten:
|
||||||
|
|
||||||
- aktive Ausführungen (Skripte, Ketten, Cron)
|
- laufende Skripte
|
||||||
- zuletzt abgeschlossene Ausführungen
|
- laufende Ketten
|
||||||
|
- Cron-Ausführungen
|
||||||
|
- letzte abgeschlossene Aktivitäten
|
||||||
|
|
||||||
Mögliche Aktionen:
|
Aktionen:
|
||||||
|
|
||||||
- laufende Ketten: `Nächster Schritt`
|
- `Nächster Schritt` bei Ketten
|
||||||
- laufende Einträge: `Abbrechen`
|
- `Abbrechen`
|
||||||
- Historie der Aktivitäten: `Liste leeren`
|
- `Liste leeren`
|
||||||
|
|
||||||
## 4) Job Übersicht
|
## 4) Job Übersicht
|
||||||
|
|
||||||
Kompakte Jobliste mit Status, Fortschritt, ETA. Klick auf einen Job klappt die Detailsteuerung auf.
|
Die Jobliste ist der zentrale Arbeitsbereich. Ein Klick öffnet den jeweiligen `Pipeline-Status`.
|
||||||
|
|
||||||
Zusätzliche Kennzeichnungen in der Liste:
|
### Badges und Kontext
|
||||||
|
|
||||||
- `Serien-Container`/`Serien-Disk` für Staffel-Workflows
|
Neben Status/Fortschritt zeigt die Liste je nach Job:
|
||||||
- `Multipart Movie` bei zusammengeführten Film-Discs
|
|
||||||
- Untertitel mit Disc-/Container-Infos (z. B. `Disc 2 | Container #123`)
|
|
||||||
|
|
||||||
Im aufgeklappten Zustand erscheint die Karte `Pipeline-Status` mit allen zustandsabhängigen Aktionen.
|
- Serienkontext (`Serien-Container`, Staffel/Disk)
|
||||||
|
- Multipart-Kontext (`Multipart Movie`, Disc-Nr.)
|
||||||
|
- Queue-/Subjob-Kontext bei Serien-Episoden
|
||||||
|
|
||||||
### Zustandsabhängige Hauptaktionen
|
### Zustandsabhängige Aktionen
|
||||||
|
|
||||||
| Zustand | Typische Aktion |
|
| Zustand | Hauptaktion im Ripper | Ergebnis |
|
||||||
|---|---|
|
|---|---|---|
|
||||||
| `Medium erkannt` / `Bereit` | `Analyse starten` |
|
| `Medium erkannt`, `Bereit` | `Analyse starten` | startet MakeMKV-Analyse |
|
||||||
| `Metadatenauswahl` | `Metadaten öffnen` |
|
| `Metadatenauswahl` | `Metadaten öffnen` | Film/Serie auswählen, Provider festlegen |
|
||||||
| `Warte auf Auswahl` | Playlist wählen und `Playlist übernehmen` |
|
| `Warte auf Auswahl` | Playlist/Titel/RAW-Entscheidung bestätigen | setzt Flow fort zur Prüfung |
|
||||||
| `Startbereit` | `Job starten` |
|
| `Startbereit` | `Job starten` | startet Rip oder RAW-basierte Prüfung |
|
||||||
| `Bereit zum Encodieren` | Tracks/Skripte prüfen, dann `Encoding starten` |
|
| `Bereit zum Encodieren` | `Encoding starten` | startet HandBrake mit bestätigter Auswahl |
|
||||||
| laufend (`Analyse`/`Rippen`/`Encodieren`) | `Abbrechen` |
|
| Laufend (`Analyse`, `Rippen`, `Encodieren`) | `Abbrechen` | setzt Job auf `Abgebrochen` |
|
||||||
| `Fehler` / `Abgebrochen` | `Retry Rippen`, `Disk-Analyse neu starten` |
|
| `Fehler`, `Abgebrochen` | `Retry Rippen` | neuer Rip-Anlauf |
|
||||||
|
|
||||||
Zusätzlich je nach Job:
|
Zusatzaktionen je nach Zustand und Jobtyp:
|
||||||
|
|
||||||
- `Review neu starten`
|
- `Review neu starten`
|
||||||
- `Encode neu starten`
|
- `Encode neu starten`
|
||||||
|
- `RAW neu encodieren`
|
||||||
- `Aus Queue löschen`
|
- `Aus Queue löschen`
|
||||||
|
|
||||||
### Titel-/Spurprüfung (`Bereit zum Encodieren`)
|
### Review-Bereich (`Bereit zum Encodieren`)
|
||||||
|
|
||||||
Im selben Block siehst du:
|
Hier wird die effektive Encode-Entscheidung festgelegt:
|
||||||
|
|
||||||
- Auswahl des Encode-Titels
|
- Titelwahl
|
||||||
- Audio-/Subtitle-Trackauswahl
|
- Audio-/Subtitle-Trackselektion
|
||||||
- User-Preset-Auswahl
|
- User-Preset
|
||||||
- Pre-/Post-Encode-Skripte und Ketten
|
- Pre-/Post-Encode-Skripte und Ketten
|
||||||
- Preview des finalen HandBrakeCLI-Befehls
|
- HandBrake-Kommandovorschau
|
||||||
|
|
||||||
|
Ohne Bestätigung dieses Blocks startet kein produktiver Encode.
|
||||||
|
|
||||||
|
### RAW-Ordnerphasen (sichtbar über Logs/Details)
|
||||||
|
|
||||||
|
Der Ripper arbeitet mit drei RAW-Zuständen:
|
||||||
|
|
||||||
|
- `Incomplete_...` während unvollständigem Rip
|
||||||
|
- `Rip_Complete_...` nach erfolgreich abgeschlossenem Rip, vor Encode
|
||||||
|
- ohne Prefix nach erfolgreichem Encode
|
||||||
|
|
||||||
|
Das ist wichtig für Recovery und Delete-Vorschau.
|
||||||
|
|
||||||
## 5) Disk-Information
|
## 5) Disk-Information
|
||||||
|
|
||||||
Zeigt aktuelles Laufwerk und Disc-Metadaten (`Pfad`, `Modell`, `Disc-Label`, `Mount`).
|
Zeigt aktuelle Laufwerksdaten:
|
||||||
|
|
||||||
|
- Device-Pfad
|
||||||
|
- Modell
|
||||||
|
- Disc-Label / Mount
|
||||||
|
|
||||||
Aktionen:
|
Aktionen:
|
||||||
|
|
||||||
- `Laufwerk neu lesen`
|
- `Laufwerk neu lesen`
|
||||||
- `Disk neu analysieren`
|
- `Disk neu analysieren`
|
||||||
- `Metadaten-Modal öffnen`
|
- Metadaten-Dialog öffnen
|
||||||
|
|
||||||
Hinweis:
|
Hinweis:
|
||||||
|
|
||||||
- `Laufwerk neu lesen` ist nicht mehr an einen festen Pipeline-State gebunden und kann genutzt werden, solange kein Rescan-Request läuft.
|
- `Laufwerk neu lesen` ist nicht mehr an einen festen Pipeline-State gebunden.
|
||||||
|
|
||||||
---
|
## Wichtige Dialoge
|
||||||
|
|
||||||
## Wichtige Dialoge im Ripper
|
|
||||||
|
|
||||||
### Metadaten auswählen
|
### Metadaten auswählen
|
||||||
|
|
||||||
- OMDb-Suche + Ergebnisliste
|
Im Dialog werden Film-/Serienmetadaten bestätigt.
|
||||||
- manuelle Eingabe als Fallback
|
|
||||||
- `Auswahl übernehmen` startet den nächsten Pipeline-Schritt
|
|
||||||
|
|
||||||
Bei Film-Duplikaten in der Historie öffnet sich ein Konfliktdialog:
|
Sonderfälle:
|
||||||
|
|
||||||
- `Übernahme erzwingen`: legt trotzdem einen neuen Job mit denselben Metadaten an
|
- Film-Duplikat: `Übernahme erzwingen` oder `Multipart movie`
|
||||||
- `Multipart movie`: verknüpft bestehenden und neuen Job in einem Multipart-Container (mit separaten Disc-Nummern)
|
- Serie: `Disc-Nummer` ist Pflicht
|
||||||
- `Zurück zur Auswahl`: zurück in die Metadatenliste
|
|
||||||
|
|
||||||
### Abbruch-Bereinigung
|
### Vorhandenes RAW erkannt
|
||||||
|
|
||||||
Nach Abbruch kann Ripster optional fragen, ob erzeugte RAW- oder Movie-Dateien gelöscht werden sollen.
|
Wenn passendes RAW existiert, fordert der Dialog eine explizite Entscheidung:
|
||||||
|
|
||||||
|
- vorhandenes RAW verwenden
|
||||||
|
- RAW verwerfen/löschen und neu rippen
|
||||||
|
|
||||||
### Queue-Eintrag einfügen
|
### Queue-Eintrag einfügen
|
||||||
|
|
||||||
Erstellt gezielt einen Skript-, Ketten- oder Warte-Eintrag an einer bestimmten Queue-Position.
|
Du kannst gezielt ab Position einfügen:
|
||||||
|
|
||||||
|
- Skript
|
||||||
|
- Skriptkette
|
||||||
|
- Wartezeit
|
||||||
|
|||||||
+65
-50
@@ -1,92 +1,107 @@
|
|||||||
# Settings
|
# Settings
|
||||||
|
|
||||||
Die Seite `Settings` steuert Konfiguration und Automatisierung.
|
Die Seite `Settings` steuert alle Betriebsparameter von Ripster: Pfade, Tools, Queue-Limits, Metadatenquellen, Automatisierung.
|
||||||
|
|
||||||
## Tabs im Überblick
|
## Tab-Überblick
|
||||||
|
|
||||||
| Tab | Zweck |
|
| Tab | Hauptzweck |
|
||||||
|---|---|
|
|---|---|
|
||||||
| `Konfiguration` | alle Kernsettings (Pfade, Tools, Monitoring, Metadaten, Queue, Benachrichtigungen) |
|
| `Konfiguration` | globale und profilspezifische Laufzeitsettings |
|
||||||
| `Scripte` | einzelne Bash-Skripte verwalten und testen |
|
| `Scripte` | einzelne Skripte verwalten und testen |
|
||||||
| `Skriptketten` | Sequenzen aus Skript- und Warte-Schritten bauen |
|
| `Skriptketten` | mehrstufige Abläufe aus Skript/Warten |
|
||||||
| `Encode-Presets` | benutzerdefinierte Presets für das Review im Ripper |
|
| `Encode-Presets` | wiederverwendbare HandBrake-Profile für Review |
|
||||||
| `Cronjobs` | zeitgesteuerte Skript-/Kettenausführung |
|
| `Cronjobs` | zeitgesteuerte Ausführung von Skript/Kette |
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Tab `Konfiguration`
|
## Tab `Konfiguration`
|
||||||
|
|
||||||
Wichtiges Bedienmuster:
|
### Bedienprinzip
|
||||||
|
|
||||||
1. Werte ändern
|
1. Werte ändern.
|
||||||
2. `Änderungen speichern`
|
2. `Änderungen speichern`.
|
||||||
3. bei Bedarf `Änderungen verwerfen` oder `Neu laden`
|
3. erst danach sind Werte für neue Aktionen wirksam.
|
||||||
|
|
||||||
Zusätzlich:
|
Zusätzliche Bedienhilfen:
|
||||||
|
|
||||||
- `PushOver Test` sendet eine Testnachricht
|
- `Neu laden` verwirft lokale Formzustände
|
||||||
- Änderungen werden erst nach Speichern wirksam
|
- `Änderungen verwerfen` setzt auf zuletzt gespeicherten Stand
|
||||||
- Tool-Preset-Felder bieten HandBrake-Presetauswahl direkt im Formular
|
- `PushOver Test` validiert Benachrichtigungszugang sofort
|
||||||
|
|
||||||
|
### Was wirkt unmittelbar, was erst bei neuem Job?
|
||||||
|
|
||||||
|
- Queue-/Parallelität wirkt auf neue Queue-Entscheidungen und Pump-Läufe.
|
||||||
|
- Tool-/Pfad-/Template-Änderungen wirken vollständig auf neu gestartete Schritte.
|
||||||
|
- Bereits laufende Prozesse übernehmen Änderungen in der Regel nicht rückwirkend.
|
||||||
|
|
||||||
|
### Welche Bereiche im Alltag kritisch sind
|
||||||
|
|
||||||
|
| Bereich | Kritisch für |
|
||||||
|
|---|---|
|
||||||
|
| `Pfade` | wo RAW, finale Ausgaben, Converter/Audiobook-Dateien landen |
|
||||||
|
| `Tools` | ob Analyze/Rip/Encode ausführbar sind |
|
||||||
|
| `Metadaten` | Film-/Serienzuordnung und Episode-Mapping |
|
||||||
|
| `Queue-Limits` | Durchsatz und Reihenfolgeverhalten |
|
||||||
|
| `Monitoring` | Sichtbarkeit von Last und Speicherengpässen |
|
||||||
|
| `Benachrichtigungen` | PushOver-Ereignisse je Pipelinephase |
|
||||||
|
|
||||||
## Tab `Scripte`
|
## Tab `Scripte`
|
||||||
|
|
||||||
Funktionen:
|
Funktionen:
|
||||||
|
|
||||||
- Skript anlegen, bearbeiten, löschen
|
- anlegen, bearbeiten, löschen
|
||||||
- Skript testen (`Test`)
|
- testen (`Test`)
|
||||||
- Reihenfolge per Drag-and-Drop
|
- sortieren
|
||||||
|
|
||||||
Praxis:
|
Testausführung liefert:
|
||||||
|
|
||||||
- Reihenfolge ist wichtig, weil ausgewählte Skripte später sequentiell abgearbeitet werden.
|
- Exit-Code
|
||||||
- Testresultate zeigen Exit-Code, Dauer und stdout/stderr.
|
- Dauer
|
||||||
|
- stdout/stderr
|
||||||
|
|
||||||
|
Wichtig:
|
||||||
|
|
||||||
|
- Nur erfolgreiche Skripte sollten in produktive Pre-/Post-Listen übernommen werden.
|
||||||
|
|
||||||
## Tab `Skriptketten`
|
## Tab `Skriptketten`
|
||||||
|
|
||||||
Funktionen:
|
Ketten bestehen aus Schritten:
|
||||||
|
|
||||||
- Kette anlegen/bearbeiten/löschen
|
- `Skript`
|
||||||
- Kette testen
|
- `Warten`
|
||||||
- Reihenfolge der Ketten per Drag-and-Drop
|
|
||||||
|
|
||||||
Im Ketten-Editor:
|
Typischer Einsatz:
|
||||||
|
|
||||||
- Bausteine links (`Warten`, vorhandene Skripte)
|
- externe Hooks vor/nach Encode
|
||||||
- Schritte rechts per Klick oder Drag-and-Drop hinzufügen
|
- gestaffelte Abläufe mit Pausen
|
||||||
- Schrittreihenfolge im Canvas ändern
|
|
||||||
|
In der Queue erscheinen Ketten als eigene Einträge und werden dort ausgeführt.
|
||||||
|
|
||||||
## Tab `Encode-Presets`
|
## Tab `Encode-Presets`
|
||||||
|
|
||||||
Ein Preset bündelt:
|
Ein Preset bündelt:
|
||||||
|
|
||||||
- optional HandBrake-Preset (`-Z`)
|
- optionales HandBrake-Preset (`-Z`)
|
||||||
- optionale Extra-Args
|
- optionale Extra-Args
|
||||||
- Medientyp (`Universell`, `Blu-ray`, `DVD`, `Sonstiges`)
|
- Medienziel (Universell/Blu-ray/DVD/Sonstiges)
|
||||||
|
|
||||||
Verwendung:
|
Im Ripper-Review kannst du Presets pro Job auswählen, statt Parameter jedes Mal neu zu setzen.
|
||||||
|
|
||||||
- Diese Presets erscheinen später im Ripper im Review (`Bereit zum Encodieren`).
|
|
||||||
|
|
||||||
## Tab `Cronjobs`
|
## Tab `Cronjobs`
|
||||||
|
|
||||||
Funktionen:
|
Funktionen:
|
||||||
|
|
||||||
- Cronjob anlegen und bearbeiten
|
- Cronjob anlegen und bearbeiten
|
||||||
- Quelle wählen: Skript oder Skriptkette
|
- Quelle wählen (`Skript` oder `Skriptkette`)
|
||||||
- Cron-Ausdruck validieren
|
- Cron-Ausdruck prüfen
|
||||||
- `Jetzt ausführen`
|
- `Jetzt ausführen`
|
||||||
- Logs je Cronjob anzeigen
|
- Job-Logs ansehen
|
||||||
- `Aktiviert` und `Pushover` toggeln
|
- Aktivierung/Pushover toggeln
|
||||||
|
|
||||||
Hilfen:
|
Empfehlung:
|
||||||
|
|
||||||
- Beispiele für Cron-Ausdrücke direkt im Dialog
|
1. Skript/Kette manuell testen.
|
||||||
- Link zu `crontab.guru` im Editor
|
2. Dann Cron aktivieren.
|
||||||
|
3. Erste automatische Läufe aktiv im Runtime-Status kontrollieren.
|
||||||
|
|
||||||
---
|
## Verbindung zur Einstellungsreferenz
|
||||||
|
|
||||||
## Empfehlung für stabile Nutzung
|
Die vollständige Wirkung jeder einzelnen Einstellung steht in [Einstellungsreferenz](../configuration/settings-reference.md).
|
||||||
|
|
||||||
1. Erst `Konfiguration` sauber setzen
|
|
||||||
2. dann Skripte/Ketten testen
|
|
||||||
3. danach Cronjobs aktivieren
|
|
||||||
|
|||||||
+12
-21
@@ -1,33 +1,24 @@
|
|||||||
# Ripster Handbuch
|
# Ripster Handbuch
|
||||||
|
|
||||||
Dieses Dokumentationsset ist als **Benutzerhandbuch** aufgebaut: erst Bedienung und Alltag, dann Technik im Anhang.
|
Diese Dokumentation ist als vollständiges Benutzerhandbuch aufgebaut: tägliche Bedienung zuerst, technische Referenz danach.
|
||||||
|
|
||||||
---
|
## Einstieg in 3 Schritten
|
||||||
|
|
||||||
## Schnellstart in 3 Schritten
|
1. Installation: [Installation](getting-started/installation.md)
|
||||||
|
2. Betriebskonfiguration: [Ersteinrichtung](getting-started/configuration.md)
|
||||||
|
3. erster End-to-End-Lauf: [Erster Lauf](getting-started/quickstart.md)
|
||||||
|
|
||||||
1. Voraussetzungen prüfen und installieren: [Installation](getting-started/installation.md)
|
## Was das Handbuch abdeckt
|
||||||
2. Grundkonfiguration in der UI setzen: [Ersteinrichtung](getting-started/configuration.md)
|
|
||||||
3. Ersten vollständigen Job durchlaufen: [Erster Lauf](getting-started/quickstart.md)
|
|
||||||
|
|
||||||
---
|
- alle GUI-Seiten mit Aktionen und Wirkung
|
||||||
|
- vollständige Workflows für Film, Serie und Multipart
|
||||||
## Was du hier findest
|
- Queue-, Job-, Container- und Recovery-Verhalten
|
||||||
|
- detaillierte Settings-Wirkung inklusive Fallbacks
|
||||||
- **Benutzerhandbuch**
|
|
||||||
- Installation
|
|
||||||
- GUI-Seiten im Detail (`Jobs`, `Ripper`, `Converter`, `Audiobooks`, `Settings`, `Historie`, `Downloads`, `Database`)
|
|
||||||
- typische Arbeitsabläufe aus Anwendersicht
|
|
||||||
- **Technischer Anhang**
|
|
||||||
- vollständige Einstellungsreferenz
|
|
||||||
- Pipeline-/API-/Architekturdetails
|
|
||||||
- Deployment und Tool-Hintergründe
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Empfohlene Lesereihenfolge
|
## Empfohlene Lesereihenfolge
|
||||||
|
|
||||||
1. [Benutzerhandbuch Überblick](getting-started/index.md)
|
1. [Benutzerhandbuch Überblick](getting-started/index.md)
|
||||||
2. [GUI-Seiten](gui/index.md)
|
2. [GUI-Seiten](gui/index.md)
|
||||||
3. [Workflows aus Nutzersicht](workflows/index.md)
|
3. [Workflows aus Nutzersicht](workflows/index.md)
|
||||||
4. Bei Bedarf: [Technischer Anhang](appendix/index.md)
|
4. [Einstellungsreferenz](configuration/settings-reference.md)
|
||||||
|
5. bei Bedarf technischer Tiefgang im [Anhang](appendix/index.md)
|
||||||
|
|||||||
+181
-58
@@ -1,84 +1,207 @@
|
|||||||
# Workflows aus Nutzersicht
|
# Workflows aus Nutzersicht
|
||||||
|
|
||||||
Diese Seite beschreibt typische Abläufe mit den passenden UI-Aktionen.
|
Diese Seite beschreibt die produktiven Abläufe als Handbuch: welche Entscheidung an welcher Stelle fällt, welche Objekte dabei entstehen (Job, Container, Child-Job) und welche Dateien in welchen Ordnern landen.
|
||||||
|
|
||||||
## Workflow 1: Standardlauf (Disc -> fertige Datei)
|
## Gemeinsame Grundlagen
|
||||||
|
|
||||||
1. `Ripper`: Disc einlegen, `Analyse starten`
|
### Statuskette im Normalfall
|
||||||
2. Metadaten im Dialog übernehmen
|
|
||||||
3. bei `Bereit zum Encodieren` Titel/Tracks prüfen
|
|
||||||
4. `Encoding starten`
|
|
||||||
5. Ergebnis in `Historie` kontrollieren
|
|
||||||
|
|
||||||
## Workflow 2: Playlist-Entscheidung bei Blu-ray
|
`Medium erkannt` -> `Analyse` -> `Metadatenauswahl` -> `Startbereit` -> `Rippen` -> `Mediainfo-Pruefung` -> `Bereit zum Encodieren` -> `Encodieren` -> `Fertig`
|
||||||
|
|
||||||
1. Job landet in `Warte auf Auswahl`
|
Abweichungen:
|
||||||
2. im `Pipeline-Status` Playlist-Kandidaten vergleichen
|
|
||||||
3. gewünschte Playlist auswählen
|
|
||||||
4. `Playlist übernehmen`
|
|
||||||
5. danach normal weiter bis `Bereit zum Encodieren`
|
|
||||||
|
|
||||||
## Workflow 3: Mehrere Jobs mit Queue
|
- bei Blu-ray/DVD mit nötiger Playlistwahl: `Mediainfo-Pruefung` -> `Warte auf Auswahl` -> zurück in `Mediainfo-Pruefung`
|
||||||
|
- bei vorhandenem RAW: `Startbereit` springt direkt in Review/Prüfung ohne neuen Laufwerks-Rip
|
||||||
|
- bei Fehler/Abbruch: `Fehler` oder `Abgebrochen` mit Wiederanlauf-Aktionen
|
||||||
|
|
||||||
1. Parallel-Limit in `Settings` über `Parallele Jobs` setzen
|
### Job- und Container-Typen
|
||||||
2. neue Jobs starten; überschüssige Starts gehen in `Job Queue`
|
|
||||||
3. Reihenfolge per Drag-and-Drop anpassen
|
|
||||||
4. bei Bedarf Skript/Kette/Warten als Queue-Eintrag ergänzen
|
|
||||||
|
|
||||||
## Workflow 4: Nachbearbeitung eines bestehenden Jobs
|
| Typ | Zweck | Was enthält der Typ? |
|
||||||
|
|---|---|---|
|
||||||
|
| Normaler Disc-Job | Einzel-Film oder einzelne Disc | RAW-Pfad, Output-Pfad, Logs, Review |
|
||||||
|
| `dvd_series_container` | logischer Serien-Container (pro Serie/Staffel) | Metadatenanker, aggregierter Status über Kinder |
|
||||||
|
| `dvd_series_child` | einzelne Serien-Disc oder Serien-Episode-Job | eigentliche RAW-/Encode-Arbeit |
|
||||||
|
| `multipart_movie_container` | logischer Multipart-Film-Container | Zusammenfassung für mehrere Film-Discs |
|
||||||
|
| `multipart_movie_child` | einzelne Disc innerhalb Multipart-Film | Disc-spezifische RAW-/Encode-Daten |
|
||||||
|
|
||||||
In `Historie` -> Detaildialog:
|
Wichtig:
|
||||||
|
|
||||||
- Metadaten korrigieren: `OMDb neu zuordnen`
|
- Container sind primär Ordnungs- und Statusobjekte.
|
||||||
- gleiche Einstellungen erneut nutzen: `Encode neu starten`
|
- Dateien (RAW/Output) hängen an den Child-Jobs.
|
||||||
- Analyse neu aufbauen: `Review neu starten`
|
|
||||||
- aus RAW erneut encodieren: `RAW neu encodieren`
|
|
||||||
|
|
||||||
## Workflow 5: Automatisierung mit Skripten und Cron
|
## Workflow A: Film (Blu-ray/DVD)
|
||||||
|
|
||||||
1. `Settings` -> `Scripte`: Skripte anlegen und testen
|
### 1) Disc analysieren und Film-Metadaten wählen
|
||||||
2. `Settings` -> `Skriptketten`: Ketten bauen und testen
|
|
||||||
3. im Ripper-Review Pre-/Post-Ausführungen pro Job auswählen
|
|
||||||
4. `Settings` -> `Cronjobs`: zeitgesteuerte Ausführung konfigurieren
|
|
||||||
5. Status im Ripper (`Skript- / Cron-Status`) überwachen
|
|
||||||
|
|
||||||
## Workflow 6: Abbruch und Recovery
|
1. Im `Ripper` `Analyse starten`.
|
||||||
|
2. Im Metadaten-Dialog Film auswählen (OMDb bzw. manuelle Film-Metadaten).
|
||||||
|
3. `Auswahl übernehmen`.
|
||||||
|
|
||||||
### Fall A: Job wurde abgebrochen
|
Wirkung:
|
||||||
|
|
||||||
- im Ripper optional erzeugte RAW/Movie-Datei bereinigen
|
- der Job wird als Film-Workflow geführt
|
||||||
- anschließend je nach Ziel: `Retry Rippen` oder `Disk-Analyse neu starten`
|
- Film-Fingerprint für Duplikaterkennung wird gebildet (IMDb oder Titel/Jahr)
|
||||||
|
|
||||||
### Fall B: Job steht in `Bereit zum Encodieren`, ist aber nicht aktive Session
|
### 2) Duplikatfall entscheiden
|
||||||
|
|
||||||
- in `Historie`: `Im Ripper öffnen`
|
Wenn Film mit gleichem Fingerprint bereits existiert, gibt es zwei Wege:
|
||||||
- im Ripper Review erneut prüfen und starten
|
|
||||||
|
|
||||||
### Fall C: RAW ohne Historieneintrag
|
1. `Übernahme erzwingen` (`allow_new`): neuer unabhängiger Film-Job
|
||||||
|
2. `Multipart movie`: neuer Job wird mit bestehendem Job in einem Multipart-Container verknüpft
|
||||||
|
|
||||||
- `/database` öffnen
|
Bei Multipart gilt:
|
||||||
- Bereich `Gefundene RAW-Einträge`
|
|
||||||
- `Job anlegen`
|
|
||||||
|
|
||||||
## Workflow 7: Duplikat als Multipart Movie zusammenführen
|
- beide Discs brauchen unterschiedliche `Disc-Nummer`
|
||||||
|
- gleiche Disc-Nummer blockiert den Vorgang (`MULTIPART_DISC_ALREADY_EXISTS`)
|
||||||
|
|
||||||
1. `Ripper` -> `Metadaten auswählen` für einen Film-Job
|
### 3) RAW-Verzeichnis entsteht
|
||||||
2. bei Duplikat-Konflikt `Multipart movie` wählen
|
|
||||||
3. Disc-Nummern für bestehenden und neuen Job setzen (jeweils >= 1, unterschiedlich)
|
|
||||||
4. Metadaten übernehmen
|
|
||||||
5. in `Historie` den gemeinsamen Multipart-Container prüfen
|
|
||||||
|
|
||||||
## Workflow 8: Selektives Löschen in der Historie
|
Ordnername basiert auf Metadaten plus Job-ID:
|
||||||
|
|
||||||
1. in `Historie` einen Job öffnen und `Historieneintrag löschen`
|
- `Incomplete_<Titel> (<Jahr>) - RAW - job-<id>`
|
||||||
2. Löschvorschau prüfen (`RAW` + Ausgabe)
|
|
||||||
3. gewünschte RAW-/Ausgabepfade gezielt auswählen
|
|
||||||
4. passende Aktion ausführen (`Eintrag + nur RAW`, `Eintrag + nur ...`, `Eintrag + RAW + ...`)
|
|
||||||
|
|
||||||
## Workflow 9: Audiobook (AAX) verarbeiten
|
Zustandswechsel des RAW-Ordners:
|
||||||
|
|
||||||
1. Seite `Audiobooks` öffnen
|
- beim Start: `Incomplete_...`
|
||||||
2. AAX-Datei hochladen
|
- nach erfolgreichem Rip: `Rip_Complete_...`
|
||||||
3. Job-Konfiguration prüfen und starten
|
- nach erfolgreichem Encode: Prefix wird entfernt (final)
|
||||||
4. Fortschritt im Job-Panel verfolgen
|
|
||||||
5. Ergebnis im `Audiobook Output Explorer` und in der `Historie` prüfen
|
### 4) Review und Encode
|
||||||
|
|
||||||
|
In `Bereit zum Encodieren`:
|
||||||
|
|
||||||
|
- Titel wählen
|
||||||
|
- Audio-/Subtitle-Spuren festlegen
|
||||||
|
- optional User-Preset
|
||||||
|
- optional Pre-/Post-Encode-Skripte oder Ketten
|
||||||
|
|
||||||
|
Beim Start:
|
||||||
|
|
||||||
|
- temporäre Ausgabe in `Incomplete_job-<id>/<Datei>.<ext>`
|
||||||
|
- nach Erfolg Verschiebung in finalen Zielpfad aus Film-Template
|
||||||
|
|
||||||
|
## Workflow B: Serie (Blu-ray/DVD)
|
||||||
|
|
||||||
|
### 1) Serienmodus aktivieren
|
||||||
|
|
||||||
|
1. Disc analysieren.
|
||||||
|
2. Im Metadaten-Dialog Serienmetadaten wählen (TMDb-basiert).
|
||||||
|
3. `Disc-Nummer` setzen (Pflicht, ab 1).
|
||||||
|
|
||||||
|
Wirkung:
|
||||||
|
|
||||||
|
- Workflow-Kind wird `series`
|
||||||
|
- Seriencontainer wird gesucht/angelegt
|
||||||
|
- aktueller Job wird als `dvd_series_child` darunter geführt
|
||||||
|
|
||||||
|
### 2) Seriencontainer und Disc-Konflikte
|
||||||
|
|
||||||
|
Beim Speichern wird geprüft:
|
||||||
|
|
||||||
|
- existiert für Serie/Staffel bereits ein Container?
|
||||||
|
- existiert in diesem Container bereits dieselbe `Disc-Nummer`?
|
||||||
|
|
||||||
|
Wenn ja, wird blockiert (`SERIES_DISC_ALREADY_EXISTS`).
|
||||||
|
|
||||||
|
### 3) Serien-RAW-Pfad
|
||||||
|
|
||||||
|
Für Serien wird ein eigener RAW-Pfad bevorzugt:
|
||||||
|
|
||||||
|
- Blu-ray: `raw_dir_bluray_series` (Fallback: `raw_dir_bluray`)
|
||||||
|
- DVD: `raw_dir_dvd_series` (Fallback: `raw_dir_dvd`)
|
||||||
|
|
||||||
|
RAW-Namensbasis enthält Staffel/Disc (`SxDy`) und wird ebenfalls mit den Prefix-Phasen geführt:
|
||||||
|
|
||||||
|
- `Incomplete_...` -> `Rip_Complete_...` -> final
|
||||||
|
|
||||||
|
### 4) Serien-Review und Episoden-Ausgabe
|
||||||
|
|
||||||
|
Beim Review werden Episoden-/Titelzuordnungen genutzt. Je nach Auswahl:
|
||||||
|
|
||||||
|
- Einzel-Episode: Episode-Template
|
||||||
|
- Multi-Episode-Titel: Multi-Episode-Template
|
||||||
|
|
||||||
|
Ausgabepfad:
|
||||||
|
|
||||||
|
- Root: `series_dir_*` (Fallback auf `movie_dir_*`)
|
||||||
|
- Dateiname/Unterordner aus Serien-Template
|
||||||
|
|
||||||
|
### 5) Multi-Episode-Disc als Batch
|
||||||
|
|
||||||
|
Wenn mehrere Episoden-Titel aus einer Disc encodiert werden:
|
||||||
|
|
||||||
|
- Ripster erzeugt Episode-Child-Jobs
|
||||||
|
- der ursprüngliche Disc-Job dient als Batch-Anker
|
||||||
|
- RAW-Finalisierung erfolgt erst, wenn alle Episode-Encodes abgeschlossen sind
|
||||||
|
|
||||||
|
## Workflow C: Multipart-Film
|
||||||
|
|
||||||
|
### Wann dieser Flow gedacht ist
|
||||||
|
|
||||||
|
- gleicher Film auf mehreren Discs (z. B. Disc 1/Disc 2)
|
||||||
|
- Zusammengehörigkeit soll in Historie und Detailansichten sichtbar sein
|
||||||
|
|
||||||
|
### Ablauf
|
||||||
|
|
||||||
|
1. Film-Metadaten wählen.
|
||||||
|
2. Duplikatdialog -> `Multipart movie`.
|
||||||
|
3. Disc-Nummern für bestehenden und neuen Job festlegen.
|
||||||
|
|
||||||
|
Wirkung:
|
||||||
|
|
||||||
|
- `multipart_movie_container` wird angelegt oder wiederverwendet
|
||||||
|
- beteiligte Jobs werden `multipart_movie_child`
|
||||||
|
- Container führt gemeinsame Metadaten, Kinder führen je Disc die eigentlichen Artefakte
|
||||||
|
|
||||||
|
## Workflow D: Vorhandenes RAW / RAW-Import
|
||||||
|
|
||||||
|
### Fall 1: RAW bereits vorhanden bei Metadatenübernahme
|
||||||
|
|
||||||
|
Nach Metadaten-Übernahme erkennt Ripster passende RAW-Ordner und setzt den Job auf Entscheidungsstatus.
|
||||||
|
|
||||||
|
Möglichkeiten:
|
||||||
|
|
||||||
|
- vorhandenes RAW weiterverwenden (kein neuer Rip)
|
||||||
|
- RAW löschen/ignorieren und neu rippen
|
||||||
|
|
||||||
|
### Fall 2: Orphan-RAW aus `/database`
|
||||||
|
|
||||||
|
1. In `Database` `RAW prüfen`.
|
||||||
|
2. Bei orphan RAW `Job anlegen`.
|
||||||
|
3. Job wird in Historie erzeugt und wie "Disk analysieren aus RAW" weiterverarbeitet.
|
||||||
|
|
||||||
|
## Workflow E: Nachbearbeitung bestehender Jobs
|
||||||
|
|
||||||
|
In `Historie` (Detaildialog):
|
||||||
|
|
||||||
|
| Aktion | Wirkung |
|
||||||
|
|---|---|
|
||||||
|
| `OMDb neu zuordnen` | Metadaten neu schreiben, Folder-Rename wird best effort angestoßen |
|
||||||
|
| `Review neu starten` | Titel-/Spurprüfung aus aktuellem RAW neu aufbauen |
|
||||||
|
| `RAW neu encodieren` | Encode erneut aus vorhandenem RAW starten |
|
||||||
|
| `Encode neu starten` | letzte bestätigte Review-Einstellungen wiederverwenden |
|
||||||
|
| `Retry Rippen` | Rip/Analyse neu starten; alter Job-RAW kann bereinigt werden |
|
||||||
|
|
||||||
|
## Wo landet was? (Artefakt-Matrix)
|
||||||
|
|
||||||
|
| Artefakt | Film | Serie | Multipart |
|
||||||
|
|---|---|---|---|
|
||||||
|
| RAW | `raw_dir_*` | bevorzugt `raw_dir_*_series` | pro Child-Job im normalen Film-RAW-Schema |
|
||||||
|
| Finale Ausgabe | `movie_dir_*` + Film-Template | `series_dir_*` (Fallback `movie_dir_*`) + Serien-Templates | pro Child-Job normaler Film-Output |
|
||||||
|
| Container-Datensatz | nein | ja (`dvd_series_container`) | ja (`multipart_movie_container`) |
|
||||||
|
| Löschvorschau in Historie | einzelner Job oder Related Scope | Container-/Child-bezogen mit Pfadauswahl | Container-/Child-bezogen mit Pfadauswahl |
|
||||||
|
|
||||||
|
## Queue-Verhalten im Alltag
|
||||||
|
|
||||||
|
Die Startfreigabe hängt an vier Settings:
|
||||||
|
|
||||||
|
- `Max. parallele Film/Video Encodes`
|
||||||
|
- `Max. parallele Audio CD Jobs`
|
||||||
|
- `Max. Encodes gesamt`
|
||||||
|
- `Audio CDs: Queue-Reihenfolge überspringen`
|
||||||
|
|
||||||
|
Praxis:
|
||||||
|
|
||||||
|
- Film/Video- und Audio/CD laufen in getrennten Lanes
|
||||||
|
- Gesamtlimit begrenzt beide gemeinsam
|
||||||
|
- Queue kann neben Jobs auch `Skript`, `Kette`, `Warten` enthalten
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user