首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

音频文件反复播放 - 三种方法

2012-10-10 
音频文件重复播放 - 三种方法为了这个纠结了一个下午,现在总结一下我所知道的三种常用的播放音频的方法;其

音频文件重复播放 - 三种方法

为了这个纠结了一个下午,现在总结一下我所知道的三种常用的播放音频的方法;

其中JDK本身自带的有两个,用JMF实现一个.

?

1.用? Applet 实现:(最简单的方法)

???

 AudioClip player = Applet.newAudioClip(url);     AudioClip 介绍: AudioClip 接口是用于播放音频剪辑的简单抽象。多个 AudioClip 项能够同时播放,         得到的声音混合在一起可产生合成声音。          重复播放:player.loop();//一句就搞定了

???????????
?????????
2.通过JDK自带的audio实现

??

sun.audio.AudioPlayer;//播放器sun.audio.AudioStream;//音频流    do {  InputStream is = url.openStream();// 获得音乐文件的输入流  AudioStream as = new AudioStream(is);//创建音频 流  AudioPlayer.player.start(as);//开始播放  while(loop&&as.available() > 0 );//如果要实现重复,必须要停在这里,不然会一直只放开头,因为一直在重复读取 } while (loop);    

?

?

3.通过JMF实现

?

Player player = Manager.createPlayer(url);//创建播放器对象player.addControllerListener(new ControllerListener() {//加上对应的控制监听器 @Override public void controllerUpdate(ControllerEvent e) {  // TODO Auto-generated method stub  if (e instanceof EndOfMediaEvent) {//如果播放到音频文件末尾,则再次开始播放   player.setMediaTime(new Time(0));   player.start();  }  if (e instanceof PrefetchCompleteEvent) {//Prefetch是指播放器的一种状态   player.start();  } }}); player.prefetch();//这个是用来触发上面监听器对应的第二种时间,以开始播放音频文件

?? JMF?工具包在下面的附件里,如果需要可以直接下载.

热点排行