如何在Javasound中选择麦克风?

时间:2013-11-10 17:14:18

标签: java audio-recording microphone javasound

Javasound如何处理多个麦克风?是否可以选择多个麦克风中的一个?如何确定使用哪个麦克风?多个麦克风的输入是否由Java虚拟机处理?最后,这种方法是跨操作系统标准化的,还是操作系统会影响JVM听到的内容。以下是我目前用于从麦克风生成TargetDataLine的代码。

DataLine.Info dataLineInfo = new DataLine.Info(TargetDataLine.class, getAudioFormat());
setTargetDataLine((TargetDataLine) AudioSystem.getLine(dataLineInfo));

1 个答案:

答案 0 :(得分:2)

我认为分离各种麦克风输入取决于这些麦克风是否通过自己的线路或端口暴露给Java。

名为Accessing Audio System Resources的教程部分将为您提供识别Java能够“看到”的方法。这是概述介绍之后的第一个主要部分。如果您列出每个的信息,希望您能够识别每个麦克风线(假设您的声卡和操作系统配置为允许这样做)。

同意,音频教程是最难的之一!在某种程度上,这是因为音频难以通过必须运行的各种操作系统以及介入的硬件和软件来复杂化。不同的声卡和OS组合可以以不同的方式工作。在某些阶段,他们必须将行或端口暴露给Java。我不知道任何多路复用系统(两个或多个麦克风以某种方式共享一条线路或端口)。我还不清楚你需要关注的是线路还是端口。