Noch ein SD-Karten Tool

Hallo Community,

ich bin mittlerweile großer Fan vom TonUINO Projekt und habe soeben meine beiden Boxen fertiggestellt. Grundsätzlich ist das Projekt ja sehr einfach umzusetzen, allerdings habe ich keine für mich zufriedenstellende Lösung für die Verwaltung der SD-Karten gefunden.
Also habe ich mich selber hingesetzt und schnell etwas gebastelt:

Das Tool ist vom Aufbau recht ähnlich wie die Tonuino-Toolbox ergänzt um Features die mir gefehlt haben oder die ich anders haben wollte. Das Programm ist in Java-Swing entwickelt und daher theoretisch überall lauffähig. Allerdings mit ein paar Einschränkungen (siehe unten).
Folgende Funktionen habe ich umgesetzt:

  • Karten können sowohl direkt als auch „offline“ in einem Ordner im Filesystem verwaltet werden
  • Analyse des Karten-Inhalt mit Vorschlägen zu Änderungen
  • Erstellen neuer Ordner auf der Karte
  • Hinzufügen von Files
  • Anzeige der ID-Tags der Files mit der Möglichkeit zum Editieren
  • Abspielen der Files
  • Neu-Sortierung der Files eines Ordners
  • Normalisieren aller Files eines Ordners (Windows only, läuft per Shell-Aufruf, also ev. portierbar)
  • Generierung eines Inhaltsverzeichnisses der Karte

Was dem Programm noch fehlt:

  • Code-Überarbeitung (es musste schnell gehen)
  • Bessere Fehlerbehandlung

Das Projekt befindet sich auf Github und darf natürlich frei verwendet werden: GitHub - coschtl/tonuino-cardadmin

Für Windows-User gibt es eine exe (ein installiertes Java 8 wird benötigt): https://github.com/coschtl/tonuino-cardadmin/blob/main/TonuinoCardAdmin.exe

Folgende Konfigurationsmöglichkeiten gibt es (bitte ein File configuration.properties im Ordner der exe ablegen):

# normalizing program
# if not set, no normalizing can be done
mp3.normalizing.commandline=C:\\Program Files (x86)\\MP3Gain\\mp3gain.exe
mp3.normalizing.options = /a /k

# alternative card-roots
# i.e. for using a local folder as card-backup
alternative.card.root = D:/media/Tonuino/SD-Karte
 
# default content root
default.content.root = D:/media/Tonuino/Content

# index file location
card-index.location = D:/media/Tonuino/SD-Karten-Index

Viel Spaß!

2 Like

Bin gerade dabei eine Karte zu befüllen und wollte dein Tool gleich mal testen.
Das mit dem configuration.properties habe ich aber noch nicht so ganz begriffen.
Also ich habe eine entsprechende Datei erstellt und die Zeilen von dir kopiert und eingefügt.

Soweit klar. Da muss der Pfad für Mp3Gain hin
Alles danach ist mir irgendwie nicht so ganz klar. Was muss ich dann wie anpassen?

Hi,

@coschtl:
Ich habe eher eine beiläufige Frage zu deinem Screenshot:
Heißen die finalen Dateien bei dir dann nur „001.mp3“ usw.?
Da kann man doch den Titel noch hinten dran hängen, oder?

Ich habe den Nutzen dieser SD-Karten Tools noch nicht ganz durchdrungen bzw. mich auch noch nicht viel damit beschäftigt, weil es bei mir noch nicht das große Mühsal war.
Bei mir heißen die Musik-Dateien auf dem PC meist „## - Titel“.
Für den Tonuino muss ich also vorn noch das numerische Muster „###“ ergänzen.
Dann heißen die Dateien auf der SD-Karte dann „### - Titel“.
Das dauert für einzelne Alben sicherlich einige Minuten, aber das mache ich auch nicht ständig.
Für das Dateien umbenennen gibt es afaik schon einige Freeware Programme.
Von den restlichen Features liest sich für mich keines als „must have“, aber vllt. übersehe ich auch etwas wesentliches. Ich will dein Programm auf keinen Fall schlecht reden - ich möchte nur etwas besser verstehen, wozu diese Programme hauptsächlich hilfreich sind.

Glückssache ob das klappt. Deshalb für ein Programm für alle eher nicht geeignet.

Ah ok. Das hatte ich nicht auf dem Schirm. Dann habe ich bisher wohl Glück gehabt mit meinen DFPlayern.

Vielleicht wäre es dennoch ein optionales Feature in dem Programm für Nutzer, die wissen, dass ihr DFPlayer das verarbeitet!?
Zumindest möchte ich den Titel im Dateinamen nicht missen - auch wenn der Windows Explorer den Titel als Spalte (ebenso wie in dem Programm) auch mit anzeigen kann.

