java音乐播放,找不到AudioStream

长桥卧雪 2015-05-06 03:18:08
各位前辈好。
我想用java实现一个播放小音频的功能,代码如下:
try {
FileInputStream fileInputStream = new FileInputStream(new File("D:\\test\\note1\\1.mp3"));
AudioStream as = new AudioStream(fileInputStream);
AudioPlayer.player.start(as);
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

用的是eclipse。
起初,AudioStream无法识别,报错“error”,在AudioStream下面划了红线:
Access restriction: The type 'AudioStream' is not API (restriction on required library 'E:\jdk\jdk1.8.0_40\jre\lib\rt.jar')
后来百度之后改了eclipse的配置,改成了报为"warning",编译可以通过了(虽然问题依然存在),但是运行的时候报错了:
java.io.IOException: could not create audio stream from input stream
at sun.audio.AudioStream.<init>(AudioStream.java:80)
at PlayMusic.main(PlayMusic.java:47)

我看了一下jar包,里面是没问题的。不知道为什么会出现这种问题,求帮助
...全文
1052 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
长桥卧雪 2015-05-07
  • 打赏
  • 举报
回复
if(img != null){
			bufferedImage = new BufferedImage(img.getWidth(this), img.getHeight(this), BufferedImage.TYPE_INT_ARGB);
			g2d = bufferedImage.createGraphics();
			g2d.drawImage(img, 0, 0, this);

			for(int i = 0;i < img.getWidth(this);++i){
				for(int j = 0;j < img.getHeight(this);++ j){
					int pixel = bufferedImage.getRGB(i, j);
					int a = (pixel & 0xff000000) >> 24;
					int r = (pixel & 0xff0000) >> 16;
					int g = (pixel & 0xff00) >> 8;
					int b = (pixel & 0xff);
					int grayPixel = (r+g+b)/3;
					Color c = new Color(grayPixel, grayPixel, grayPixel);
					bufferedImage.setRGB(i, j, c.getRGB());
				}
			}
		}
傻傻de点点 2015-05-06
  • 打赏
  • 举报
回复
如果我没记错的话,AudioStream好像只能播放wav,mid,au,你放个MP3,肯定会出错啊。你要放MP3的话,只能用第三方API,我记得有个叫Java Media Framework的,不过这玩意儿好久没用了,都忘得差不多了。。
长桥卧雪 2015-05-06
  • 打赏
  • 举报
回复
用命令行编译可以通过,运行时也不会出现问题。 不过会报出警告:“AudioStream”是内部专用API,可能会在未来版本中删除。 所以java中最好用什么方法播放音频啊?
长桥卧雪 2015-05-06
  • 打赏
  • 举报
回复
找了好多次度娘,发现这应该是最常见,java中最喜闻乐见的音频播放方式了吧?各位前辈求帮助啊。或者有其他的播放方式也可以指导下(不过我这里AudioPlayer这一个类也有一样的问题

62,634

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