简体   繁体   English

使用Audioplayer播放WAV文件

[英]Play WAV file using Audioplayer

I am trying to write a short program to play a wave sound in Java, but I seeing many exceptions. 我正在尝试编写一个简短的程序来用Java播放波形声音,但是我看到了很多异常。 Maybe someone can help me? 也许有人可以帮我吗?

import java.io.*;
import sun.audio.*;
import sun.audio.AudioPlayer;  

@SuppressWarnings("restriction")
public class Main {
    public static void main(String[] args) throws IOException {
        String wav_file = "C:/Users/Patrick/workspace/WaveFreq/zelda_01.wav";
        InputStream in = new FileInputStream(wav_file);
        AudioStream audio = new AudioStream(in);

        AudioPlayer.player.start(audio);
    }
}

And this is the exception: 这是一个例外:

Exception in thread "main" java.io.IOException: could not create audio stream from input stream 线程“主”中的异常java.io.IOException:无法从输入流创建音频流
at sun.audio.AudioStream.(Unknown Source) 在sun.audio.AudioStream。处(未知来源)
at Main.main(Main.java:16) 在Main.main(Main.java:16)

Hope this helps: 希望这可以帮助:

import java.io.File;
import javax.sound.sampled.*;
import javax.sound.sampled.DataLine.Info;

public class AudioFilePlayer {
    public static void main(String[] args) {
        try {
            String filePath = "C:/Users/Patrick/workspace/WaveFreq/zelda_01.wav";
            AudioInputStream inputStream = AudioSystem.getAudioInputStream(new File(filePath));
            AudioFormat format = inputStream.getFormat();
            DataLine.Info info = new DataLine.Info(Clip.class, format);
            Clip clip = (Clip) AudioSystem.getLine(info);

            clip.open(inputStream);
            clip.start();
        } catch (Exception e) {
            System.out.println("Error with playing sound.");
            e.printStackTrace( );
        }
    }
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM