18.03.2009 - 08:48:17 Created by EasyWebitor

EasyMediaOrg

oder wie bekomme ich die Medienvielfalt in den Griff.
Noch ein Musikplayer? Gibt es nicht schon genug davon? Eigentlich wollte ich nur ein Tool um mir die Übersicht über meine ( und die meiner Familie ) kreuz und quer verteilten Musikdateien zu verschaffen, und diese ordentlich auf einen Datenträger zu kopieren. Weil dabei auch Musikdateien mehrfach vorhanden waren, wollte ich nicht einfach alles wahllos in ein Archiv kopieren. Also muss ein Programm her, das jedes Musikstück nur einmal in eine Ordnerstruktur ( jeder Interpret einen eigenen Ordner ) kopiert. Dabei sollte immer die beste Qualität verwendert werden ( also Dateien mit einer höheren Bitrate werden bevorzugt ). Und schon war ich mittendrin...
... und es wurde ganz anders als geplant!

Was kann EasyMediaOrg:

Diese Aufgaben soll EasyMediaOrg schnell, übersichtlich und mit einer möglichst einfachen Benutzerführung erledigen.
  • Alle verfügbaren Musikdateien übersichtlich anzeigen.
  • Such und Sortiermoglichkeit
  • ID3 Tags der Dateien auslesen und bearbeiten
  • Dateien nach auswählbaren Kriterien umbenennen
  • Aus unterschiedlichen Quellen ein gemeinsames Archiv erstellen
  • zur Zeit nicht verfügbare Quellen ( wie z.B. Netzlaufwerke, USB-Speicher ) nicht einfach vergessen
  • Playlisten erstellen und bearbeiten
  • Eine Auswahl an Musikdateien auf z.B. den tragbaren MP3-Player kopieren
  • einfacher Musikplayer
  • viele Betriebssysteme unterstützen - Linux - Windows - OS X? ...

Wozu ist EasyMediaOrg nicht (oder noch nicht) vorgesehen:

  • Musik CD's auf die Festplatte kopieren
  • Musik CD's brennen
  • Musikdateien bearbeiten ( schneiden / umkodieren / komprimieren / mischen)
  • erweiterte Playerfunktionen wie: überblenden,animationen,equalizer,loops ....
  • Musik CD's brennen

Lizenz

Vorraussetzung Abhängigkeiten

EasyMediaOrg wird entwickelt in der Programmiersprache C++. Um solch ein Programm zu erstellen ( und dabei nicht von Null anzufangen ) sind aber viele Hilfsmittel und zusätzliche Programme nötig. Dabei habe ich ausschließlich frei zugängliche Software ( OpenSource ) verwendet. Lobend erwähnen will ich hier auch alle ( mir unbekannten Programmierer ) , die diese Hilfsmittel geschaffen haben.
Hilfsmittel und Voraussetzungen für die Benutzung/Erstellung von EasyMediaOrg
ProgrammpaketVersionenEasyMediaOrg nutzenEasyMediaOrg erstellenBetriebssystem
GNU C++ Compilerpaket? - JALinux
MinGW C++ Compilerpaket?mingwm10.dllJAWindows
QDevelop IDE0.2.5 - hilfreichAlle
QT4 GUI - Framework4.3.4QtCore4/QtGui4JAAlle
tagLib - ID3 Tags lesen/schreiben1.5JAJAAlle
VLC - Mediaplayer0.8.6..JAJAAlle

- Programm EasyMediaOrg -

Der Bildschirm der Hauptanwendung EasyMediaOrg ist unterteilt in die 4 Bereiche
  • Ordnerauswahl
  • Abspielliste/Player
  • Musikdateien Tabelle
  • Infobereich

- Ordnerauswahl -

