Hier gilt das Gleiche wie für den Opus 1 Music Player und den Unpopular Music Player:
Ja, es gibt für Android hunderte, aber die sind meines Wissens fast alle nur für Popmusik und deshalb für Klassik und andere mehrsätzige Musik völlig ungeeignet. Das einzig brauchbare Programm, das ich finden konnte, ist kid3 für Android. Das ist inzwischen über F-Droid installierbar, aber sehr komplex und läßt sich nicht von der Abspiel-App aus direkt starten. Dennoch kann kid3 als Referenz gesehen werden, und wenn der Classical Music Tagger einmal versagt, sollte man die Datei mit kid3 analysieren oder bearbeiten.
Auf dem Computer gibt es diverse Metadaten-Editoren ("tagger"), die auch für Klassik geeignet sind, z.B. Kid3, Quoobar (die letzte Version ist aus dem Jahre 2016) und iTunes. Das Programm mp3tag gibt es nur unter Windows.
Der Classical Music Tagger verarbeitet derzeit keine Titelbilder, sondern nur Text-Metadaten!
Metadaten ("tags"), die das Programm nicht kennt, werden ignoriert, d.h. nicht gelöscht. Zum Löschen oder Ändern dieser Daten muß man ggf. eines der genannten Referenzprogramme bemühen.
Beim ersten Start versucht das Programm das Musikverzeichnis auf dem internen Speicher sowie weitere auf SD-Karte oder USB-Speicher zu erkennen. Diese werden in einer Pfadliste angezeigt, und man kann durch die Ordnerstruktur des Gerätes navigieren. Unten wird der aktuelle Pfad angezeigt (Das Berühren des Pfades hat derzeit keine Funktion). Man beachte, daß Schreibzugriffe auf die SD-Karte und mglw. andere Orte vom System unterbunden werden. Dann muß man in den SAF-Modus wechseln (siehe unten). Per SAF erreichbare Pfade oder einzelne Dokumente lassen sich über die entsprechenden Einträge im Drei-Punkte-Menü öffnen. Werden hierüber Dokumente geöffnet, wechselt die Ansicht von der Pfad- in die Dokumentenliste-Ansicht; man kann dann nicht mehr im Baum navigieren, ohne das Programm neu zu starten.
In jeder Ansicht kann der Tagger über das lange-Berührung-Kontextmenü und den Eintrag "TAGGER" gestartet werden. Außerdem gibt es in der Wiedergabe-Liste den Menü-Eintrag „Metadaten ändern...“; alle Audiodateien der Liste werden dann in den Tagger übernommen.
In der Alben-Liste kann man den Menü-Eintrag „Metadaten ändern...“ auswählen. Im geöffneten Album können einzelne Dateien über lange Berührung geöffnet werden, das gesamte Album über die ausgefahrene Titelzeile.
In Datei-Managern oder anderen Programmen, die die Funktionalität „Öffnen mit... “ oder „Teilen“ unterstützen, kann der Tagger direkt mit den entsprechenden Audio-Dateien geöffnet werden. Er startet dann in der Dokumentenlisten-Ansicht. Technisch gesehen, erhält der Tagger dabei leider nicht den Pfad der Datei, sondern SAF-Deskriptoren, deshalb funktioniert das Verfahren auch bei Dokumenten in der „Cloud“ (etwa Google Drive) oder auf einem Server (z.B. per SMB oder SFTP), solange diese per SAF im System eingebunden sind.
Um die volle Funktionalität zur Verfügung zu stellen, versucht der Tagger, aus dem SAF-Deskriptor den Pfad zu „erraten“. Gelingt dies nicht, etwa auf dem Google Drive oder auf Netzwerkfreigaben, muß der Tagger im (extrem langsamen) SAF-Modus arbeiten und kann keine ".backup"-Datei anlegen. Man beachte aber, daß die meisten anderen Programme solche Dateien überhaupt nicht öffnen können und den Anwender z.B. mit einem leeren Bildschirm oder einer Fehlermeldung konfrontieren.
Mit Stand Ende 2020 unterstützt Google Drive Dateizugriffe über SAF, jedoch keine Pfade, also Dateibäume. Eine von vielen Entwicklern unterstützter, entsprechender "bug report" wurde von Google abgelehnt ("closed, will not do"). Der Anbieter Box unterstützt SAF ebenfalls nur für Dateien, aber nur scheinbar; tatsächlich schlagen entsprechenden Versuche bei allen getesteten Android-Programmen fehl. Der Anbieter DropBox hat die SAF-Unterstützung verweigert, es soll aber Versuche geben, so etwas nachzubauen. Das OneDrive von Microsoft unterstützt leider keine Schreibzugriffe, aber man kann die Dateien lesen.
In beiden Modi (Dokumentenliste oder Dateibaum) kann man die zu ändernden Dateien einzeln auswählen. Eine lange Berührung wählt alle Audio-Dateien aus bzw. entfernt die Auswahl.
Im Dateisystem-Modus sind Nicht-Audio-Dateien ausgegraut.
Die ausgewählten Dateien können automatisch nacheinander über den entsprechenden Menüeintrag abgespielt werden, und das Abspielen kann auch wieder angehalten werden. Achtung: Der eingebaute Abspieler ist sehr einfach gehalten, und Android beendet üblicherweise das Abspielen eigenmächtig, wenn das Programm eine Zeitlang inaktiv war. Die Funktion dient nur zum kurz Reinhören und zum Testen; immerhin kann man aber damit Musik von USB-OTG-Speichern oder SMB-Freigaben abspielen, was nicht einmal Googles eigenes Programm beherrscht.
Ein Druck auf das grüne Editor-Icon öffnet den Editor.
Der Editor bietet alle gängigen Tags, nicht vorhandene werden als leere Felder angezeigt. Man beachte, daß für Popmusik üblicherweise nicht die Felder für „Werk“ oder „Gruppierung“ verwendet werden, sondern nur das für die Satzbezeichnung, meist als „Titel“ oder, etwas dämlich, als „Song-Titel“ bezeichnet.
Wird nur eine Datei bearbeitet, wird ihr Dateiname unten eingeblendet. Außerdem wird oben ihre Position in der Liste der Audiodateien des vorherigen Bildschirms angezeigt sowie die Gesamtanzahl dieser Audiodateien. Beispiel: Das Verzeichnis enthält zwölf Dateien, von denen acht Audio-Dateien sind, und von diesen wird die erste bearbeitet, dann erscheint „Audiodatei 1/8“. Mit kurzem Berühren des unten angezeigten Dateinamens geht man zur nächsten Datei dieser Liste, mit langem Berühren zur vorherigen. Das funktioniert nur, wenn keine Felder editiert wurden. Sind Ende oder Anfang der Liste erreicht, kommt man in den vorherigen Bildschirm zurück.
Diejenigen Felder, die sich bei den übergebenen Dateien unterscheiden, werden mit einem „Ungleich“-Zeichen markiert. Ändert man ein Feld, wird es farblich hinterlegt. Macht man die Änderung rückgängig, wird die Farb-Hinterlegung wieder entfernt. Über den Menüpunkt „Zurücksetzen“ kann man auf einen Schlag alle Felder zurücksetzen.
Achtung: Änderungen an einem Feld wirken sich auf alle Dateien aus! Daher Vorsicht, wenn man mehrere zugleich bearbeitet, um z.B. das Album oder den Komponisten festzulegen.
Man beachte, daß „Genre“ ein freies Textfeld ist, in das man beliebigen Text eintragen kann, also z.B. auch „Kraweel, Kraweel!“. Jedoch ist es üblich, englische Bezeichnungen zu verwenden, also z.B. "Classical" oder "Baroque". Der Tagger kann entweder den Text unverändert übernehmen oder das Genre (wenn möglich) auf Deutsch übersetzen, siehe Einstellungen. Die Übersetzung kennt nur einige, gebräuchliche Genres; wenn gewünscht, kann ich die Übersetzungsliste aber gern erweitern.
Das Komponisten-Textfeld hat eine Auto-Vervollständigung, hinter dem eine Liste von mehr als 220 Komponistennamen hinterlegt ist. Darunter sind leider nur vier Frauen. Bei Hörbüchern steht hier der Autor.
Beim Ändern von Programm-Einstellungen werden einige erst nach Neustart des Editor-Bildschirms wirksam, zum Umschalten des Experten-Modus oder Genre-Übersetzung muß man den Editor kurz verlassen und erneut öffnen.
Der „Floating Button“ mit dem Diskettensymbol (rechts oben) ist so lange grau, bis mindestens ein Feld verändert wurde. Dann wird er rot, und beim Betätigen werden alle Änderungen in die Dateien geschrieben. Im grauen Zustand wird das Symbol ignoriert.
Drückt man die Schaltfläche jedoch lange, dann funktioniert sie auch im grauen Zustand: Etwaige Änderungen werden geschrieben (wenn die Fläche rot ist), dann wird der Editor verlassen und in dem Fall, in dem nur eine einzige Datei geändert wurde, der Editor sofort wieder mit der nächsten Datei, falls vorhanden, gestartet. Will man also mehrere Dateien nacheinander bearbeiten, wählt man zunächst die erste aus, wechselt in den Editor und lädt dann durch langes Betätigen immer in die nächste Datei.
Für die Metadaten gibt es zwei Modi, die über die Einstellungen umschaltbar sind:
Im Experten-Modus werden alle Felder, auch die Apple-proprietären, angezeigt und können getrennt geändert werden. Die Apple-Felder haben eine rote Beschreibungszeile.
Man beachte, daß in diesem Modus einige Felder redundant sind und sich sogar gegenseitig widersprechen können: So konkurriert „Werk“ mit „Apple-Werk“, und „Satz" konkurriert mit den Apple-Tags für Satzname und -nummer.
Im einfachen Modus werden die Apple-proprietären Tags ausgeblendet, können aber implizit über die anderen Eingabefelder geändert werden:
Beim Einlesen werden die Apple-Tags bevorzugt behandelt, d.h. ihre Inhalte können diejenigen der Standard-Felder für „Werk“ und „Satz“ verdecken. Sind sie vorhanden, landet ihr Inhalt in der Form "n/m Satz" im Titel-Eingabefeld, wobei "n" die Satznummer ist und "m" die Zahl der Sätze. Ist letztere (nicht: „Letztere“, weil Demonstrativpronomen) nicht vorhanden, hat der Titel die Form "n Satz".
Beim Abspeichern werden die Satz-Angaben, wenn gewünscht, zurückgerechnet. Welche Tags das Programm speichern soll, ist in den Einstellungen festzulegen. Ggf. werden Tags gelöscht, die zu der entsprechenden Einstellung nicht passen.
Beispiel: Die Datei enthält Apple-"movement"-Tags und wird im Modus "Standard" geändert. Dann landet die Satzbezeichnung z.B. als „3. Largo“ im Titelfeld und die Werkbezeichnung im standardkonformen Gruppierungs-Feld. Die Apple-proprietären Tags werden gelöscht.
Anderes Beispiel: Im Modus "Klassik" werden die Apple-Tags verwendet, ggf. wird der Titel dorthin kopiert, wenn sie vorher nicht existierten. Wie zuvor wird sichergestellt, daß Satzbezeichnung und -numerierung mit dem Titel harmonieren.
Hinweis: Der dritte Modus folgt einem Fehldesign bzw. Programmierfehler von Apples iTunes: Hier wird fälschlicherweise das proprietäre mp3-Feld GRP1 statt des standardkonformen TIT1 verwendet, wenn man „Werk und Satz“ abschaltet. Das Problem existiert nur bei mp3-Dateien.
Der Tagger unternimmt Anstrengungen, um das Android-System dazu zu überreden, die geänderten Dateien in seiner internen Datenbank zu berücksichtigen. Wenn das keine Wirkung zeigt, muß die Datenbank des Opus 1 Music Players manuell zurückgesetzt werden. Eine Radikallösung bietet der Menüpunkt „Android-Medienspeicher“: Hier kann die Android-Datenbank gelöscht werden, und ein anschließender Neustart des Geräts baut sie neu auf (dauert ein paar Minuten!).
Seit der Version 1.1 wird auch der Classical Music Scanner entsprechend benachrichtigt, d.h. er wird gestartet und nimmt die notwendigen Änderungen an der Mediendatenbank vor.
Aus Sicherheitsgründen wird, wenn möglich, vor dem ersten Ändern einer Audio-Datei eine Kopie angelegt und die ursprüngliche Datei als Sicherheitskopie unverändert gelassen, d.h. alle Schreibzugriffe finden nur auf der Kopie statt. Damit sind Datenverluste beinahe ausgeschlossen.
Man beachte, daß auf Dokumenten in der "Cloud" keine Sicherheitskopie angelegt werden kann und auch möglicherweise auch nicht auf Netzwerkfreigaben. In diesem Fall wird im Editor-Bildschirm ein Warndialog angezeigt, und man kann den Vorgang abbrechen.
In der Dateiliste können über den entsprechenden Menü-Eintrag einzelne oder mehrere Dateien zurückgesetzt werden, wenn der Tagger sie schon einmal bearbeitet hat. Tatsächlich wird dann die gänderte Datei gelöscht, und die ursprüngliche wird zurück-umbenannt.
Möchte man die ursprüngliche Datei löschen, z.B. aus Platzgründen, muß man dazu derzeit einen Datei-Manager oder den Computer bemühen. Eine entsprechende Funktion in der App wird vielleicht nachgeliefert.
SAF ist interessant, wenn Sie (a) in Ihrem Gerät eine SD-Karte installiert haben, die als „externer Speicher“ formatiert ist, oder wenn Sie (b) per USB-OTG-Kabel ein Speichermedium an Ihr Mobilgerät angeschlossen haben oder (c) über den „Android Samba Client“ auf Netzwerkfreigaben zugreifen möchten. Weitere Anwendungsfälle sind theoretisch möglich über sogenannte „Document Provider“, für (S)FTP, CIFS usw.. Außerdem wird SAF für Dokumente in der "cloud" verwendet.
Mit Android 4 und 5 hat Google den regulären Schreibzugriff auf die SD-Karte unterbunden, bis auf das private Verzeichnis, das jede Applikation dort hat. Insbesondere kann man nicht mehr auf Verzeichnisse wie „Music“ schreibend zugreifen, die im Hauptverzeichnis der SD-Karte liegen. Das zeigt der Tagger auch an, hinter dem Pfad am unten Bildschirmrand steht dann „(schreibgeschützt)“. Ab Android 11 ist der Schreibzugriff auch auf den internen Speicher außerhalb des privaten Bereichs verboten. Privilegierte Programme können jedoch über die Berechtigung MANAGE_EXTERNAL_STORAGE die Erlaubnis erhalten, sowohl auf gemeinsamen internen wie auch auf gemeinsamen externen Speicher (SD-Karte) schreibend zuzugreifen; das war mit Android 10 noch nicht möglich und ist ein echter Fortschritt. SAF steht für „Storage Access Framework“ und ist eine Android-spezifische Methode, um nach expliziter Erlaubnis trotz Sperre auf Dateien zuzugreifen, wahlweise lesend oder auch schreibend. Diese Erlaubnis muß man sich vom Anwender per systemeigener Dateiauswahl einholen.
Beispiel: Wenn Sie auf die SD-Karte zugreifen möchten, können Sie das z.B. über den Pfad "/storage/A1B2-C3D4", jedoch nur lesend. Sie öffnen nun über den Menüeintrag „Ordner auswählen (SAF)...“ die vom System bereitgestellte Dateiauswahl und navigieren auf das Hauptverzeichnis der SD-Karte. Dazu müssen Sie ggf. das Menü mit den drei waagerechten Linien öffnen und im dann aufklappenden Menü die SD-Karte auswählen. Sie sehen jetzt das Hauptverzeichnis der Karte. Mit der Schaltfläche unten rechts erteilen Sie Schreiberlaubnis und landen auch gleich mit dem Tagger dort. Ab Android 11 sind nur noch Unterverzeichnisse zugelassen. Gehen Sie im Tagger auf die höhere Ebene zurück, sehen Sie, daß alle erteilten SAF-Freigaben dort erscheinen. Greifen Sie auf diese Art auf einen OTG-Speicher zu, wird die Freigabe übrigens ausgeblendet, wenn Sie den Speicher wieder abgezogen haben. Das Programm merkt sich immer die letzten sieben Freigaben, ältere werden automatisch gelöscht.
SAF-Freigaben erkennen Sie unten in der Pfadangabe am vorangestellten "/tree". Beachten Sie, daß Sie auch auf den internen Speicher ("primary") über SAF zugreifen können, aber der Umweg über SAF ist im Vergleich zum direkten Dateizugriff quälend langsam. Das ist auch einer der Hauptkritikpunkte der Android-Entwicklergemeinschaft.
Wenn Sie alle SAF-Freigaben löschen möchten, müssen Sie derzeit den Speicher der Äpp über das Einstellungen-Programm von Android löschen, eine elegantere Möglichkeit wird vielleicht nachgereicht.
Einschränkung: Der Classical Music Tagger navigiert durch Verzeichnisse und findet dort Dateien und andere Verzeichnisse. Dafür ist es notwendig, daß der Document Provider das Kommando ACTION_OPEN_DOCUMENT_TREE unterstützt. Das tut jedoch nicht jeder; einige verwalten nur einzelne Dokumente, keine (hierarchischen) Verzeichnisbäume (z.B. Google Drive).
Technische Hinweise für Programmierer: Statt mit File arbeitet SAF mit DocumentFile; diese Klasse ist im Vergleich zu ersterer aber ohnmächtig und erfordert gewaltige Klimmzüge. Bei existierenden Bibliotheken, z.B. dem JaudioTagger (s.u.) ist eine Umstellung fast unmöglich.
Das Programm verwendet den Jaudiotagger zum Lesen und Schreiben der Metadaten. Diese Bibliothek ist unter der Lesser General Public License freigegeben, mußte aber aufwendig modifiziert werden, damit sie unter Android funktioniert.
Dateien vom Typ "mp4-dash" (Dynamic Adaptive Streaming over HTTP) können gelesen, aber nicht beschrieben werden, da die verwendete Tagger-Bibliothek dies nicht unterstützt. In der Praxis kommen diese Dateien aber selten vor. Bis dieser Fehler in der Bibliothek beseitigt ist, muß man diesen Fällen einen anderen Tagger (etwa kid3 auf Android oder auf dem Computer) bemühen. Für das Problem gibt es diesen Eintrag in der Fehlerdatenbank der Bibliothek.
Wenn der Tagger eine Kopie einer Audiodatei anlegt und die Originaldatei umbenennt, ist diese Operation nicht zu sehen, wenn man das Gerät an den Computer anschließt und sich die Dateien über das MTP-Protokoll ansieht. Wird das Gerät neugestartet, sind danach die Änderungen sichtbar. Das ist ein fundamentaler Fehler in allen Android-Versionen.
Einige Programme zeigen andere Genres an als andere. Das hängt damit zusammen, daß einige die Texte übersetzen, andere wiederum mit numerischen Genres, etwa 150 für Barockmusik, nicht umgehen können. Dieses Programm verarbeitet die meisten Zahlen, und die Übersetzung ins Deutsche ist abschaltbar.
Enthält eine mp3-Datei mehrere Metadatensätze, etwa solche vom Typ ID3v1.1 und solche vom Typ ID3v2.3.0, scheint die Jaudiotagger-Bibliothek letztere zu priorisieren, im Gegensatz zu ihrer Dokumentation, die das Gegenteil behauptet. In den Programm-Einstellungen kann man festlegen, ob Datensätze in dem älteren Format gepflegt oder, weil sie redundant sind, gelöscht werden sollen.
Beim Test kam es zu Fehlfunktionen, wenn mp3-Dateien zusätzliche Kommentarfelder enthielten, daher werden diese beim Ändern der Datei gelöscht. Dabei werden aber iTunes-spezifische Felder explizit erhalten, auch wenn der JaudioTagger das von sich aus nicht unterstützt.
Das Programm kann weder Titelbilder aus den Dateien lesen noch sie austauschen. Hierfür wird ein leistungsfähigeres Programm benötigt. Ansonsten ist es in den meisten Fällen sinnvoller, eine Datei namens albumart.jpg in den Album-Ordner zu legen. Diese gilt dann für alle Dateien im Ordner. Bilder mit dem Namen folder.jpg werden zwar von Android verarbeitet, jedoch z.B. nicht bei Samsung und LG. Aus Gründen.