Комплект для подключения аудио JACK - JACK Audio Connection Kit
Оригинальный автор (ы) | Пол Дэвис , Стефан Летц | ||||
---|---|---|---|---|---|
Разработчики) | Команда ДЖЕК | ||||
Стабильный выпуск |
|
||||
Репозиторий | github |
||||
Написано в | C , C ++ | ||||
Операционная система | BSD , Linux , macOS , Solaris , Windows , iOS | ||||
Тип | Звуковой сервер | ||||
Лицензия | Сервер: GPL-2.0 или новее Библиотека: LGPL-2.1 или новее |
||||
Веб-сайт |
jackaudio |
JACK Audio Connection Kit (или JACK ; рекурсивная аббревиатура ) - это профессиональный API звукового сервера и пара реализаций демона для обеспечения соединений в реальном времени с малой задержкой как для аудио, так и для MIDI-данных между приложениями. JACK был разработан сообществом разработчиков с открытым исходным кодом во главе с Полом Дэвисом (который получил премию Open Source в 2004 году за эту работу) и с момента своего создания является ключевым элементом инфраструктуры и стандартом де-факто для профессионального аудио программного обеспечения для Linux. в 2002 году. Сервер представляет собой бесплатное программное обеспечение , лицензированное под GPL-2.0 или новее , а библиотека под лицензией LGPL-2.1 или новее .
Реализации
JACK API стандартизирован на основе консенсуса, и существуют две совместимые реализации: jack1, который реализован на простом C и некоторое время находится в режиме обслуживания, и jack2 (первоначально jackdmp), повторная реализация на C ++, первоначально возглавляемая Стефаном Летцем. , который представил многопроцессорную масштабируемость и поддержку операционных систем, отличных от Linux.
JACK можно использовать с ALSA , PortAudio , CoreAudio , FFADO и OSS в качестве аппаратных внутренних компонентов . Кроме того, существуют фиктивный драйвер (полезный, если вывод звука не требуется, например, для автономного рендеринга) и драйвер Audio-over-UDP. Одна или обе реализации могут работать в Linux , macOS , Solaris , Windows , iOS , FreeBSD , OpenBSD и NetBSD .
JACK API также реализуется PipeWire , который может действовать как полноценный поставщик замены для клиентов JACK, сопоставляя вызовы JACK API с эквивалентными вызовами PipeWire. Если он используется как замена ALSA и PulseAudio, он может объединить различные звуковые серверы и API-интерфейсы, которые обычно можно найти на машине, и обеспечить лучшую интеграцию между различным программным обеспечением. PipeWire также утверждает, что добавляет ряд функций и устраняет ряд ограничений по сравнению с JACK. Использование PipeWire в качестве реализации JACK по умолчанию является значением по умолчанию в Fedora 34 и новее.
Планирование с малой задержкой
В планировании потребности JACK достичь достаточно низких Задержки были одной из движущих сил в реальное время усилий по оптимизации для Linux ядра серии 2.6, чья первоначальной задержка производительности была разочаровывающим по сравнению со старой 2,4 серии. Работа по настройке в реальном времени завершилась многочисленными улучшениями планирования в основном ядре и созданием ветки -rt для более интрузивной оптимизации в выпуске 2.6.24, а затем в патче CONFIG_PREEMPT_RT .
Приложения с поддержкой JACK
Смотрите также
- LADSPA & LV2 - API для плагинов
- PulseAudio - звуковой сервер для настольных ПК
- Список аудиопрограмм для Linux
- Сравнение бесплатных программ для аудио
- Бесплатные альтернативы ASIO