LLM-Parser-Tests, check-Befehl und Cover-Doku

tests/test_llm_parser.py: 13 Tests für _call_ollama, _call_openai_compatible
  und parse_tracklist (Retry-Logik, Markdown-Block, Track-Artist, Mock)

cli: neuer check-Befehl zeigt Tags und Cover-Status aller Audiodateien;
  ♪ markiert Dateien mit eingebettetem Cover

BEDIENUNGSANLEITUNG: neuer Abschnitt 7 (check-Befehl), Cover-Konvention
  (frontcover.jpg/backcover.jpg, Embedding, 500px) in Schritt 3

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
Dieter Schlüter 2026-02-18 00:45:49 +01:00
commit 88b89fbb50
3 changed files with 261 additions and 4 deletions

View file

@ -10,8 +10,9 @@
4. [Schritt 1: CDs rippen](#4-schritt-1-cds-rippen)
5. [Schritt 2: Album-Metadaten ermitteln](#5-schritt-2-album-metadaten-ermitteln)
6. [Schritt 3: Dateien organisieren und taggen](#6-schritt-3-dateien-organisieren-und-taggen)
7. [Komplett-Pipeline](#7-komplett-pipeline)
8. [Tipps und Hinweise](#8-tipps-und-hinweise)
7. [Tags und Cover prüfen](#7-tags-und-cover-prüfen)
8. [Komplett-Pipeline](#8-komplett-pipeline)
9. [Tipps und Hinweise](#9-tipps-und-hinweise)
---
@ -299,6 +300,19 @@ Ergebnis:
| `--back back.jpg` | Rückseiten-Bild |
| `--dry-run` | Nur anzeigen, nichts ändern |
### Cover-Konvention
Im Album-Verzeichnis werden folgende Dateinamen erwartet:
| Datei | Zweck |
|-------|-------|
| `frontcover.jpg` oder `frontcover.png` | Front-Cover |
| `backcover.jpg` oder `backcover.png` | Rückseiten-Cover |
Symbolische Links auf diese Namen sind erlaubt. `apply` kopiert die mit `--front`/`--back` angegebenen Bilder automatisch als `frontcover.jpg` bzw. `backcover.jpg` ins Album-Verzeichnis und bettet das Frontcover anschließend in alle Audio-Dateien ein (skaliert auf max. 500 px).
Ist bereits ein `frontcover.*` vorhanden (z.B. bei erneutem `apply`), wird es ohne `--front`-Option verwendet.
### Dateinamen-Schema
```
@ -314,7 +328,35 @@ Beispiel: `01_-_Allegro_con_brio_-_Karajan.flac`
---
## 7. Komplett-Pipeline
## 7. Tags und Cover prüfen
Nach `apply` lässt sich der Zustand aller Dateien mit einem Befehl prüfen:
```bash
musiksammlung check ~/rip/Beethoven_Sinfonien
```
Ausgabe:
```
Verzeichnis: ~/rip/Beethoven_Sinfonien
frontcover: frontcover.jpg
backcover: backcover.jpg
CD1/
[♪] 01_-_Allegro_con_brio_-_Karajan.flac
Titel: Allegro con brio
Künstler: Karajan | AlbumArtist: Karajan
Album: Beethoven Sinfonien | Jahr: 1963
Track: 1/4 | Disc: 1
...
```
`[♪]` zeigt an, dass ein Cover eingebettet ist. `[ ]` bedeutet kein eingebettetes Cover.
---
## 8. Komplett-Pipeline
Für einfache Fälle (alles in einem Schritt):
@ -324,7 +366,7 @@ musiksammlung process temp/Album/CD1 ~/Musik --back back.jpg
---
## 8. Tipps und Hinweise
## 9. Tipps und Hinweise
**CDDB-Lookup schlägt fehl?**
- Internetverbindung prüfen