Java Media Framework Theorie und Implementierung von Stefan Baum Themen – Einführung JMF – High-Level-Architektur und Verarbeitungsprozess – Wiedergabe (Presentation) zeitbasierter Medien – Bearbeiten (Processing) zeitbasierter Medien – Aufnehmen (Capturing) zeitbasierter Medien Einführung – Multimedia-Erweiterung des Java SDK – Einbinden zeitabhängiger Medien in Applikationen / Applets – Integrierte Real-Time-API – Aufnehmen, Speichern von Mediendaten – Manipulation von Mediendatenströmen – Plug-In Architektur High-Level-Architektur - Abstraktion auf hoher Ebene ähnlich zu analogem Verfahren Zeit-, Daten-, Eventmodell 3 Manager Verarbeitungsprozess - Datei lesen, Aufnahmequelle, Netzwerk - Konvertierung, De- Kompression, Effekte, Filter - Datei schreiben, Bildschirm, Netzwerk Wiedergabe zeitabhängiger Medien - Klasse Player player = Manager.createPlayer(p), .createRealizedPlayer(p) - Events entsprechend Status des Players - Wichtig: RealizeCompleteEvent - Kontroll- und Steuerelemente Control[] controls = player.getControls(); - Steuereinheit, Visuelle Komponente, Lautstärkeregler, Dateiinformation Phasen der Konfiguration Bearbeiten zeitabhängiger Medien - Klasse Processor proc = Manager.createProcessor(p) - Alle Tracks einer Datei proc.getTrackContols() - Format, Kodierung und Darstellung festlegen tc.setFormat(f), tc.setCodecChain(c) tc.setRenderer(r) - Ausgabeformat bestimmen proc.setContentDescriptor(contentDescriptor) Unterklasse von ContentDescriptor ist FileTypeDescriptor Aufnahme zeitabhängiger Medien - Klasse CaptureDeviceInfo CaptureDeviceManager.getDevice(„deviceName“) - Processor erzeugen – mit ProcessorModel und Manager.createRealizedProcessor(pm) - Datei schreiben – Datenquelle erzeugen op = processor.getDataOutput() – Zieldatei angeben ml = new MediaLoacator(„file://demo.wav“) – Datensenke erzeugen Manager.createDataSink(op, ml) Quellen - Java Media Framework API Guide - Internet: http://java.sun.com/products/java-media/jmf/index.html Quellen • Java Media Framework API Guide • Internet: http://java.sun.com/products/java-media/jmf/index.html