Translate

Donnerstag, 20. November 2008

DTD & XML & STUDIO = Toll?

Was viele früher oder später interessiert, ist mal endlich eine Übersicht zu schaffen, um dem Chaos aller Sounds und Samples Herr zu werden, die man in aufwendiger Arbeit gesammelt, gebackuped und bearbeitet hat. Das Chaos fängt bei Synthesizer-Einstellungen an und hört bei der 47 bearbeiteten Version einer ehemaligen BassDrum einer Sample-CD auf. Wie kann das Chaos endlich übersichtlicher gestaltet werden?

Emagic hatte vor vielen Jahren ebenfalls die Idee eines zentralen Verwaltungstools, mit dem der Gerätepark erkannt wird und wo in Listen die programmierten Sounds gespeichert wurden - ein DataBulk in MIDI-Form konnte so einem Gerät zugeordnet und alles zentral gespeichert werden - Datenbanken sei Dank! Doch heute stellt sich die reale Studiwelt viel komplexer (statt viel einfacher wie früher geglaubt) da - Es gibt weiterhin den MIDI-Gerätepark (auch den ein oder anderen analogen Schatz), dazu sind massenweise Sampling-CDs und deren bearbeitete Schwestern und Brüder gekommen sowie etliche virtuelle Synths die nun den Computer zumüllen und Presets beherbergen, die kuzrz nach der Speicherung schon wieder in Vergessenheit geraten.

Das schöne an XML und den DTD's (Document Type Definition) ist eine eigene Struktur zu entwerfen, die untereinander verlinkt werden kann (XLink/XPath) und Verweise auf weitere Knotenpunkte beinhalten können (XPointer). Es ist also im Grunde einfach, eine Studio-Struktur abzubilden, die aus Elementen (Geräten) und deren Verbindungen (Kabel) anhand von hierarchischen Strukturen (XPath/XPointer) abzubilden. Toll, oder?

Nicht ganz...es entstehen nackte, ziemlich unansehnliche Dokumente mit vielen Knotenpunkten, die zwar irgendwie alle miteinander zu tun haben, aber das ganze weder hübsch noch real brauchbar ist. Als "Make-Up" dient dafür XSLT (was in HTML CSS ist) um ein ansehnliches Layout unseren Dokumenten zu verleihen. Zudem können tatsächlich in XML Routinen geschrieben werden, um Knoten zu suchen und deren Elemente auszuspucken (Childs und Parents!). Element "Sampling-CD" enthält demnach sogenannte "Childs" also Kinder wie "Bagla Trombones III" oder "British Horns IV". Deren Unterelemente wiederum sind "Reedbox_Trombone_IV.wav" mit Zusatzinfos wie "Track_no", "Length" oder "BPM". Jetzt toller??

Immer noch nicht....was bleibt ist die Vielzahl der im Studio verwendeten "Übertragungstechniken" ob es analoge Audiosignale, Control-Voltages (CV), oder digitale Signale wie AES/EBU, SPDIF oder ADAT opt. sind - leider können die Knotenpunkte aber keine Informationen tragen. Was allerdings genutzt werden kann, um Eingänge und Ausgänge zu beschreiben, sind Attribute, die zu den Elementen gehören. Also hat das Gerät "ALESIS IO" Unterelemente wie "Eingang" oder "Ausgang". Ein Attribut des Ausganges wäre also "SPDIF="TRUE" CONNECT="TRUE" DEVICE="05". In der XSLT-Datei wird dem DEVICE Nr.05 das Bildchen eines Soundkarte zugeordnet und schon wissen wir die Verbindung, die Art und die beteiligten Geräte. Na, nun endlich toll??

Nee...tja dann fehlt warscheinlich der eigentliche Punkt - XML ist für das Web wie der Werkzeugkasten für die Krankenschwester = alles drin und viele Möglchkeiten, aber keinen trifftigen Grund den Kasten zu benutzen.
Und XML ist aktuell von fast allen Programmiersprachen bearbeitbar! Es ist also am Ende egal, welches Programm ich für die Darstellung verwende - wenn die Datenstruktur (also die DTD) einmal programmiert wurde, kann das Dokument von jeglichen Programmiersprachen durchkämmt und bearbeitet werden. Stellt euch doch mal Vista vor, auf dem ein Widget nicht nur eure aktuelle Verkabelung übersichtlich darstellt und ihr Änderungen im Studio-Setup per Drag&Drop umsetzen könnt - auch Updates und Infos zu den eigenen Geräten können aus dem Internet geladen und angezeigt werden - und Kollegen können sehen, ob bestimmte Geräte gerade im Gebrauch sind oder nicht (um sie dementsprechend von anderer Stelle aus anzusteuern - Virtual Routing!). Tja...war auch nur so ne Idee...