0

我了解 and 的概念,TargetDataLine并且SourceDataLine我编写了一个程序来列出它们以及每个Ports可用的 and Controls。对于测试程序,我有一个板载麦克风、一个板载扬声器、一个线路输入、一个扬声器插孔和一个带有两个输入和一个输出的音频接口。接口上的输入被视为左右输入,因此我不确定如果它们充当一个立体声输入,我将如何区分两者。

我希望能够选择DataLine我想在运行时用于录制或播放的。如何识别和分离输入和输出以列出它们并允许用户选择要使用的特定输入和输出?如果有人对将接口输入作为两个单声道输入处理有任何建议,那也会很有帮助。提前致谢。

4

1 回答 1

0

要将两条单声道线转换为立体声,需要将左右交错,一次一个“样本”。样本的大小取决于您的位深度。例如,16 位编码消耗两个字节。所以,从左边取两个字节,然后从右边取两个字节。重复行的持续时间。

可能有一些预构建的方法可以帮助您解决这个问题。查看 Java 声音教程部分中关于转换格式的部分——它就像声音教程的第 4 或第 5 部分,如果我没记错的话,它也恰好是最好的。(提供的实际示例代码,与这个非常困难的教程的其余部分不同。)

我不确定选择线路或端口与选择其他任何东西的编程有何不同。您制作一个列表,用户单击与该项目关联的按钮,或从下拉列表中选择该项目,然后将其插入。

我有一个特雷门,在那里我制作了一个菜单栏,允许人们选择混音器线。它只是用找到的混音器的名称填充一个单选按钮集。当您选择项目时,侦听器会指示您安装相关的混音器。

于 2013-04-06T15:29:23.447 回答