2016-03-02 6 views
0

Как определить частоту дискретизации в обратном вызове рендера?AudioUnit V3: определить частоту дискретизации в обратном вызове рендера

Похоже, что я могу переопределить shouldChangeToFormat(_:forBus:), но похоже, что такая функция «должна» не должна использоваться для запроса состояния.

И каждый автобус имеет собственный формат рендеринга, но, очевидно, существует только одна частота дискретизации для обработки, что добавляет к путанице.

ответ

0

Любые вызовы Objective C, такие как определение частоты дискретизации аудиоустройства, должны выполняться вне обратного вызова (из основного потока пользовательского интерфейса), возможно, для каждого устройства непосредственно перед началом звукового графика. Эта информация может быть передана в обратный вызов, в пределах его информации о состоянии или переменных блока, по мере необходимости.

Любые настройки форматов аудиоустройств или соединения между устройствами должны быть проверены на наличие ошибок (например, для неподдерживаемых форматов).