Die erste Zeile ist die Executable des Programms zur Lautstärke -Normalisierung.
Die nächste Zeile gibt die Argumente/Optionen an die obiges Programm benötigt.

Als alternative.card.root definierst du einen Ordner den du als Spiegel der SD-Karte verwenden willst (optional). Ich mache es so, dass ich alles auf der Festplatte habe und dann nur noch auf die Karte(n) kopiere.

default.content.root gibt den Basis-Ordner an, in dem die Auswahl neuer Dateien starten soll (optional).

card-index.location ist der Ordner in den die Index-Files geschrieben werden.

1 Like

Ich hätte aus der Beschreibung des Projekts herausgelesen, dass die Dateien eben nur xxx.mp3 heißen dürfen. Daher der ganze Aufwand.

Wenn das bei einigen Playern nicht nötig sein sollte, reduziert sich der Nutzen natürlich darauf, dass man ein Tool hat und nicht mehrere verwenden muss (ID-Tags, rename, normalisieren).
Und natürlich die Index-Generierung die mir persönlich wichtig ist, weil ich damit einfach meine Karten beschriften kann.

1 Like

Die dreistellige Nummer am Anfang muss immer stehen. Ich hatte es bisher aber noch nicht erlebt, dass meine Player mit dem Text im Nachgang der Nummer Probleme haben (aber es gibt Player die das nicht mögen). Sonderzeichen / Umlaute und so weiter sollten aber vermieden werden!

Noch ein Hinweis:
Beim Verschieben funktioniert auch die rechete Maustaste ( „ganz nach oben/unten“).

Moin @coschtl, das Tool klingt gut! Ich würde es gerne mal testen. Leider funktioniert es bei mir nicht. Im Programm werden keine Dateien angezeigt und die Schaltflächen sind ausgegraut oder haben keinen Effekt.


Ich nutze Win10. Es sind mp3 Dateien in den Ordnern. Java ist installiert. Mit und ohne Config-Datei macht keinen Unterschied. Irgendwelche Ideen, woran es liegen könnte?

Hi @MoBo,

das ist wohl dem fehlenden Error-Handling geschuldet. Ich habe eine neue Version gemacht, die ein wenig robuster sein sollte was die Konfiguration betrifft.
Außerdem kannst du nun das Konfigurationsfile (du kannst gerne https://github.com/coschtl/tonuino-cardadmin/blob/main/card-admin/src/main/resources/configuration.properties verwenden und anpassen) in den selben Ordner wie die exe legen.

Danke für die schnelle Korrektur! Jetzt kann ich zumindest neue Ordner erstellen. Dateien hinzufügen öffnet ein Auswahlmenü, aber wenn ich eine mp3 auswähle, sehe ich keinen Effekt. sie wird auf jeden Fall nicht dem aktuellen Ordner zugefügt. Bei Analyse und Index generieren habe ich noch keinen Effekt gesehen, aber die Tasten sind nicht mehr ausgegraut.
Das klingt ja alles sehr praktisch, aber ich denke ich bleibe erst einmal bei meiner manuellen Bearbeitung.

Hallo @coschtl,

danke für das Tool. Nachdem ich Linuxnutzer bin, habe ich zunächst das Programm von @raphael ausprobiert (tonuino-toolbox). Dieses kann leider keine Offlineverwaltung der SD-Karte (oder ich habe es nicht gefunden). Und fürs Normalisieren gibt es auch (noch?) keine Integration. Daher habe ich Deine Variante ausprobiert.

Als Linuxnutzer musste ich erst Eclipse installieren (vermutlich geht auch jede andere IDE mit Maven), da Du ja auch weitere Bibliotheken eingebunden hast. Damit konnte ich es jedenfalls bauen und laufen lassen. Was nicht funktioniert: die configuration.properties wird nicht (korrekt?) eingelesen. Wenn ich aber beim Bauen des JARs die Datei richtig erzeugt ablege, werden die Optionen (teilweise?) so schon im JAR mit eingebunden. Jedenfalls kann ich dann mittels mp3gain normalisieren. Der korrekte Pfad für die Dateiverwaltung wird aber nicht geöffnet, da muss ich händisch hin navigieren ("/home/NUTZER/tonUINO/sd"). Vielleicht hast Du eine Idee, woran das liegen könnte?

Außerdem fände ich die Option praktisch, die Titelreihenfolge einfach zu „sortieren“ über Klick auf die Spaltenköpfe, also bspw. alphabetisch auf- oder absteigend nach Titel oder auch auf- oder absteigend nach Track-Nummer. Das händische Durchsortieren der Titel ist relativ aufwändig :slight_smile: