Приложение для macOS
Auduo
Играй звук с Mac на двух колонках сразу.
Что это
macOS умеет играть сразу на несколько выходов — но только если открыть Audio MIDI Setup, руками собрать Multi-Output Device, выбрать источник тактирования, включить коррекцию дрейфа, переключить системный выход и не забыть всё это откатить.
Auduo сводит это к одной кнопке. Выбираешь два выхода, жмёшь Play together — и всё: YouTube, Spotify, Safari, игры, системные звуки — играет на обоих. Жмёшь стоп — возвращается прежний выход.
Что сделал я
- Всё целиком: интерфейс, слой Core Audio, сборку.
- Поддержаны любые два выхода Core Audio: Bluetooth, встроенные, USB, HDMI, DisplayPort, AirPlay, виртуальные устройства.
- Жизненный цикл агрегатного устройства под контролем: создаётся при старте, разбирается при остановке, прежний выход восстанавливается.
Детали
Интересная задача здесь — дрейф. Два независимых тактовых генератора идут чуть по-разному, и без коррекции колонки разъезжаются за считанные минуты. Auduo сам выбирает источник тактирования и включает коррекцию дрейфа — именно на этом спотыкаются все, кто собирает устройство руками.