向Java程序添加音乐/声音 [英] Adding Music/Sound to Java Programs
问题描述
我正在制作一些小型Java游戏,我想知道如何在程序中添加声音/音乐.我在youtube上观看了视频,并遵循了提供的代码,但是出现以下错误: java.io.IOException:无法从输入流创建音频流
I'm making some mini java games and I was wondering how I can add sound/music to my programs. I watched a video on youtube and followed the code provided, however I get the following error: java.io.IOException: could not create audio stream from input stream
我注意到其他人用相同的代码问了同样的问题,但答案无济于事.这是代码:
I noticed that others have asked the same question with the same code but the answers were not helpful. Here is the code:
import sun.audio.*;
import javax.swing.*;
import java.awt.event.*;
import java.io.*;
public class Project1
{
public static void main(String[] args)
{
JFrame frame = new JFrame();
frame.setSize(200,200);
frame.setLocationRelativeTo(null);
JButton button = new JButton("Click me");
frame.add(button);
button.addActionListener(new AL());
frame.setVisible(true);
}
public static class AL implements ActionListener{
public final void actionPerformed(ActionEvent e){
music();
}
}
public static void music()
{
AudioPlayer MGP = AudioPlayer.player;
AudioStream BGM;
AudioData MD;
ContinuousAudioDataStream loop = null;
try
{
InputStream test = new FileInputStream("C:\\Music1.wmv");
BGM = new AudioStream(test);
AudioPlayer.player.start(BGM);
//MD = BGM.getData();
//loop = new ContinuousAudioDataStream(MD);
}
catch(FileNotFoundException e){
System.out.print(e.toString());
}
catch(IOException error)
{
System.out.print(error.toString());
}
MGP.start(loop);
}
}
推荐答案
InputStream test = new FileInputStream("C:\\Music1.wmv");
Java Sound不支持WMV&我还没有听说过将支持它的服务提供商接口.您需要将声音转换为较旧的文件类型.
Java Sound has no support for WMV & I've not heard of a Service Provider Interface that will support it. You'll need to convert the sound to an older file type.
这篇关于向Java程序添加音乐/声音的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!