Hier werden die Pfade zu den verschiedenen Musikarchiven gesammelt. Diese Archive können auf der lokalen Festplatte gespeichert sein, auf einem USB-Datenträger oder auch auf einem anderen Rechner im Netzwerk. Gerade USB-Datenträger oder Netzwerkgeräte sind ja nicht immer verfügbar und werden dann bei vielen anderen Programmen aus dem Archiv entfernt. Bei EasyMediaOrg sind die zur Zeit nicht verfügbaren Ordner einfach nur deaktiviert, und können bei Bedarf ( und wenn sie wieder zur Verfügung stehen ) einfach per Mausklick wieder aktiviert werden. Wenn ein neuer Ordner zum Archiv hinzugefügt wird ( dabei wird natürlich keine Musikdatei kopiert ) wird zunächst nach einer schon vorhandenen Liste "EasyMediaOrg.list" von vorhergehenden Scanaktionen gesucht. Ist eine solche Liste vorhanden wird diese eingelesen und in das Musikdateien Archiv übernommen ( Aus diesen Listen wird auch jedesmal beim Programmstart das Archiv zusammengestellt ). Fehlt diese Liste, wird der ganze Ordner ( incl. sämtlicher Unterordner ) nach Musikdateien abgesucht. Aus allen Dateien werden die ID3 - Tags ausgelesen und diese Daten in das Archiv übernommen. Bei sehr vielen Musikdateien kann dieser Vorgang viel Zeit benötigen. Das hängt natürlich von der Rechnergeschwindigkeit und von der Geschwindigkeit des Datenträgers ab, über Netzwerk kann das schon deutlich länger dauern als von der internen Festplatte ( Als Beispiel: Bei meinem Rechner und von der internen Festplatte waren es ca. 1000 Musikdateien pro Minute ). Einmal eingescannte Listen werden dann immer wieder verwendet ( auch wenn der Datenträger in einem anderen Computer werwendet wird und dort EasyMediaOrg installiert ist). Da sich aber der Inhalt dieser Ordner immer wieder verändert, können diese Listen bei Bedarf geziehlt aktualisiert werden.

- Abspielliste und Player -

Mit EasyMediaOrg können Playlisten erstellt, gespeichert und geladen werden. Diese Playlisten entsprechen dem M3U-Format und können somit von jedem gängigen Musikplayer verwendet werden. Zur Erstellung der Abspiellisten können ( nach dem Drag + Drop Verfahren ) einfach beliebige Musikdateien aus der Musikdateien-Tabelle oder von jedem beliebigen Dateimanager hinzugefügt werden. Auch lässt sich so die Reihenfolge der Musikdateien in der Abspielliste verändern. Einfach markieren und an die richtige Position ziehen. Diese Abspielliste lässt sich natürlich auch dann verändern und erweitern, wenn der Player schon Musikdateien aus der Abspielliste wiedergibt. Zur Kennzeichnung der Musikdatei im Player werden einfach die Zeichen ">>" vor den entsprechenden Eintrag in der Abspielliste gestellt.

Musikdateien - Tabelle

Hier werden alle Musikdateien der Typen .mp3 .ogg .flac .wma angezeigt, die in den gewählten Ordnern gefunden wurden. Aus den Dateien werden während der Suche die Informationen ( ID3 Tags ) wie Interpret und Titel ausgelesen. Diese Informationen werden beim Beenden des Programms im jeweils gewählten Ordner als "EasyMediaOrg.list" gespeichert. So können sie beim nächsten Programmstart sofort wieder zur Verfügung stehen.

Übersicht ID3 Tags

DateitypLinuxWindows
LesenSchreibenLesenSchreiben
mp3JAJAJAJA
oggJAJAJAJA
wmaJANEINNEINNEIN
flac????

Die Musikdateien werden zuerst sortiert nach Interpret - Titel angezeigt. Diese Sortierung lässt sich durch Klicken auf den Titel einer beliebigen Spalte ändern. Um das Auffinden bestimmeter Musikstücke noch leichter zu machen, ist auch eine Suchfunktion vorhanden.

Gesucht werden kann nach Interpret, Titel, Art und Album ( entsprechende Eigenschaften bitte aktivieren ). Im voreingerstellten Suchverfahren ( Ausdruck nicht aktiviert ) wird in den aktivierten Eigenschaften nach dem vorhandensein eines Stichworts gesucht. Ist die Eigenschaft "Ausdruck" aktiviert, wird die Suche nach dem Verfahren des Regulären Ausdrucks durchgeführt. Nur noch Musikdateien, die anhand der Suchekriterien gefunden wurden werden in der Tabelle angezeigt. Alle anderen Tabellenzeilen sind nicht mehr sichtbar solange die Suche aktiviert ist.

