使用JMF在java上使用媒体资源(播放音频等)

这篇文章以音频为例。

目标是在java上播放mp3作为游戏的背景音乐。

注意:JMF的mp3播放只支持32位,所以要使用32的jre和32位的eclipse才可以。

如果出现不能播放的话,不妨查看一下是否是32的jre。


首先下载JMF,http://www.oracle.com/technetwork/java/javase/download-142937.html

下载完成以后直接安装,安装就不多说了,类似于安装jre。

当然也要配置JMF,配置方法也类似于jre。

然后再eclipse的项目中需要导入安装完的JMF中的lib文件夹里的文件。

具体是这么做的

使用JMF在java上使用媒体资源(播放音频等)_第1张图片

首先新建一个文件夹,用来存放JMF中lib文件夹中的jar文件

使用JMF在java上使用媒体资源(播放音频等)_第2张图片

然后再这个文件夹下右键导入

然后再接下来的窗口选择文件系统,之后就不截图了,很简单的

使用JMF在java上使用媒体资源(播放音频等)_第3张图片

导入以后就把这些jar都添加至构建路径。


然后就可以了。


这里贴一个示范。

package Audio;
import javax.media.bean.playerbean.MediaPlayer;

public class MP3 {
    private String str;
    private MediaPlayer playMP3;
    
    public static void main(String[] args){
    	MP3 testMP3 = new MP3("d:/bgm.mp3");
    	testMP3.play();
    }
    
    public MP3(String str){
    	this(str,true);
    }
   
    public MP3(String str,boolean IsLoop){
        this.str = str;
        playMP3 = new MediaPlayer();
        playMP3.setMediaLocation("file:/"+str);
        playMP3.realize();
        playMP3.setPlaybackLoop(IsLoop);
    }
   
    public void play(){
        try{
	        playMP3.start();
	        System.out.println("开始播放" + str);
        }
        catch(Exception e){
            e.printStackTrace();
        }
    }
   
    public void stop(){
        playMP3.stop();
    }
   
    public String getSTR(){
        return str;
    }
   
    public void setSTR(String str){
        this.str = str;
    }
}
这份代码是参考另一个博主的,但是我忘记原地址了,我就不要脸的直接贴了。



顺便添上我加入了音效后的中国象棋:https://github.com/FieldSoft-HelloClyde/ChineseChess/



你可能感兴趣的:(使用JMF在java上使用媒体资源(播放音频等))