Вопрос или проблема
Ubuntu 20.04.1 (обновлён с Ubuntu 16.04 -> 18.04 -> 20.04, если это имеет значение)…
Я только что выполнил стандартную установку плюс gnome-session-flashback и другие пакеты, не относящиеся к аудио (Gimp, Blender и т. д.). За исключением программного синтезатора Yoshimi, я намеренно не играл и не устанавливал никаких дополнительных аудио [вещей], не важно, что такое PulseAudio, ALSA, Jack.
Как я могу узнать, использую ли я PulseAudio, ALSA или Jack? Например, вывод dmesg не упоминает ни одну из этих трёх систем, где ещё я могу проверить?
(нужно продвинуться по этому вопросу в соответствии с последующим вопросом в комментариях)
Если вы можете слышать звук из таких вещей, как веб-браузер (например, youtube), вы почти наверняка используете Pulse. Однако, чтобы быть уверенным, попробуйте запустить
pactl list
в терминале. Если Pulse не работает, вы получите ошибку, или если он работает, вы получите много информации, которую мы сейчас можем проигнорировать.
Для Jack, qjackctl
– это очень полезное графическое приложение для управления Jack и маршрутизации аудио и MIDI. Когда вы его запустите, он сообщит вам, работает ли Jack.
Возможно использовать Jack и Pulse одновременно, однако это иногда может быть проблематично. Это означает, что если вы можете слышать веб-аудио, это не говорит вам, работает ли Jack. Однако может быть так, что когда вы запускаете Jack, всё не-Jack аудио останавливается.
В зависимости от вашего аудио приложения, вам может понадобиться указать ему использовать Jack вместо Pulse (или ALSA). Для Yoshimi это может быть в меню настроек, которое имеет вкладки для Jack и ALSA.
Ответ или решение
Чтобы определить, используете ли вы PulseAudio, ALSA или JACK на вашей системе Ubuntu, выполните следующие шаги:
-
PulseAudio:
PulseAudio является стандартным звуковым сервером в большинстве дистрибутивов Ubuntu, начиная с версии 8.04. Если вы можете воспроизводить аудио через приложения, такие как браузеры (например, YouTube), вероятно, вы используете PulseAudio. Чтобы проверить, работает ли PulseAudio, откройте терминал и введите следующую команду:pactl list
Если PulseAudio работает, вы увидите множество информации о состоянии звуковых потоков и устройствах. Если вы получите ошибку, это может означать, что PulseAudio не запущен.
-
ALSA (Advanced Linux Sound Architecture):
ALSA — это низкоуровневая звуковая подсистема, которая обычно используется в более старых системах или в системах, где PulseAudio не установлен. Вы можете проверить, работает ли ALSA, выполнив следующую команду в терминале:aplay -l
Если ALSA установлен и работает, вы увидите список доступных звуковых устройств.
-
JACK (Jack Audio Connection Kit):
JACK — это профессиональный звуковой сервер, часто используемый в музыкальных приложениях и для обработки аудио в реальном времени. Для проверки, работает ли JACK, вы можете установить и запуститьqjackctl
, графическую утилиту для управления JACK. Для установки, выполните:sudo apt install qjackctl
После установки, запустите
qjackctl
из меню приложений или терминала. Если JACK запущен, вы сможете увидеть его состояния и управлять подключениями. -
Сосуществование PulseAudio и JACK:
Обратите внимание, что PulseAudio и JACK могут работать одновременно, но это может потребовать дополнительной настройки. Если вы заметили, что при запуске JACK звуковое воспроизведение в других приложениях прекращается, это может означать, что JACK перехватывает контроль над звуковыми устройствами. -
К настройкам приложений:
Некоторые приложения, такие как Yoshimi, могут иметь собственные настройки для выбора, какой звуковой сервер использовать (JACK или ALSA). Проверьте меню настроек вашего приложения для возможных опций.
Если вы хотите уменьшить задержку MIDI, вам может понадобиться использовать JACK, который предлагает более низкую задержку по сравнению с PulseAudio, но требует немного больше настройки.
Таким образом, обобщая, если вы можете воспроизводить аудио через базовые приложения, вы, скорее всего, используете PulseAudio. Для работы с JACK воспользуйтесь qjackctl
, а для проверки ALSA используйте команду aplay -l
.