Die Einträge in dieser Tabelle könne zeilenweise ( auch mehrfach ) ausgewählt werden. So können sehr einfach ( nach dem Drag + Drop Verfahren ) Dateien zur Abspielliste hinzugefügt werden. Wird eine solche Auswahl in einen bestehenden Ordner gezogen ( Dateimanager o.Ä.) werden die gewählten Dateien in diesen Zielordner kopiert ( Diese Kopierfunktion wird von fast allen modernen Dateimanagern die ich kenne unterstützt) . Es ist somit problemlos und vor allem sehr schnell möglich Musikdateien für z.B. einen MP3-Player zusammenzustellen und auf das Gerät zu kopieren.

Durch einen Rechtsklick öffnet sich ein Popupmenü

!! Achtung !! mit "Musikdatei von der Festplatte löschen" hier werden ohne Nachfrage die ausgewählten Musikdateien vom Datenträger gelöscht.
Die Menüpunkte "Eigenschaften" und "Datei umbenennen" führen zu einem
Dialog in dem die ID3 Tags einzelner/mehrerer Dateien geändert, oder die Musikdateien nach auswählbaren Eingenschaften umbenannt werden können.

Eigenschaften/Umbenennen

Mit diesem Dialog könne zwei Aktionen durchgeführt werden:
  • Änderen der ID3 Tags ( den Eigenschaften einer Musiktatei )
  • Automatisiertes umbenennen der Musikdateien, so dass sie einen aussagekräftigen Dateinamen erhalten
Beide Aktionen werden auf die in der Liste markierten Dateien angewandt.

Eigenschaften

Aus den in der Liste markierten Musikdateien werden zunächst die bereits vorhandenen
ID3 Tags ausgelesen. Die ID3 Tags von der ersten markierten Datei schreibt EasyMediaOrg dann in die Eingabefelder für die Eigenschaften. Nur die Eingabefelder bei denen in allen Musikdateien der selbe Text/Wert steht bleiben aktiviert. Alle anderen Eingabefelder sind ( um versehentliches überschreiben zu verhindern ) deaktiviert, können aber jederzeit aktiviert werden. Nach dem Klick auf Speichern werden die Eigenschaften aller aktivierten Eingabefelder in alle markierten Musikdateien geschrieben. Die Daten aus den deaktivierten Eingabefeldern bleiben in den Musikdateien erhalten. So kann z.B. der Name eines Albums auf einen Schlag in alle Musikdateien geschrieben werden. Eine Ausnahme macht dabei die Eigenschaft "Track Nr.", diese Nummer wird für jede markierte Musikdatei um eins erhöht ( Beginnend bei der ersten markierten Datei mit dem Wert der im Eingabefeld eingegeben wurde) .

Umbenennen

Genauso wichtig wie die ID3 Tags in einer Musikdatei ist natürlich auch ein entsprechender Dateiname. EasyMediaOrg bietet hier Unterstützung mit einem automatisierten Umbenennungsverfahren. In der ersten Eingabezeile kann definiert werden wie sich der neue Dateiname zusammensetzt, mit Platzhaltern für Interpret,Titel,Album und die Tracknummer. Darunter wird zur Kontrolle gleich das Ergebnis angezeigt.

Hilfe zur Hilfe

Was gibt es zu den Hilfstexten zu sagen?
Die Hilfstexte sind im HTML - Format erstellt, und werden hier mit einem ( sehr einfach gehaltenen ) Browser angezeigt. Dabei wird immer die zur passenden System - Sprachauswahl gehörende Datei geladen ( soweit vorhanden ). Hier in Deutschland z.B. die Datei "EasyMediaOrg_de.hlp". Der Bildschirmbereich des Hilfedialogs ist in zwei Bereiche unterteilt: Browser (maximiert) und Editor (versteckt). Ganz am unteren Rand kann man noch den Balken des Teilers erkennen, mit dem der Bereich das Editors sichtbar und größer gemacht werden kann. Der Editor kann dazu benutzt werden die Hilfsdatei zu verändern und zu ergänzen. Evtl. finden sich auch Benutzer, die diesen Text in andere Sprachen übersetzen können.