JavaSound API程序员指南中的图表似乎暗示(第19-20页),混音器原则上可以同时具有数据线和端口。但是,我想知道是否有人真的看到过这种配置?我看到的是,在相关的情况下,混音器成对出现,一个混音器带有源/目标数据线,另一个混音器带有相应的端口。
有没有人目睹《指南》所暗示的配置,并且混音器同时具有端口和数据线(或者我是否误解了《指南》)?
最佳答案
看来JavaSound API的目的是允许Mixer处理数据线和端口。但是,JRE中包含的API的Sun实现具有四个具体的类(DirectAudioDevice,SimpleInputDevice,HeadspaceMixer和PortMixer),每个只能处理一个或另一个。它们具有映射到操作系统处理音频方式的本机方法,并且保持逻辑分离是有意义的(类不小)。没有1:1的DataLines到端口(例如,我有5x DirectAudioDevice和3x PortMixer),因此程序员可以决定将什么用于什么(或向用户公开以进行控制)。也许有针对特定设备的API的第三方实现,将两者结合成一个Mixer实现,但是我还没有看到。