您的位置:程序门 -> java -> j2se / 基础类



请问怎样用java代码实现播放媒体流数据?谢谢!!


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


请问怎样用java代码实现播放媒体流数据?谢谢!!
发表于:2007-03-20 19:31:19 楼主
请问怎样用java代码实现播放媒体流数据?谢谢!!
发表于:2007-03-20 20:14:051楼 得分:0
有开源的项目可以用   www.sourceforge.org
自己找找看吧
发表于:2007-03-20 20:34:292楼 得分:0
javax.media
发表于:2007-03-20 20:56:523楼 得分:0
用jmf可以做....jmf(java   media   framework)是sun   公司提出的java   媒体架构。它是对应java   2平台标准版(j2se)的一种可选用的应用编程接口(api)。
使用jmf来实现在一个applet中播放本地mpeg格式视频文件:
1.     确定视频文件的位置

medialocator   mrl=new   medialocator(new   java.lang.string(“文件路径和文件名”));

 

2.     利用manager.createplayer创建一个播放器(player)

player   player=null;

player=manager.createplayer(mrl);

 

3.     使用addcontrollerlistener将此applet注册为播放器的控制器监视器。注册此监视器的目的是只要播放器载入一个媒体事件,那么该applet将会自动调用controllerupdate方法。

player.addcontrollerlistener(this);

 

4.     播放

player.start();

 

5.     停止与释放

player.stop();

player.deallocate();//调用此方法可以释放所有独占资源,这样可以避免其它播放器无法启动。

 

6.     关闭

player.close();//释放所有资源。

 

7.      

①controllerupdate方法可以通知applet对播放器的事件作出反应。

②一个播放器的用户接口容器只有在该播放器的状态为realized时才能显示。

③用户接口容器包括:可视容器(visualcomponent)和控制面板容器(controlpanelcomponent)。

源代码:

playerapplet.java

 

import   java.applet.applet;

import   java.awt.borderlayout;

import   java.awt.component;

 

import   javax.media.controllerevent;

import   javax.media.controllerlistener;

import   javax.media.manager;

import   javax.media.medialocator;

import   javax.media.player;

import   javax.media.realizecompleteevent;

 

public   class   playerapplet   extends   applet   implements   controllerlistener   {

              /**

                *   playing   an   mpeg   movie   in   an   applet

                */

              private   static   final   long   serialversionuid   =   1l;

 

              player   player   =   null;

 

              public   void   init()   {

                            setlayout(new   borderlayout());

                            medialocator   mrl   =   new   medialocator(new   java.lang.string(

                                                        "file:///d:/dvp/workspace/javasound/foo.wav "));

                           

                            try   {

 

                                          player   =   manager.createplayer(mrl);

                                          //system.out.println( "test1: "   +   player);

                                          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();

                            }

              }

}
发表于:2007-03-20 21:08:164楼 得分:0
applet里面的播放器audioclip好象格式不支持流镁体的,


快速检索

最新资讯
热门点击