使用AudioPlayer播放音乐

我们知道,AudioClip这个类可以用于播放音乐,但是它是用于applet的,不能再java应用程序中播放音乐。后来,sun公司提供了一个帮助jar文件,这个jar就是AudioPlayer。可以自行下载,在csdn上面就有免c币下载的。用这个就可以在java应用程序中播放音乐了。我自己写了一个测试程序,下面拿出来和大家分享:


package test;

import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;

import sun.audio.*;

public class test extends JFrame implements ActionListener{
	
	JButton btnStart;
	JButton btnStop;
	
	AudioStream as;
	
	public static void main(String[] args){
		new test();
	}
	
	public test(){
		
		FileInputStream fis;
		
		try {
			fis = new FileInputStream("C:\\Users\\lenovo\\Desktop\\潘玮柏、苏芮 - 我想更懂你.AU");                                                                     //似乎只能是AU格式的。反正mp3格式的不行。可以先下载下来mp3格式的,再用ESFAudioConventer这款小工具来转换
			as = new AudioStream(fis);
		} catch (FileNotFoundException e1) {
			e1.printStackTrace();
		} catch (IOException e1) {
			e1.printStackTrace();
		}
		
		JPanel contentPanel = new JPanel();
		
		setContentPane(contentPanel);
		
		btnStart = new JButton("Click here to start music");
		btnStart.setBounds(0,0, 100, 50);
		
		contentPanel.add(btnStart);
		
		btnStart.addActionListener(this);
		
		btnStop = new JButton("Click here to stop the music");
		btnStop.setBounds(0,100, 100, 50);
		
		contentPanel.add(btnStop);
		
		btnStop.addActionListener(this);
					
		setVisible(true);
		setBounds(500, 300, 500, 400);
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	}
	
	public void actionPerformed(ActionEvent event){
		if (event.getSource() == btnStart) {
			AudioPlayer.player.start(as);
		}
		else {
			AudioPlayer.player.stop(as);
		}
	}
}

这里有AudioPlayer的帮助文档。


发布了208 篇原创文章 · 获赞 60 · 访问量 97万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 编程工作室 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览