Bibliothek befüllen
Es gibt vier Wege, Musik in Tunetorch zu bekommen. Du kannst sie beliebig kombinieren, zum Beispiel erst eine bestehende Sammlung importieren und danach weiter hochladen.
| Weg | Wofür | Wo liegen die Dateien danach? |
|---|---|---|
| Upload | Für den Alltag: einzelne Alben oder Ordner vom Rechner. | In Tunetorchs Verwaltung (/app/data/audio). |
| Sammlungs-Import | Für den einmaligen Umzug einer bestehenden Sammlung. | Als Kopie in Tunetorchs Verwaltung. Das Original bleibt unverändert. |
| CD rippen | Für CDs aus dem Regal, mit einem Laufwerk am Server. | Als FLAC (oder verlustbehaftet) in Tunetorchs Verwaltung. |
| Bibliothek-Scan | Für einen Musikordner, der bleiben soll, wo er ist. | Am ursprünglichen Ort. Tunetorch liest nur. |
Upload
Hochladen dürfen Konten mit dem Recht Audio hochladen und natürlich Admins. Du findest den Upload unter Hochladen im Profil-Menü. Auf derselben Seite steht darunter der Knopf Datenbank importieren, mit dem du eine mitgebrachte Tunetorch-Datenbank einliest (siehe „Export & Import"). Deshalb heißt der Eintrag „Hochladen" und nicht „Audio hochladen".
- Dateien oder ganze Ordner per Drag & Drop in den Upload-Bereich ziehen.
- Tunetorch sortiert sie in eine Album-Tabelle und liest die vorhandenen Tags aus.
- Metadaten in der Tabelle korrigieren: Interpret, Album-Interpret, Album, Titel, Jahr, Genre, Track- und CD-Nummer, Komponist. Ein Album-Cover setzt du für die ganze Gruppe auf einmal.
- Übernehmen: Tunetorch schreibt die Titel in die Datenbank.
Ein Upload ist eine Sitzung. Du kannst sie schließen und später weiterbearbeiten. Die Übernahme in die Datenbank läuft im Hintergrund mit Fortschrittsanzeige, die App darfst du dabei ruhig schließen.
Wird die Übernahme doch einmal unterbrochen (etwa durch einen Neustart des Servers), zeigt die Sitzung Unterbrochen an. Schon übernommene Titel bleiben in der Bibliothek. Der Server macht von selbst weiter, beim nächsten Start und danach in regelmäßigen Abständen auch im laufenden Betrieb. Mit Fortsetzen stößt du es sofort an. Doppelte Titel entstehen dabei nicht.
Tags aus den Dateinamen
Tunetorch liest beim Hochladen Tags aus zwei Quellen: aus den Metadaten der Datei
(TT_TAGS, geschrieben von einem Tunetorch-Export) und aus eckigen Klammern in Datei- und
Ordnernamen.
Philip Sayce/2016 - Scorched Earth, Vol.1 [Live]/01 - Powerful Thing [Live].flac
Was am Album-Ordner steht, gilt für das Album. Was am Dateinamen steht, gilt für den Titel. Haben alle Titel eines Albums denselben Tag, wird daraus ein Album-Tag statt zwölf gleicher Titel-Tags. So kommt ein Export genau so wieder herein, wie er hinausgegangen ist (siehe Export & Import).
Gelesen wird nur, was am Ende des Namens steht. „Live at Wembley [1985] Remaster" behält seine Klammer. Sonst würde der Upload jeden Namen zerlegen, in dem irgendwo eine Klammer vorkommt.
Unbekannte Namen werden nicht einfach angelegt. Steht in der Klammer etwas, das es in deiner Bibliothek noch nicht als Tag gibt, fragt der Upload-Editor nach. Du bekommst eine Liste der Funde mit je einem Häkchen. Was du anhakst, wird als neuer Tag angelegt und zugewiesen. Was du nicht anhakst, bleibt in eckigen Klammern Teil des Titel- oder Albumnamens. Vorausgewählt ist nichts, damit „[Deluxe Edition]" nicht ungefragt zum Tag wird. Trägt der Name die Klammer schon, weil der Ordner genauso heißt wie das Album, wird sie nicht ein zweites Mal angehängt.
Tags schon beim Hochladen setzen
Tags kannst du direkt im Upload-Editor vergeben. Du musst nicht erst übernehmen und danach in den Metadaten-Editor wechseln:
- Pro Titel: unter dem Titelfeld, mit demselben Tag-Editor wie in der Bibliothek.
- Fürs ganze Album: oben im Album-Kopf neben der Titelzahl. Der Tag gilt dann für alle Titel des Albums.
Du wählst aus den vorhandenen Tags deiner Bibliothek. Neue Tags anlegen kann hier nur der Admin (in den Server-Einstellungen), oder du bestätigst einen Fund aus den eckigen Klammern (siehe oben). Album-Tags stehen nur einmal im Album-Kopf und nicht in jeder der zwölf Zeilen. Im Auswahlmenü der einzelnen Zeilen fehlen sie, damit derselbe Tag nicht zweimal am selben Titel landet.
Was du selbst gesetzt hast, ändert Tunetorch nicht. Die Regel „ein Tag an allen Titeln wird zum Album-Tag" gilt nur für automatisch erkannte Tags. Sobald du in einem Album selbst Tags gesetzt hast, bleiben sie genau dort, wo du sie hingesetzt hast.
Eine Tunetorch-Datenbank im Ordner
Liegt im hochgeladenen Ordner eine .ttdbl oder .ttdb (beim Export landet sie
normalerweise neben der Musik), lädt Tunetorch sie nicht als Audio hoch. Das gäbe nur
eine Fehlermeldung. Stattdessen bietet es sie an: „Im hochgeladenen Ordner liegt eine
Tunetorch-Datenbank … Jetzt importieren". Der Knopf öffnet den Import-Assistenten mit
dieser Datei, du musst sie nicht noch einmal heraussuchen.
Der Import ist ein eigener Schritt mit eigener Rückfrage. Er schreibt Biografien, Bilder und Besetzungen, und das soll nicht nebenbei bei einem Audio-Upload passieren.
Vor dem Hochladen prüft der Server, ob genug Speicherplatz für die Datei frei ist. Nach einem erfolgreichen Import löscht er die hochgeladene Datei wieder; der Bericht bleibt. Ist dabei ein Titel gescheitert, bleibt sie für einen weiteren Anlauf liegen, bis du die Sitzung schließt.
Metadaten-Normalisierung
Im Upload-Editor gibt es einen Schalter für die Normalisierung. Sie schreibt jedes Wort
groß und entfernt Zeichen, die in Dateinamen Probleme machen (\ / : * ? " < > |). Welche
Regeln für welches Feld gelten, legt der Admin unter Server-Einstellungen → Metadaten
normalisieren fest, getrennt für Interpret, Album-Interpret, Titel, Album und Genre.
Zwei Korrekturen gehören zu keiner Regel und gelten deshalb immer: Doppelte Leerzeichen und
Leerzeichen am Anfang oder Ende fallen weg, und ein Akzent statt Apostroph (´ oder `,
typisch für Sampler-Rips) wird zum '. Ein typografisches ’ bleibt, wie es ist. Beim
Übernehmen in die Bibliothek entfernt Tunetorch überzählige Leerzeichen auch dann, wenn der
Schalter aus ist — sonst stünde „Tabaluga “ als zweiter Interpret neben „Tabaluga“.
Aus demselben Grund legt Tunetorch keinen zweiten Interpreten an, wenn es den Namen schon in genau einer anderen Schreibweise gibt: „Lmfao“ landet bei „LMFAO“, „Celine Dion“ bei „Céline Dion“, „Simon and Garfunkel“ bei „Simon & Garfunkel“. Verglichen wird ohne Groß- und Kleinschreibung, Akzente, Apostrophe und Satzzeichen. Passen mehrere Einträge, wird nicht geraten, und es entsteht ein neuer. Das gilt genauso beim Sammlungs-Import, beim CD-Rippen und beim Scannen.
Dieselben Regeln nutzt später der Metadaten-Assistent, um Abweichungen in der bestehenden Bibliothek zu finden (er gehört zu Pro). Die Regeln selbst gelten immer, beim Upload also auch ohne Abo.
Konvertierung beim Upload
Bei verlustfreien Rohformaten (wav, aiff) fragt der Upload in einem Auswahlfeld nach:
unverändert übernehmen, nach FLAC (verlustfrei, deutlich kleiner) oder nach Opus
umwandeln. FLAC-Dateien werden immer unverändert übernommen, da gibt es nichts zu gewinnen.
Beim Übernehmen entfernt Tunetorch die Tags aus der Datei und führt die Metadaten in seiner Datenbank. Zusätzlich legt es neben jeder Originaldatei eine Metadaten-Sicherung als Textdatei ab, als Rückversicherung für den Notfall.
Sammlungs-Import
Das ist der bequemste Weg, wenn du schon eine große, gepflegte Sammlung hast.
Häng sie beim Einrichten schreibgeschützt ein:
volumes:
- ./tunetorch-daten:/app/data
- /pfad/zu/deiner/sammlung:/app/import:ro
Solange dieser Ordner eingehängt ist, erscheint ganz oben in den Server-Einstellungen eine Import-Box. Ein Klick übernimmt alle gefundenen Audiodateien in Tunetorchs Verwaltung: Die Dateien werden ins Datenverzeichnis kopiert, die Tags bereinigt, Interpret, Album, Titel und Cover aus den Tags angelegt und die Lautheit gemessen.
So verhält sich der Import:
- Er läuft im Hintergrund mit Fortschrittsanzeige. Die Bibliothek füllt sich nach und nach, nicht erst am Ende auf einmal.
- Er setzt sich von selbst fort. Er speichert Datei für Datei. Wird er unterbrochen (Neustart, Absturz), nimmt der Server ihn automatisch wieder auf, beim nächsten Start und danach alle paar Minuten auch im laufenden Betrieb. Er macht dort weiter, wo er aufgehört hat. Mit Fortsetzen in der Import-Box stößt du ihn sofort wieder an. Doppelte Titel entstehen dabei nicht.
- Er lässt den Papierkorb liegen. Versteckte Ordner und Systemablagen werden übersprungen,
auch der Papierkorb des eingehängten Datenträgers (
.Trash-1000unter Linux,$RECYCLE.BINunter Windows,__MACOSXaus entpackten Archiven). Was du dort einmal aussortiert hast, taucht also nicht als Neuzugang wieder auf. - Er verträgt Fehler. Defekte Dateien werden übersprungen und mit Grund aufgelistet.
- Er sagt Bescheid, wenn er nicht hineinsehen darf. Ein eingehängter Ordner ist nicht automatisch lesbar. In dem Fall meldet die Import-Box das und lässt sich nicht starten, statt einen Lauf über null Dateien als Erfolg zu melden. Prüfe dann die Rechte des Ordners (auf einer Synology NAS ist das fast immer nötig, siehe Synology NAS (DSM)).
- Er ist nachvollziehbar. Frühere Import-Läufe bleiben als Verlauf sichtbar.
- Er fasst das Original nicht an. Der Pfad liegt außerhalb des Datenverzeichnisses.
Nach dem Import kannst du den Ordner wieder aushängen.
CD rippen
Hängt am Server ein CD-Laufwerk (eingebaut oder per USB), liest Tunetorch Audio-CDs direkt in die Bibliothek ein. Die Titel werden dabei so sorgfältig geprüft, wie es gute Rip-Programme am Rechner tun, und landen wahlweise verlustfrei als FLAC oder platzsparend als Opus, MP3 oder AAC in der Bibliothek.
Einrichten (einmal, als Admin)
- Laufwerk in den Container durchreichen: Dafür ergänzt du ein paar Zeilen in der
docker-compose.yml, siehe CD-Laufwerk durchreichen. - Einschalten unter Server-Einstellungen → Audio & Wiedergabe → CD rippen. Ab Werk ist die Funktion aus. Beim Einschalten fragt Tunetorch nach, weil die Prüfung gegen AccurateRip eine Verbindung ins Internet aufbaut (siehe unten). Die Prüfung lässt sich dort auch getrennt abschalten.
- Recht vergeben: Wer rippen soll, braucht das Recht Audio-CDs rippen (Benutzer & Rechte).
- Laufwerk freigeben. Ein erkanntes Laufwerk steht erst zum Rippen bereit, wenn du es in derselben Rubrik unter Erkannte Laufwerke zum Rippen freigibst. Nur freigegebene Laufwerke erscheinen beim Rippen. Hängen mehrere am Server, gibst du genau die frei, die benutzt werden sollen; die Freigabe lässt sich jederzeit wieder entziehen.
- Lese-Offset setzen. Jedes Laufwerksmodell liest um ein paar Samples versetzt. Ohne den passenden Offset kann AccurateRip einen Rip nicht bestätigen. Liegt beim Freigeben eine verbreitete Kauf-CD im Laufwerk, erkennt Tunetorch den Offset gleich mit. Sonst lässt du ihn danach mit einer bekannten CD erkennen oder trägst ihn von Hand ein (den Wert findest du in der AccurateRip-Laufwerksliste). Das darf nur ein Admin, denn ein falscher Offset verdirbt jeden weiteren Rip, ohne dass es jemand merkt. Gibt es die eingelegte CD in mehreren Pressungen, passt sie zu mehreren Offsets. Dann speichert Tunetorch nichts und meldet „mehrere Pressungen“. Mit einer zweiten, anderen CD bleibt der Wert übrig, der zu beiden passt.
Rippen
Leg eine Audio-CD in ein freigegebenes Laufwerk, dann steht im Benutzermenü CD rippen. Nach ein paar Sekunden erscheint dort das Formular:
- Vorbefüllt aus dem CD-Text, wenn die CD einen hat.
- Mit Pro füllt Bei MusicBrainz suchen Album, Album-Interpret, Jahr, CD-Nummer, Titel und Gastmusiker aus. Das Cover siehst du gleich im Formular, es kommt bei der Übernahme mit. Kennt MusicBrainz die CD noch nicht, führt dich ein Link zum Eintragen.
- Findet sich kein Cover (oder rippst du ohne Pro), bietet das Formular Cover hochladen an: ein Bild von deinem Gerät, JPEG, PNG oder WebP bis 10 MB. Das geht auch noch, solange die CD liest oder unter Gelesene CDs wartet.
- Alles bleibt von Hand änderbar, und die Normalisierung greift wie beim Upload.
- Manche CDs haben einen versteckten Titel vor Titel 1, den man nur durch Zurückspulen findet. Tunetorch erkennt ihn, und du kannst ihn als Titel 0 mit übernehmen oder abwählen.
- Der Titelnummern-Versatz über der Titelliste wird zu jeder Titelnummer addiert. Wer Mehrfach-CDs ohne „CD 1 von 2“ führt, trägt für CD 1 etwa 100 ein (Titel 1 wird 101) und für CD 2 200 (Titel 4 wird 204). Soll die Nummerierung bei 20 beginnen, trägst du 19 ein. Die Nummernfelder zeigen das Ergebnis sofort und bleiben einzeln änderbar.
Rippen starten liest die CD in zwei Durchläufen: Im Prüfdurchlauf liest Tunetorch alle Titel einmal, im Kopierdurchlauf ein zweites Mal, und vergleicht beide Lesungen Bit für Bit. Weil erst die ganze CD und dann die ganze CD noch einmal gelesen wird, kann der Zwischenspeicher des Laufwerks keine zweite Lesung vortäuschen. Kennt AccurateRip die CD, gleicht Tunetorch die Kopie zusätzlich mit den Rips anderer ab. Während des Rippens steht über dem Bericht, wo er gerade ist, etwa Durchlauf 1 von 2 — Prüfdurchlauf: Titel 3 von 12.
Ein Rip dauert dadurch etwa doppelt so lange wie ein einfaches Kopieren. Das ist Absicht und lässt sich nicht abschalten: Die zwei Durchläufe laufen bei jeder CD, damit jeder Titel so genau wie möglich in der Bibliothek landet. Bei Genauigkeit und Klangqualität macht Tunetorch keine Abstriche zugunsten der Geschwindigkeit.
Ist die CD gelesen, wirft das Laufwerk sie aus (Häkchen CD nach dem Rippen auswerfen, ab Werk an), und es ist frei für die nächste. Ist ein Titel unsicher geblieben, bleibt die CD trotz Häkchen drin, damit du ihn gleich neu lesen kannst.
Der Bericht
| Status | Bedeutung |
|---|---|
| verifiziert | AccurateRip bestätigt: Andere haben von derselben CD genau dieselben Daten gelesen. |
| konsistent | Probe und Kopie sind gleich, aber AccurateRip kennt die CD nicht (oder die Prüfung ist aus). Sehr wahrscheinlich fehlerfrei. |
| unsicher | Probe und Kopie weichen ab, oder das Laufwerk musste Stellen überspringen. Neu lesen versucht es noch einmal. Oft hilft es, die CD vorher zu reinigen. |
| Fehler | Der Titel ließ sich nicht lesen. Übernehmen geht dann nur nach Rückfrage und ohne diesen Titel. |
Gelesene CDs
Eine fertig gelesene CD landet in der Liste Gelesene CDs unter dem Laufwerk. Dort wartet sie ohne Frist, bis du sie in die Bibliothek überträgst oder verwirfst, genau wie ein Export. Du kannst also mehrere CDs nacheinander einlegen und lesen lassen und die Berichte später in Ruhe durchgehen. Ein Klick auf eine CD klappt ihren Bericht auf.
Vor dem Übertragen wählst du unter Speichern als, wie die Titel in die Bibliothek kommen:
- Verlustfrei — FLAC (empfohlen): bitgenau wie die CD, dafür deutlich größere Dateien.
- Verlustbehaftet: deutlich kleinere Dateien als Opus (empfohlen), MP3 oder AAC, mit wählbarer Bitrate (Opus ab 64, MP3 und AAC ab 128 kbit/s; beim Wechsel des Codecs springt sie auf dessen Vorgabe). Nicht mehr bitgenau; eine verlustfreie Fassung gibt es danach nur durch erneutes Rippen. Geprüft wird trotzdem verlustfrei, der Bericht gilt also auch hier.
Das zuletzt gewählte Format merkt sich das Gerät. In die Bibliothek übertragen und Rip löschen speichert die Titel im gewählten Format, misst die Lautheit und löscht danach die gelesenen Rohdaten vom Server. Die CD brauchst du dafür nicht mehr, sie kann längst wieder im Regal stehen. Das Rip-Protokoll mit allen Prüfsummen gibt es zum Herunterladen, sobald die CD vollständig gelesen ist (neben dem Übertragen-Knopf) und nach dem Übertragen.
Wenn etwas dazwischenkommt
- Neustart des Servers mitten im Rip: Fertig gelesene Titel bleiben erhalten, die übrigen sind deutlich als fehlt markiert. Liegt dieselbe CD im Laufwerk, liest Fortsetzen nur die fehlenden nach. Übertragen kannst du erst, wenn nichts mehr fehlt.
- Neu lesen oder fortsetzen geht, sobald dieselbe CD wieder im selben Laufwerk liegt und das Laufwerk gerade nichts anderes liest.
- Das Übertragen bricht ab (etwa weil der Platz ausgeht): Die schon übertragenen Titel bleiben in der Bibliothek, der Rip wartet wieder aufs Übertragen und macht beim ersten fehlenden Titel weiter. Verwirfst du ihn stattdessen, bleiben die übertragenen Titel trotzdem in der Bibliothek — die Rückfrage nennt, wie viele es sind.
- Platz: Eine gelesene, noch nicht übertragene CD belegt rund 700 MB auf dem Server. Ein Admin sieht unter Server-Einstellungen → Audio & Wiedergabe → CD rippen alle offenen Rips aller Konten samt Größe und kann liegengebliebene dort verwerfen. Damit der Speicher nicht vollläuft, nimmt Tunetorch eine CD nur an, wenn genug Platz frei ist, und je Konto warten höchstens zehn gelesene CDs. Wird der Platz mitten im Lesen knapp, hält der Rip an und lässt sich nach dem Aufräumen fortsetzen.
- Schon einmal gerippt: Tunetorch weist darauf hin, verbietet es aber nicht.
- Jedes Laufwerk liest eine CD zur Zeit. Für andere Konten ist es solange belegt.
AccurateRip und deine Privatsphäre
Die Prüfung ist auch ohne Pro dabei, weil sie die Qualität sichert und kein
Komfort-Extra ist. Dafür fragt der Server je CD einmal bei accuraterip.com nach. Übertragen
wird nur die Kennung der CD, die sich aus ihrem Inhaltsverzeichnis errechnet. Titel, Konten
oder Nutzungsdaten gehen nicht mit. Solange niemand das CD-Rippen einschaltet, gibt es diese
Verbindung nicht.
AccurateRip bietet nur unverschlüsseltes HTTP an. Wer deinen Datenverkehr mitlesen kann, sieht also die Kennung der CD und könnte die Antwort fälschen. Das gilt für jedes Ripprogramm, das AccurateRip nutzt. Mehr als falsche Prüfergebnisse (die Bewertung des Rips, die Offset-Erkennung) lässt sich damit nicht erreichen: Tunetorch folgt keiner Umleitung und liest höchstens 1 MB der Antwort.
Bibliothek-Scan
Soll deine Sammlung an ihrem Platz bleiben, etwa weil ein anderes Programm sie schon
verwaltet, hängst du sie unter /app/musik ein (immer mit :ro) und lässt Tunetorch sie
scannen.
Der Scan erkennt neue, geänderte und verschwundene Titel. Du startest ihn über Server-Einstellungen → Wartung & Cron-Tasks → Musikbibliothek scannen. Er läuft im Hintergrund, und neue Titel erscheinen, ohne dass du die Seite neu laden musst.
Der Scan-Task ist ab Werk aus. Du brauchst ihn nur, wenn du wirklich einen externen Ordner eingehängt hast. Schalte ihn bei Bedarf im selben Bereich ein und wähle einen Abstand oder eine feste Uhrzeit.
Gut zu wissen:
- Der Scan liest die Sammlung Stück für Stück. Der Speicherbedarf bleibt dadurch auch bei sehr großen Sammlungen klein genug für einen Raspberry Pi.
- Gleiche Cover erkennt Tunetorch und speichert sie nur einmal.
- Ein in der Datei eingebettetes Cover über 10 MB wird übergangen (auch beim Hochladen und beim Sammlungs-Import). Der Titel kommt ohne Cover an, das Cover setzt du im Metadaten-Editor.
- Versteckte Ordner und Systemablagen (Papierkorb,
__MACOSX) werden übersprungen, wie beim Sammlungs-Import. - Beim ersten Scan kommen die Dateien nach ihrem Änderungsdatum an die Reihe. So stimmt der Bereich „Zuletzt hinzugefügt“ auf der Startseite von Anfang an.
- Mit dem Scanner-Ausschluss lässt du bestimmte Pfade dauerhaft aus.
Vom Scan in die Verwaltung übernehmen
Ein gescannter Titel bleibt eine externe Datei. Im Metadaten-Editor kann ein Admin ihn mit einem Klick in Tunetorchs Verwaltung übernehmen, auf Wunsch gleich umgewandelt nach FLAC oder Opus. Die Datei wird ins Datenverzeichnis kopiert, und der ursprüngliche Pfad wird beim nächsten Scan ausgelassen, damit nichts doppelt auftaucht.
Unterstützte Formate
Tunetorch liest die gängigen Formate: MP3, FLAC, AAC/M4A, OGG, Opus, WAV, AIFF und WMA.
Für die Wiedergabe wandelt Tunetorch bei Bedarf auf dem Server nach Opus um. Welche Fassung du hörst, hängt von der gewählten Qualitätsstufe ab (siehe Wiedergabe & Audioqualität). Das Original bleibt unverändert.
Danach
Frisch importierte Titel haben oft uneinheitliche Schreibweisen, fehlende Cover oder falsch zugeordnete Sampler. Dafür gibt es den Metadaten-Assistenten und den Metadaten-Editor. Der Assistent findet die typischen Probleme von selbst und gehört zu Pro. Korrigieren kannst du alles auch ohne ihn im Editor.