Реклама

Как я разблокировал нативный бинауральный движок Apple HRTFHQ для любых наушников в macOS

#Apple #HRTFHQ #AirPods #Решил #Google
Как я разблокировал нативный бинауральный движок Apple HRTFHQ для любых наушников в macOS

Вот пользуюсь я своим старым макбук про 2017 на интеле и наушниками AirPods и не понимаю почему на айфоне есть пространственное стерео, а на ноуте нет. В поисках готовых решений ничего не нашел (может плохо искал). Решил написать сам (код писать не умею), под рукой был Google Antigravity на актуальном тогда Gemini 3.8 Flash (high). За день работы с несколькими правками и исправлениями косяков родилось SpatialAudio . Но модель flash как известно инструмент довольно примитивный (но заморачиваться с другими моделями желания не было) и продукт получался сырым, с периодическими всплывающими косяками, с которыми он в решении ходил по кругу, но все это как то работало. С выходом Argon 4 провел рефакторинг и допилил старые проблемы, сделал перевод и документацию, выложил на гитхаб в открытый доступ. Сам не делал ничего, только направлял Gemini и ставил задачи. Вроде получилось, работает. Статья написана Gemini 4 Argon без правок. Если честно я не вникал и не понимаю сути работы проги, но резул

Если вы долго сидите за Mac в обычных наушниках — будь то студийные Beyerdynamic/Sennheiser, полноразмерные Sony/Bose или любимые проводные IEM — вы наверняка замечали усталость ушей через пару часов. Причина проста: обычное стерео изначально сводится для колонок в комнате, где левое ухо слышит и левый, и (с микрозадержкой и фильтрацией головой) правый монитор. В наушниках же каналы изолированы на 100%, из‑за чего сцена схлопывается прямо внутри черепной коробки (in‑head localization).

В macOS уже много лет встроен первоклассный аппаратно‑ускоренный бинауральный движок Apple HRTFHQ (kAudioUnitSubType_SpatialMixer). Но на уровне пользовательского интерфейса Apple заблокировала системное пространственное аудио исключительно для владельцев AirPods и некоторых моделей Beats.

Платные «улучшайзеры» звука за 60 часто вешают в систему тяжелые фоновые демоны и портят АЧХ агрессивным эквалайзером или дешевым ревербератором. Поэтому я решил написать легковесную нативную Menu Bar утилиту на чистом Swift (<1% CPU, ~25 МБ RAM), которая берет системный звук macOS, пропускает его через оригинальный бинауральный фильтр Apple HRTFHQ и выносит звуковую сцену из головы вперед — как будто перед вами на столе стоят два студийных монитора.

В этой статье расскажу, как устроен низкоуровневый аудиопайплайн в macOS и какие подводные камни CoreAudio пришлось обойти: