Фиксирован ли формат захвата звуковой петли Windows? Или это зависит от звуковой карты?

Я использую Windows Audio Core API для захвата петли и последующей обработки данных. На моей машине я получаю частоту дискретизации 48000 с 32-битными числами с плавающей запятой для формата. Это то, что Windows использует внутри? Мне интересно, использую ли я вывод перед каким-либо конкретным аппаратным преобразованием, чтобы формат всегда был одним и тем же, или я могу получать 16-битные целые числа на какой-то другой машине?


person Rick Saada    schedule 21.03.2016    source источник


Ответы (1)


Между машинами явно есть некоторая разница, по крайней мере, в отношении частоты дискретизации, поскольку WASAPI на моей машине дает 32-битные числа с плавающей запятой на частоте 44 100 Гц. документация для GetMixFormat (раздел примечаний, параграфы 2 и 3) предполагает, что предоставленный формат является внутренним форматом, используемым для микширования, и что он может сильно отличаться от того, что звуковая карта фактически принимает в качестве входных данных, но не уточняет, какие именно форматы могут использоваться. . Я подозреваю, что это намеренно расплывчато, чтобы побудить разработчиков работать с несколькими форматами в случае, если они могут где-то использоваться. Тем не менее, учитывая, что они абстрагируют формат микса от звуковой карты, я был бы удивлен, если бы они использовали разные внутренние форматы на разных машинах.

person TheSuccessor    schedule 28.03.2016
comment
Я ожидаю, что они используют float внутри, чтобы избежать квантования при масштабировании, возможно, конвертируя в целые числа на выходе, если этого требует звуковая карта. Но совпадение частоты дискретизации, которую хочет звуковая карта, кажется вероятным. Спасибо за информацию. - person Rick Saada; 30.03.2016