简单的JMF例子

 

这是一个简单的JMF的例子(Form Sun JMF Documentation)

 

1.需要下载安装JMF,然后配置环境变量。 请做以下设置

On Solaris and Linux:

setenv JMFHOME /home/someuser/JMF2.1.1
setenv CLASSPATH $JMFHOME/lib/jmf.jar:.:${CLASSPATH}:

On AIX:

setenv JMFHOME /usr/JMF2.1.1
setenv CLASSPATH $JMFHOME/lib/jmf.jar:.:${CLASSPATH}:

On Windows:

set JMFHOME=C:/JMF2.1.1
set CLASSPATH=%JMFHOME%/lib/jmf.jar;.;%CLASSPATH%

 

2.在HTML文件中插入一个Applet以承载JMF,当然你也可以用Java Application去承载

[xhtml:nogutter] view plain copy print ?
  1. <html>  
  2. <head>  
  3.   
  4. </head>  
  5. <body>  
  6. <APPLET CODE=ExampleMedia.PlayerApplet   
  7. WIDTH=320 HEIGHT=300>   
  8. <PARAM NAME=FILE VALUE="test.mpg">  
  9. </APPLET>  
  10.   
  11.   
  12. </body>  
  13. </html>  
<html> <head> </head> <body> <APPLET CODE=ExampleMedia.PlayerApplet WIDTH=320 HEIGHT=300> <PARAM NAME=FILE VALUE="test.mpg"> </APPLET> </body> </html>

3.编写PlayerApplet类

  1. PlayerApplet.java:  
  2. package ExampleMedia;  
  3.   
  4. import java.applet.*;  
  5. import java.awt.*;  
  6. import java.net.*;  
  7. import javax.media.*;  
  8.   
  9. public class PlayerApplet extends Applet implements ControllerListener {  
  10.    Player player = null;  
  11.    public void init() {  
  12.       setLayout(new BorderLayout());  
  13.       String mediaFile = getParameter("FILE");  
  14.       try {  
  15.          URL mediaURL = new URL(getDocumentBase(), mediaFile);  
  16.          player = Manager.createPlayer(mediaURL);  
  17.          player.addControllerListener(this);  
  18.       }   
  19.       catch (Exception e) {  
  20.          System.err.println("Got exception "+e);  
  21.       }  
  22.    }  
  23.    public void start() {  
  24.       player.start();  
  25.    }  
  26.    public void stop() {  
  27.       player.stop();  
  28.       player.deallocate();  
  29.    }  
  30.    public void destroy() {  
  31.       player.close();  
  32.    }  
  33.    public synchronized void controllerUpdate(ControllerEvent event) {  
  34.       if (event instanceof RealizeCompleteEvent) {  
  35.          Component comp;  
  36.          if ((comp = player.getVisualComponent()) != null)  
  37.             add ("Center", comp);   
  38.          if ((comp = player.getControlPanelComponent()) != null)  
  39.             add ("South", comp);          
  40.          validate();  
  41.       }  
  42.    }  
  43. }  
PlayerApplet.java: package ExampleMedia; import java.applet.*; import java.awt.*; import java.net.*; import javax.media.*; public class PlayerApplet extends Applet implements ControllerListener { Player player = null; public void init() { setLayout(new BorderLayout()); String mediaFile = getParameter("FILE"); try { URL mediaURL = new URL(getDocumentBase(), mediaFile); player = Manager.createPlayer(mediaURL); player.addControllerListener(this); } catch (Exception e) { System.err.println("Got exception "+e); } } public void start() { player.start(); } public void stop() { player.stop(); player.deallocate(); } public void destroy() { player.close(); } public synchronized void controllerUpdate(ControllerEvent event) { if (event instanceof RealizeCompleteEvent) { Component comp; if ((comp = player.getVisualComponent()) != null) add ("Center", comp); if ((comp = player.getControlPanelComponent()) != null) add ("South", comp); validate(); } } }

4.编译javac PlayerApplet.java以产生PlayerApplet.class

 

5.打开index.html可以看到视频。

 

PS:目录结构

test---------index.html

        |

        --------test.mpg

        |       

        --------ExampleMedia----------PlayerApplet.class

你可能感兴趣的:(exception,XHTML,null,import,documentation,applet)