Je nach Format des aktuellen Titels und je nach gewähltem Benutzerszenario muss eine geeignete Decoder-Komponente aktiviert und der entsprechende Datenpfad für die benötigte Zone bereitgestellt werden. Die große Anzahl unterschiedlicher Formate und die Forderung, neue Decoder mit Hilfe eines Software-Updates im System verfügbar zu machen, verbieten hier den monolithischen Ansatz traditioneller CD- und MP3-Abspielgeräte. Stattdessen liegt der MME eine auf Filtergraphen basierende Architektur zugrunde. Ein Filter ist ein Software-Modul mit definiertem Ein- und Ausgang, welches eine dedizierte Teil-
aufgabe in der Gesamtverarbeitung des Medien-Stroms behandelt. Beispiele hierfür sind:
Die Filterbausteine lassen sich aufgrund ihrer Schnittstellen zu komplexeren Graphen-Strukturen verketten. Jedes darzustellende Benutzerszenario lässt sich mit einem derartigen Filtergraphen implementieren. Multizone-Szenarien werden durch Mehrfach-Instanzierung der Filtergraphen abgebildet. Die MME-Middleware stellt die Filter und die Mechanismen zu deren Steuerung zur Verfügung. Ein effizientes Speicher-Management verhindert, dass Daten-Pakete zwischen einzelnen Filterknoten unnötig vom Ausgang eines Filters zum Eingang des Nachfolgers kopiert werden.
Filtergraphen sind eine bewährte Architektur zur Behandlung überwiegend linearer Abläufe mit eindeutigem Datenfluss. Auch im Multimedia-Umfeld werden Filtergraphen bereits erfolgreich eingesetzt [2]. Während im PC-Umfeld inzwischen genügend CPU-Leistung auch für komplexe Video-Decoder bei hohen Display-Auflösungen (VC1, MPEG4) vorhanden ist, sind eingebettete Infotainment-Systeme, insbesondere im automobilen Umfeld, nach wie vor auf externe Beschleuniger angewiesen, um die CPU bei Video- und Mehrkanal-Audio-Szenarien zu entlasten. Dies erfordert einen besonders effizienten Kommunikationsmechanismus zwischen CPU und externem DSP. Die Multimedia-IPC (Inter Processor Communication) der MME berücksichtigt die besonderen Anforderungen an Multimedia-Anwendungen wie Latenzzeiten und Interrupt-Lasten: Wenn der externe DSP einen Eingangsbuffer von 16 Kbyte aufweist, bedeutet dies bei einem MP3-Strom mit einer Bitrate von 128 Kbit/s eine Pufferzeit von 1 s, bis der Audio-Strom abreißt. Hochwertige DVD-Audio-Medien mit Mehrkanal-Ton weisen Bitraten bis 10 Mbit/s auf, was die Pufferzeit bereits auf 27 ms sinken lässt.
Eine wichtige Eigenschaft der MM-IPC ist die Hardware-Transparenz. Dies bedeutet, dass einzelne Filterknoten auf externe Hardware ausgelagert werden können, ohne dass sich der restliche Filtergraph ändert. Dies wird durch einen DSP-Link-Filter erreicht, der das gleiche Filter-API wie andere Filter bedient, aber intern den Datenstrom mit Hilfe der MM-IPC an einen externen DSP zur Decodierung weiterleitet (Downlink). Zur Realisierung eines Encoders wird zusätzlich der encodierte Datenstrom aus dem DSP wieder in die CPU geleitet (Uplink).
Erst diese Hardware-Transparenz ermöglicht die Skalierung der Architektur über unterschiedliche Plattformen. Im unteren und mittleren Segment wird oft keine Video- und Mehrkanal-Audio-Funktion gefordert, so dass auf einen externen Decodier-DSP verzichtet werden kann. Durch Austausch der DSP-Link-Filter durch Decodier-Filter lassen sich einfache Audio-Funktionen in Software realisieren, ohne dass die gesamte Filter-Architektur verändert werden muss.