我正在尝试将wav声音文件播放到skype调用中。我正在使用javax.sound,首先我列出了我系统中的所有混音器:
0,Primary Sound Driver
1,Speakers (High Definition Audio Device)
2,Digital Audio (S/PDIF) (High Definition Audio Device)
3,Digital Audio (S/PDIF) (High Definition Audio Device)
4,Primary Sound Capture Driver
5,Microphone (High Definition Aud
6,Digital Audio (S/PDIF) (High De
7,Java Sound Audio Engine
8,Port Speakers (High Definition Audio
9,Port Digital Audio (S/PDIF) (High De
10,Port Digital Audio (S/PDIF) (High De
11,Port Microphone (High Definition Aud
12,Port Digital Audio (S/PDIF) (High De
然后我注意到skype在组合框中有S / PDIF用于选择麦克风。所以我选择它并使用典型的Clip播放声音:
File file = new File("november.wav");
AudioInputStream sound = AudioSystem.getAudioInputStream(file);
DataLine.Info info = new DataLine.Info(Clip.class, sound.getFormat());
Clip cl = (Clip) AudioSystem.getMixer(AudioSystem.getMixerInfo()[2]).getLine(info);
cl.open(sound);
cl.start();
Thread.sleep(1000);
然而,这种方法出于某种原因是不成功的。当我选择0或1这样的典型调音台时,它会完美地播放声音但2,3,6不起作用。
我的做法有什么问题?有没有其他方法如何从磁盘播放声音,以便Skype接受它? (宣传用麦克风将麦克风粘在扬声器上的选项)。