我正在尝试编写一个小程序来读取一个wav文件并发送输出,好像它来自我的麦克风.不幸的是,我对声音API没有多少经验.
背景:我基本上想要实现的是一个在我进行语音聊天时播放声音的节目(即Teamspeak,Ventrilo).为了让它现在起作用,我必须将录音设备切换到“你听到了什么”,播放声音,然后切换回麦克风.该程序应模拟麦克风的输入.
到目前为止,我只能播放声音.我想我只需要一个不同的SourceLine?
public class Player {
private final int BUFFER_SIZE = 128000;
private AudioInputStream audioStream;
private AudioFormat audioFormat;
private SourceDataLine sourceLine;
public void playSound(File soundFile) {
try {
audioStream = AudioSystem.getAudioInputStream(soundFile);
} catch (Exception e) {
e.printStackTrace();
System.exit(1);
}
audioFormat = audioStream.getFormat();
DataLine.Info infoIn = new DataLine.Info(SourceDataLine.class,
audioFormat);
try {
sourceLine = (SourceDataLine) AudioSystem.getLine(infoIn