Аппаратные ограничения частоты выборки
Для некоторых звуковых устройств требуется, чтобы частота выборки в штырьке приемника фильтра адаптера соответствовала частоте порта цифрового вывода или входного потока с микрофона. Например, оборудование, совместимое с Sound Blaster 16, обычно имеет один кристалл, который ограничивает входные и выходные потоки для выполнения с одинаковой частотой. Адаптеру, который поддерживает более одной частоты для различных встроенных аудиопотоков, по-прежнему может потребоваться ограничить количество разных частот до небольшого числа.
По этим причинам драйверу адаптера может потребоваться ограничить частоту выборки в одном бортовом потоке в соответствии с частотой другого бортового потока. Например, для адаптера, совместимого с Sound Blaster 16, может потребоваться, чтобы частота выборки в штырьке приемника адаптера соответствовала скорости, с которой блоки блокируются в выходных контроллерах управления ими.
Как упоминалось ранее, KMixer является системным микшером в Windows Server 2003, Windows XP, Windows 2000 и Windows Me/98. Когда исходный контакт KMixer подключен к контакту приемника адаптера, KMixer может потребоваться вызвать метод SetFormat адаптера (например, см. раздел IMiniportWavePciStream::SetFormat), чтобы настроить частоту выборки в соединении в соответствии с максимальной частотой выборки звуковых потоков на входных данных. Если адаптеру не удается изменить частоту (возможно, из-за того, что он ограничен частотой других встроенных потоков), вызов SetFormat может завершиться ошибкой. В этом случае KMixer будет отвечать, выполняя дополнительные вызовы SetFormat с последовательно более низкой частотой выборки, пока вызов не будет выполнен успешно. После того как KMixer урегулирует уменьшенную частоту выборки, он будет соответствующим образом уменьшать входные потоки с более высокой частотой.