Musikplayer

Hin und wieder habe ich in der letzten Woche Zeit gefunden, um an meinem Musikplayer weiter zu werkeln. Der Grund, warum ich das Projekt wieder hervorgekramt habe ist, dass ich vor einiger Zeit sowohl auf dem Notebook als auch auf meinem PC komplett auf Linux Mint umgestiegen bin und Windows nur noch ein Schattendasein fristet und ich deshalb wieder aufs neue feststellen muss, dass die Linux-Musikplayer leider nicht meinen Geschmack treffen und Foobar2000 über Wine auch nicht sonderlich gut läuft.

Einen eigenen Musikplayer zu entwickeln ist allerdings auch nicht ganz so einfach. Vor allem die Grund-Funktionalität, nämlich das Abspielen einer mp3 ist nicht so ohne weiteres hinprogrammiert, zumindest wenn man wie ich wenig Ahnung von C oder C++ hat, denn mit bloßem JavaScript lässt sich keine Mp3 abspielen. Da mein Player aber in jedem Fall frei und OpenSource sein wird, ergeben sich einige Vorteile bei der Entwicklung. Ich kann auf Programmcode anderer freier Projekte zurückgreifen und mir anschauen, wie andere Leute das machen.

Es gibt ein paar ähnliche Projekte, die ebenfalls auf Mozillas XUL aufbauen. Hier ist als erstes natürlich Songbird zu nennen, der jedoch von seinem Konzept und der Funktionalität her nicht meinen Vorstellungen entspricht. Es war jedoch trotzdem interessant, den Quellcode zu lesen, allerdings ist es nicht so einfach, den Überblick zu behalten bei der großen Anzahl an Funktionen, die Songbird mitbringt.

Es existieren aber noch weitere freie Multimedia-Player auf XUL-Basis. “XULPlayer” ist ein universeller Video- und Audio-Player, der auf der MPlayer-Bibliothek aufbaut. Leider wird der XULPlayer auch nur für Windows entwickelt.

Eine weitere Alternative wäre XULMusic, der noch am ehesten meinen Vorstellungen entspricht, wenn es darum geht, auf dem Code aufzubauen. Leider ist genau dieser nicht mehr Verfügbar. Zwar kann man auf den XUL- und JavaScript-Code direkt zugreifen, da dieser ja nicht kompiliert wird, jedoch auf den Code der zugrunde liegenden GStreamer-Bibliothek kann nicht so einfach zu gegriffen werden. Leider funktioniert die Version nicht korrekt, was vermutlich daran liegt, dass dieses Projekt schon ein paar Jahre ohne Aktualisierungen auf dem Buckel hat.

Aktuell teste ich deshalb einige Varianten, um innerhalb einer XUL-Applikation Audio-Dateien abzuspielen und dies per JavaScript zu steuern.