Комплект аудиоподключения JACK
![]() | |||||
Оригинальный автор(ы) | Пол Дэвис , Стефан Летц | ||||
---|---|---|---|---|---|
Разработчик(и) | ДЖЕК команда | ||||
Стабильная версия |
| ||||
Репозиторий | github | ||||
Написано в | С , [1] С++ | ||||
Операционная система | BSD , Linux , macOS , Solaris , Windows , iOS | ||||
Тип | Звуковой сервер | ||||
Лицензия | Сервер: GPL-2.0 или новее. Библиотека: LGPL-2.1 или более поздняя версия. [2] | ||||
Веб-сайт | Джекаудио |
JACK Audio Connection Kit (или JACK ; рекурсивная аббревиатура ) — это профессиональный звуковой серверный API и пара реализаций демона для обеспечения соединений в реальном времени с малой задержкой как для аудио, так и для MIDI-данных между приложениями. JACK был разработан сообществом разработчиков открытого исходного кода под руководством Пола Дэвиса (который получил за эту работу премию Open Source Award в 2004 году). [3] и является ключевым элементом инфраструктуры и фактическим стандартом для профессионального аудио-программного обеспечения для Linux с момента его создания в 2002 году. Сервер представляет собой бесплатное программное обеспечение , действующее под лицензией GPL-2.0 или более поздней версии , а библиотека — под лицензией LGPL-2.1. -или-позже . [2]
Реализации
[ редактировать ]JACK API стандартизирован консенсусом, и существуют две совместимые реализации: jack1, который реализован на простом языке C и некоторое время находился в режиме обслуживания, и jack2 (первоначально jackdmp), повторная реализация на C++, первоначально разработанная Стефаном Летцем. , который представил многопроцессорную масштабируемость и поддержку операционных систем, отличных от Linux. [4]
JACK можно использовать с ALSA , PortAudio , CoreAudio , FFADO и OSS в качестве аппаратных серверных частей . Кроме того, существуют фиктивный драйвер (полезен, если вывод звука не требуется, например, для автономного рендеринга) и драйвер Audio-over-UDP. Одна или обе реализации могут работать в Linux , macOS , Solaris , Windows , iOS , FreeBSD , OpenBSD и NetBSD .
JACK API также реализован в PipeWire для обратной совместимости в качестве полноценного поставщика замены для клиентов JACK, сопоставляющего вызовы JACK API с эквивалентными вызовами PipeWire. [5] Если его использовать в качестве замены ALSA и PulseAudio, он может объединить различные звуковые серверы и API, которые обычно встречаются на машине, и обеспечить лучшую интеграцию между различным программным обеспечением. PipeWire также утверждает, что добавляет ряд функций и исправляет ряд ограничений по сравнению с JACK. [6] Использование PipeWire в качестве реализации JACK по умолчанию используется в Fedora 34 и новее. [7]
Планирование с малой задержкой
[ редактировать ]
Требования JACK к планированию для достижения достаточно низких задержек были одной из движущих сил в реальном времени оптимизации для ядра Linux серии 2.6. [8] [9] чьи первоначальные показатели задержки были разочаровывающими по сравнению со старой серией 2.4. [10] Работа по настройке в реальном времени завершилась многочисленными улучшениями планирования основного ядра и созданием ветки -rt для более навязчивых оптимизаций в выпуске 2.6.24, а затем и в патче CONFIG_PREEMPT_RT . [11]
Приложения с поддержкой JACK
[ редактировать ]См. также
[ редактировать ]- LADSPA и LV2 – API для плагинов
- PulseAudio – звуковой сервер для настольного использования
- Список аудиопрограмм для Linux
- Сравнение бесплатного программного обеспечения для аудио
- Бесплатные альтернативы ASIO
Ссылки
[ редактировать ]- ^ «ДЖЕК» . Сводка анализа . Охло . Проверено 8 января 2012 г.
- ^ Перейти обратно: а б «Комплект для подключения аудио JACK — Лицензия» . Архивировано из оригинала 3 мая 2021 г. Проверено 8 июня 2021 г.
- ^ «Open Source Awards 2004: Пол Дэвис для JACK» . techrepublic.com.com . Проверено 24 мая 2016 г.
- ^ «Что нового в JACK2? — Доклад главного автора JACK2 Стефана Летца на Linux Audio Conference 2009» . linuxaudio.org . Проверено 17 февраля 2010 г.
- ^ «ДЖЕК — Wiki — PipeWire/pipewire» . PipeWire на GitLab . Проверено 11 февраля 2021 г.
- ^ «Часто задаваемые вопросы – Wiki – PipeWire/pipewire» . PipeWire на GitLab . Проверено 11 февраля 2021 г.
- ^ Ларабель, Майкл. «Fedora 34 получает отказ за попытку использовать PipeWire по умолчанию для аудио нужд» . Фороникс . Фороникс Медиа . Проверено 11 февраля 2021 г.
- ^ «Первоначальное объявление Инго Молнара о добровольном приоритетном патче для серии ядер Linux 2.6, 2004 г.» . lkml.org . Проверено 17 февраля 2010 г.
- ^ «Обнаружение причин задержек с использованием Ftrace, статья Стивена Ростедта из семинара Real-time Workshop 2009» (PDF) . Проверено 17 февраля 2010 г.
- ^ «Аудио в реальном времени по сравнению с версией 2.6, доклад Ли Ревелла на Linux Audio Conference 2006» (PDF) . Проверено 17 февраля 2010 г.
- ^ «Linux Wiki реального времени» . Kernel.org (Архивы ядра Linux) . Проверено 8 июня 2010 г.