richtige Adresse

ThOrMA: Einführung

Dies ist ein Versuch des Überblicks. ThOrMA ist ein System zur Verwaltung einer Musiksammlung - momentan nur für Dateien im MP3-Format, da ich nur das brauche - aus mehreren semi-selbstständigen Komponenten (PERL-Skripten).
Es wird bei mir auf GNU/Linux-Systemen eingesetzt; jedoch sollte es auch zumindest auf anderen Unix-artigen Systemen schnell zum Laufen zu bekommen sein. Hauptvoraussetzung ist eine PERL-Interpreterumgebung (ich nutze Perl 5.8.0; etwas ältere 5er Versionen sollten auch gehen). Dazu kommt ein Webserver für das optionale Webfrontend (ich nutze hier Apache2, aber das ist bestimmt nicht so wesentlich; wichtig ist die CGI-Funktion, evtl. SSI) und die Verfügbarkeit von ein paar weiteren Hilfsprogrammen, die - abgesehen von UNIX-Standardtools wie ls, rm & Co. - in der Kurzübersicht der Programme genannt werden.

Alle von mir (Thomas Orgis) geschriebenen Komponenten sind Open Source unter der Artistic License. Eine Kopie davon sollte sich gleich auf der Hauptebene des Archivs befinden (LICENSE). Man darf und soll dieses Programmpaket also nutzen und auch verbessern (wovon ich natürlich gern etwas mitbekommen würde).

Ich sehe seinen Sinn gegenüber den ganzen anderen ähnlichen Systemen der Welt in seiner Transparenz (editierbare Scripte und Textdateien), der Flexibilität der Nutzung und darin, dass es einfach mal meiner Vorstellung enspricht, da von mir geschrieben;-), wobei auch Leute mit etwas anderen Vorstellungen diese leicht einarbeiten können.
Das von mir zu Hause betriebene Setup besteht aus einem Dateiserver mit den MP3s und ThOrMa-Scripten und verschiedenen Rechnern , die einen Webserver (Apache) für das Web-Frontend darauf betreiben und mit dem integriertem Palyer als Musikstationen dienen, welche man je nach Gusto lokal oder von einem beliebigen anderen Rechner im heimischen Netzwerk aus über die Kommandozeile / telnet oder durch Klicks im Web-Frontend steuern kann. Desweiteren nutzen auch "normale" Windows/Linux Clients das ThOrMA einfach als Netzlaufwerk mit ordentlicher MP3-Organisation und automatisch erstellten Playlisten.

Ein wesentliches Merkmal ist das Beschreibungssytem, welches auf "Tags" beruht, die in einer mit einfacher Syntax versehenen Textdatei im Albumverzeichnis stehen (Wer das Web-Frontend nutzt, muss das nicht wissen).
Anstatt des nicht sooo aussagekräftigen ID3Genres ist im unserem ThOrMA ein Titel eben z.B. mit "rock,kraftvoll,gesang,witz" markiert. Auch bin ich dabei, meine absoluten Lieblingstitel mit "th_top" zu versehen. Schnell habe ich dann eine Liste mit meinen liebsten Rock-Songs, die aber nicht aggressiv sein sollen (das wären nicht viele;-) durch 'suche.pl th_top,rock,-aggressiv'.
Ich finde das System schön so, da irgendwie einfach und flexibel. Ich hoffe, das geht auch anderen so.

Desweiteren ist es schon nett, nach einem gezielten Klick eine zufällige Rotation aller Titel von Unterworld gezuckert mit Laustärkeanpassung und weichen Kreuzblenden zu hören zu bekommen. Oder auch einfach per Kommando 'mixplayer -w' mir das gesamte Archiv der Reihe nach anzuhören... oder mit 'tsearch -i rock,-punk | mixplayer -' mal eben etwas nicht-punkigen Rock zu bekommen ... Nett finde ich dann auch, dass ich dann den Arbeitsrechner ausschalten kann und der MP3-Rechner fröhlich weiter Musik macht.
Partytauglichkeit ist auch in Arbeit: der mixplayer kann (alpha-Feature) zur überlieferten Playliste eine Mixliste abarbeiten, in der die Längen/Positionen der Überblendungen festgeschrieben sind. Ausbau dieser Pseudo-DJ-Funktion ist ein Ansinnen, welches mir am Herzen liegt... aber Anderes liegt mir auch am Herzen...

Auch speziell: Da das Projekt erst zum privaten Vergnügen war (und ist); also kein "Release" geplant, ist das ganze Paket eine interessante Mischung aus deutschen und englischen Bezeichnungen/Texten; ein Ziel ist es auch noch, dies zu vereinheitlichen (zumindest auf Quelltextebene dann englisch, ansonten evtl. etwas i18n?). Momentan sollte ein Nutzer schon des Deutschen mächtig sein und auch ein paar Brocken Englisch verstehen.

Eine Warnung: Ein völliger (Linux-) Neuling wird sich warscheinlich nicht so gut mit dem ThOrMA zurechtfinden. Es ist gedacht als Sammlung von mitunter recht praktischen Werkzeugen für den kundigen Nutzer, der sie auch einzusetzen weiß. Gewisse Grundlagen zu Shell-Kommandos, Prozessen und überhaupt... primär wird das ThOrMA von Leuten, die glauben, dass sie wissen, was sie tun, für Leute die wissen, was sie tun, geschrieben (bisher von mir für mich;-).
Sicherlich wird auch so mach relativ unbedarfter Mensch mit dem Web-Frontend einiges anrichten können, jedoch sollte man wissen, wann man durch ein paar Klicks zu viel eine unkontrollierte Dämonenhorde losgetreten hat und wie man diese stoppt... lassen wir uns überraschen. Wie bei Software (auch nicht-freier) üblich: Ich übernehme keine Verantwortung für jede Art von Schäden, die durch Nutzung des ThOrMA entstehen...

Bevor ich es vergesse: Gedankt sei Herrn Jörgen Kosche für vielfältige Anregungen und schnelles Schreiben einiger einfacher kurzer Shell-Scripte, die ich mühselig durch komplizierten und hunderte Zeilen langen Perl-Code ersetzt habe (der dann aber dafür "sauberer" arbeitet;-). Dank auch an die Autoren der Programme, die in Teilen von ThOrMA genutzt werden und die Drecksarbeit machen.

Dank sei allen, die an Open Source glauben und es leben.

---- ThOr

Die Komponenten:

Vorneweg: Liste der ThOrMA Skripte und externer Programme.

KomponenteAufgabe
Basisprogramme + Verzeichnisstruktur Verwaltung, Dateinamenbereinigung, Normalisierung (RVA-Werte ermitteln), Beschreibungen, Datenbank, Suchfunktion, Playlisten generieren,...
mixplayer Mixplayd-basierter Player: RVA-Anpassung, Crossfader, ... Ein Thema für sich
Web-Frontend Damit machts erst richtig Spass, Steuerung von so ziemlich allem
ThOripper Scriptsammlung zum einfachen Einfügen von CDs in die Sammlung (Ripper/FreeDB/Tagger/Renamer/Encoder); nutzt CDParanoia und Lame sowie id3v2, die Teilaufgaben können zeitlich getrennt stattfinden


richtige Adresse


Valid XHTML 1.0! Valid CSS!
Wozu gibt's denn sonst Standards?

Letzte Modifikation dieser Seite: Monday, 07-Mar-2011 08:58:02 UTC