Git Repository
Mini Video Library
Mini Video Library scannt lokale Medienordner, verwaltet Metadaten und Vorschaubilder und streamt kompatible Videos direkt per HTTP an den Browser.
HTTPS
https://zanvex.de/git/mini-video-library.gitREADME.md
# Mini Video Library
Eine schlanke, vollständig lokale Video-Bibliothek in Go. Sie scannt Ordner mit `ffprobe`, erzeugt Vorschaubilder mit `ffmpeg` und streamt Dateien per HTTP Range direkt an den Browser. Oberfläche und Metadaten bleiben auf dem eigenen Rechner; ein Cloud-Konto ist nicht erforderlich.
## Start
Voraussetzung für den Start aus dem Quellcode: Go 1.26+. `ffmpeg` und `ffprobe` müssen entweder im `PATH` liegen oder über frei konfigurierbare Pfade erreichbar sein. Unter Windows kann die Anwendung beide Programme in den Einstellungen automatisch nach `./ffmpeg` herunterladen und sofort aktivieren.
```sh
go run ./cmd/video-library
```
Danach `http://localhost:8080/settings` öffnen, mindestens einen Bibliotheksordner eintragen und den Scan starten. Die beim ersten Start erzeugte `config.toml` enthält alle Optionen.
```sh
go run ./cmd/video-library -scan # nur scannen
go test ./... # Tests
```
Videos und Metadaten bleiben lokal. Browser spielen kompatible Codecs direkt ab; Transcoding und Remuxing sind bewusst noch nicht Bestandteil dieses MVPs.
## Release bauen
Das PowerShell-Skript erzeugt ZIP-Archive und eine `SHA256SUMS.txt` unter `dist/`. Ohne `-Targets` versucht es alle von der lokalen Go-Installation angebotenen Plattformen; für einen gezielten Build:
```powershell
./scripts/build.ps1 -Targets windows/amd64,linux/amd64
./scripts/build.ps1 -Targets windows/amd64 -Version 1.0.0
```
`dist/`, lokale Programmdateien, Laufzeitdaten und ein automatisch installiertes `ffmpeg/` werden von Git ignoriert und können jederzeit neu erzeugt werden.
## Funktionen
- sichere parallele Scans mit Fortschritt, ETA, Abbruch und vollständigem Rescan
- Schutz vor Datenverlust, wenn ein Bibliothekslaufwerk nicht erreichbar ist
- Problemdateien mit ffprobe-Diagnose, Ausblenden und gezielter Wiederholung
- Suche, Filter, Seitennavigation, Favoriten und Wiedergabestatus
- Smart Collections für angefangene, neue, ungesehene und favorisierte Videos sowie Episoden, 4K-Inhalte und fehlende Cover
- Erkennung von Serienfolgen aus Dateinamen und Wiedergabe externer SRT-/VTT-Untertitel
- bearbeitbare Titel, Tags und Beschreibungen sowie erneuerbare Thumbnails
- Audio-/Untertitelübersicht und Browser-Kompatibilitätshinweis
- Medienprüfung, Statistiken und Hash-basierte Duplikaterkennung
- Live-Logs in der Weboberfläche und rotierende Dateien unter `data/logs`
- deutsche und englische Oberfläche sowie installierbare Themes
- drei gebündelte Plugins: AniDB/TMDB, NFO lesen/schreiben und Metadaten-Editor
## Themes
Im Repository liegen sechs mitgelieferte Theme-ZIPs unter `themes/`. Eigene Themes können in den Einstellungen installiert werden; Aufbau, erlaubte Dateitypen und Größenlimits beschreibt [docs/themes.md](docs/themes.md).
## Plugins
Der Online-Metadaten-Cache liegt dauerhaft in SQLite. TMDB-Suchergebnisse werden 30 Tage, AniDB-Datensätze entsprechend der strengen API-Regeln mindestens einen Tag wiederverwendet. Zugangsdaten werden lokal in `plugin_settings` gespeichert. Für TMDB ist ein Read Access Token nötig; AniDB benötigt einen dort registrierten Clientnamen und eine Clientversion.
NFO-Dateien werden neben dem Video abgelegt (`Film.mp4` → `Film.nfo`). Lesen oder Schreiben geschieht nur nach einer ausdrücklichen Aktion. Der Bibliotheksexport zeigt vorher eine Bestätigung und überschreibt danach vorhandene NFO-Dateien.
Direct Play wird bevorzugt. Remuxing und Transcoding sind weiterhin bewusst getrennte spätere Player-Stufen, da sie Ressourcenverwaltung, Abbruch und Cache-Bereinigung benötigen.
## Lizenz
Mini Video Library steht unter der [MIT-Lizenz](LICENSE).