Java Sound API混音器TargetDataLines don';不符合Windows 10中的现实

Java Sound API混音器TargetDataLines don';不符合Windows 10中的现实,java,audio,sampling,bitrate,Java,Audio,Sampling,Bitrate,我有一个用Java编写的音频录制程序。我还有一个Sennheiser MK 4 USB麦克风,它以24位单声道96kHz的频率运行 在Linux下,这种组合是完美的。然而,在Windows10下,它不起作用。混音器仅报告8或16位TargetDataLines,即使麦克风是24位的(据我所知,Windows配置为24位) Java是否需要某种黑魔法才能看到设备的真实声音属性,而不是自己制作 这就是Java声称的可用于24位麦克风的功能: interface TargetDataLine supp

我有一个用Java编写的音频录制程序。我还有一个Sennheiser MK 4 USB麦克风,它以24位单声道96kHz的频率运行

在Linux下,这种组合是完美的。然而,在Windows10下,它不起作用。混音器仅报告8或16位TargetDataLines,即使麦克风是24位的(据我所知,Windows配置为24位)

Java是否需要某种黑魔法才能看到设备的真实声音属性,而不是自己制作

这就是Java声称的可用于24位麦克风的功能:

interface TargetDataLine supporting 8 audio formats, and buffers of at least 32 bytes
PCM_UNSIGNED unknown sample rate, 8 bit, mono, 1 bytes/frame
PCM_SIGNED unknown sample rate, 8 bit, mono, 1 bytes/frame
PCM_SIGNED unknown sample rate, 16 bit, mono, 2 bytes/frame, little-endian
PCM_SIGNED unknown sample rate, 16 bit, mono, 2 bytes/frame, big-endian
PCM_UNSIGNED unknown sample rate, 8 bit, stereo, 2 bytes/frame
PCM_SIGNED unknown sample rate, 8 bit, stereo, 2 bytes/frame
PCM_SIGNED unknown sample rate, 16 bit, stereo, 4 bytes/frame, little-endian
PCM_SIGNED unknown sample rate, 16 bit, stereo, 4 bytes/frame, big-endian
我必须告诉Java使用不同的声音驱动程序吗