Java Media Framework

Versiunea actuală a paginii nu a fost încă examinată de colaboratori experimentați și poate diferi semnificativ de versiunea revizuită la 21 august 2015; verificările necesită 9 modificări .
Java Media Framework
Tip de cadru multimedia și bibliotecă de funcții
Autor Microsisteme solare
Dezvoltator Microsisteme solare
Scris in Java
Prima editie 1997
Platformă hardware multiplatformă
ultima versiune
Licență acord de utilizare [1]
Site-ul web oracle.com/technetwork/j…

Java Media Framework ( ing.  Java multimedia framework ) este o bibliotecă care facilitează dezvoltarea de programe care funcționează cu audio și video.

Suportul pentru codificarea și decodarea MP3 a fost adăugat în a doua versiune a bibliotecii, dar mai târziu, în 2000, a fost eliminat din distribuție. În 2004, a fost publicat un add-on pentru redarea datelor MP3. Fișierele compilate sunt disponibile sub diferite licențe, iar codul sub SCSL .

Versiunea actuală vine cu un set de fișiere JAR și scripturi pentru rularea aplicațiilor folosind JMF:

Principii de bază

Biblioteca rezuma gestionarea media prin DataSourceimportul și DataSinkexportul media. Această abordare permite dezvoltatorilor să lucreze în mod egal cu toate formatele de date acceptate de JMF.

Clasa Manageroferă metodele statice cel mai frecvent utilizate pentru a lucra cu biblioteca.

Critici și alternative

Unul dintre principalele dezavantaje ale bibliotecii este lipsa suportului pentru multe formate moderne. De exemplu, toate platformele Java nu pot reda MPEG-2 , MPEG-4 , Windows Media , RealMedia , majoritatea videoclipurilor QuickTime , datele Flash mai vechi de 2, iar redarea MP3 necesită un supliment [4] . Și majoritatea îmbunătățirilor de performanță sunt disponibile numai pentru Linux , Solaris și Windows .

Alternative

Nume Descriere Stat Licență Site-ul web
Libertatea media în Java (FMJ) implementare JMF open source nu a fost actualizat din 2007 - [unu]
Java Sound API - lansat în aprilie 2004 - [2]
QuickTime pentru Java dezvoltat de Apple nedezvoltat - -
Setul de instrumente IBM pentru MPEG-4 - - - [3]
Jffmpeg Port parțial al FFMPEG către Java pentru utilizare cu JMF neactualizat din 2006 - [patru]
jvlc - nedezvoltat - [5]
vlcj Vă permite să încorporați playerul VLC într-o aplicație AWT sau Swing activ - [6]
gstreamer-java bibliotecă pentru a utiliza gstreamer 0.10 în Java cu greu se dezvoltă - [7]
Cortado Ogg Vorbis și Theora Java applet player - - [opt]
Directshow <> Java Wrapper - - - [9]
Fobs4JMF - nedezvoltat - [zece]
Biblioteca MP3 JLayer - - - [11] Arhivat pe 12 septembrie 2008 la Wayback Machine
Xggler - nedezvoltat GPLv3 sau LGPL [12]
Video4Linux4Java bibliotecă pentru a accesa v4l și v4l2 neactualizat din august 2013 GPLv3 [13]

Exemplu

Acest program afișează dialogul de deschidere a fișierului AWT și încearcă să redea fișierul selectat.

import javax.media.* ; import java.io.File ; import java.awt.* ; clasa publică TrivialJMFPlayer extinde Frame { public static void main ( String [] args ) { try { Frame f = new TrivialJMFPlayer (); f . pachet (); f . setVisible ( adevărat ); } prinde ( Excepție e ) { e . printStackTrace (); } } public TrivialJMFPlayer () aruncă java . io . IOException , java . net . MalformedURLException , javax . media . MediaException { FileDialog fd = new FileDialog ( this , "TrivialJMFPlayer" , FileDialog . LOAD ); fd . setVisible ( adevărat ); Fișier f = fișier nou ( fd . getDirectory (), fd . getFile ()); Jucător p = Manager . createRealizedPlayer ( f . toURI (). toURL ()); Componenta c = p . getVisualComponent (); adaugă ( c ); /*acest cod nu funcționează =P*/ p . începe (); } }

Majoritatea textului programului este proiectat să funcționeze cu AWT, în timp ce doar 2 linii folosesc JMF.

  • Manager.createRealizedPlayer()creează implicit un fișier din URLDataSource -ul primit , cu care .Player
  • Metoda getVisualComponent()creează Componentun , care poate fi folosit ulterior ca parte a interfeței grafice . Dacă sunt necesare controale de redare, atunci trebuie să apelați suplimentar metoda getControlPanelComponent(), care va crea un obiect care poate fi adăugat și la interfața programului.

Acest exemplu este la fel de potrivit pentru toate tipurile de suporturi suportate de biblioteca JMF.

Vezi și

Note

  1. http://www.oracle.com/technetwork/java/javase/license-135825.html
  2. Ghidul utilizatorului JMStudio . Consultat la 15 februarie 2015. Arhivat din original pe 15 februarie 2015.
  3. Ghidul utilizatorului JMFRegistry . Consultat la 15 februarie 2015. Arhivat din original pe 15 februarie 2015.
  4. JMF 2.1.1 - Formate acceptate . Consultat la 14 februarie 2015. Arhivat din original pe 14 februarie 2015.

Link -uri

  • Un ghid pentru redarea audio și video folosind JMF