cygwin Experimente

Meine zuletzt gemachten Erfahrungen mit Mediatomb unter Linux (OpenSuse) und OpenSolaris im Zusammenspiel mit meiner PS3 musste ich natürlich im Freundeskreis an den Mann bringen. Nicht jeder, der prinzipiell offen für Opensource ist, nutzt aber deshalb zwangsläufig ein OpenSource-Betriebssystem. So war die Frage “Läuft das auch unter XP?” eigentlich vorhersehbar.

Warum eigentlich nicht, dachte ich mir und erinnerte mich dunkel an die Software Cygwin, mit der ein Ex-Azubi früher ständig bastelte. Cygwin emuliert die UNIX-API unter Windows und stellt die GNU-Tools sowie X-Windows unter Windows zur Verfügung. Bei Wikipedia war dann auch gleich eine Anleitung verlinkt, wie die Installation und Grundkonfiguration vorzunehmen ist. Während der Installation kann man die Softwarepakete einzeln auswählen oder einfach alles installieren. Aus Bequemlichkeit habe ich letzteres durchgeführt, was dann zu 900MB an Softwarepaketen führt, die installiert etwa 5GB auf der Platte belegen. Wichtig für mich ware vor allem Entwicklungstools wie gcc und automake.

Für den aktuellen Mediatomb 0.12 gibt es ein tolles Readme in dem die nötigen Voraussetztungen beschrieben werden (Abschnitt “2. requirements”). Hier werden die wichtigsten Abhängigkeiten beschrieben sowie deren Aufgabe für die Funktionaliät von Mediatomb. Einige davon sind optional, was dann aber Features ausschaltet. Einige weitere optionale Abhängigkeiten erfährt man in der Beschreibung der configure-Parameter (Abschnitt “3.2 configure options” und folgende), die leider nicht vollstänfig in der readme auftauchen, wie z.B. libdvdnav. Ein “./configure –help” beim Sourcecode hilft hier weiter.

Wichtige Abhängigkeiten:

  • sqlite – ich bevorzuge mysql aus Performancegründen
  • mysql (nicht in cygwin-packages enthalten)
  • expat
  • zlib
  • file
  •  js (nicht in cygwin-packages enthalten)
  • taglib (nicht in cygwin-packages enthalten)
  • id3lib (nicht in cygwin-packages enthalten) wird nicht benötigt wenn taglib vorhanden
  • libexif (nicht in cygwin-packages enthalten)
  • curl
  • libextractor (nicht in cygwin-packages enthalten) – zu langsam für größere Datenbestände, deshalb lasse ich das weg…
  • ffmpeg (nicht in cygwin-packages enthalten)
  • libffmpegthumbnailer (nicht in cygwin-packages enthalten)

mysql

Mysql liess sich ohne Probleme kompilieren und Starten. Auch das Anlegen der leeren Mediatomb-Datenbank war fehlerfrei.

js (Mozilla Spidermonkey)

Das Javascript-Paket “Spidermonkey” aus der Mozilla-Umgebung war ziemlich problematisch. Die einzeln verfügbare Version 1.7 hat kein configure oder eine Config-Datei für autoconf, das manuelle Kompilieren liefert nur zum Teil die gewünschten Ergebnisse. Damit lässt es sich nicht für Mediamtomb verwenden. Wenn man das komplette (neuere) Mozilla-Paket herunterlädt enthält dieses auch configure. Damit sollte es besser klappen. Ich hatte aber keine Lust mehr das zu testen…

taglib

 Taglib war das Musterbeispiel des Kompilierens.

libexif

keine besonderen Vorkommnisse…

ffmpeg

Hier kann man auch noch viel Arbeit in die Erfüllung von optionalen Abhängigkeiten investieren, was in erster Linie die Features beim Encoding erhöht. Wichtig ist hier, dass ffmpegthumbnailer best. configure-Parameter von ffmpeg erwartet! Deshalb muss z.B. der Scaler aktiviert sein.

ffmpegthumbnailer

Wie bereits erwähnt setzt ffmpegthumbnailer einiges bei ffmpeg voraus. Passt das Alles klappt auch hier das Kompilieren.

mediatomb

O.k. o.k. … kurz gesagt, eine einzige Katastrophe…

ffmpeg und ffmpegthumbnailer werden aus mir nicht nachvollziehbaren Gründen nicht erkannt, deshalb deaktiviere ich diese kurzerhand um weiter zu testen.

Danach der GAU beim make:

../src/tools.cc:1055:6: #error !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
this function is not finished for Cygwin

Das war also das Ende des Themas mit Mediatomb unter cygwin ;)

Evtl. werde ich mal bei Gelegenheit ins Mediatomb-Forum posten. Mit dem Entwickler Jin hatte ich schon Kontakt wegen Mediatomb und OpenSolaris. Er hat einen recht pragmatischen Ansatz.: zunächst einmal die Masse befriedigen… D.h. exotische Betriebssysteme und Streamingclients dürfen etwas länger warten. Da er deshalb bereits eine einige Workarounds für die PS3 gebaut hat finde ich diesen Ansatz lobenswert ;)

P.S.

Zumindest habe ich bei dieser Aktion gelernt wie ffmpeg kompiliert werden muss, damit auch ffmpegthumbnailer funktioniert.

This entry was posted in Allgemein and tagged , , , , . Bookmark the permalink.

2 Responses to cygwin Experimente

  1. querdenker says:

    Hallo :)

    Hast du schon das heir gesehen?
    http://ps3mediaserver.blogspot.com/

    Wäre vielleicht einen Blick wert :)

  2. otmanix says:

    Das werd ich mir gleich mal ansehen… Danke für den Tip!

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

*

Du kannst folgende HTML-Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>