Довольно часто выполняются операции обработки сигналов с плавающей запятой, затем масштабируются и приводятся результаты к 16-разрядным или 24-разрядным целым числам перед отправкой их в АЦП. Например, применение фильтра БИХ в плавающей точке означает, что вы можете уменьшить свою чувствительность к квантованию коэффициентов. Или, если вы делаете БПФ, вы получаете больший динамический диапазон с вычислениями с плавающей запятой.
Обычным способом преобразования является x_float = x_int * (1.0/SHRT_MAX)
, когда данные поступают с АЦП, и y_int = y_float * SHRT_MAX
при отправке в ЦАП для 16-битных кодеков. Для 24-битных кодеков вам нужно определить ADC_MAX = (1 << 24) - 1
.
В случае использования JACK, я предполагаю, что фреймворк позаботится об этом преобразовании для вас, поэтому вы должны увидеть значения с плавающей запятой в диапазоне +/- 1 и передать их значения в том же диапазоне.