- Настройка звука в Ubuntu
- Кратко
- Обзор
- Мысль первая: удаляем PulseAudio — ставим JACK
- Мысль вторая: ALSA и PulseAudio надо настраивать
- PulseAudio
- Диагностика ALSA
- Настройка ALSA
- alsamixer
- hdajacksensetest
- hdajackretask
- HDAAnalyzer
- Правка конфигов
- PulseAudio
- Выводы
- Лучшие аудио редакторы Linux
- Лучшие аудио редакторы для Linux
- 1. LMMS
- 2. Rosegarden
- 3. Mixxx
- 4. Cecilia
- 5. Ardour
- 6. SubMix
- 7. Audacity
- 8. Transitions DJ
- 9. Yoshimi
- 10. Qtractor
- Выводы
Настройка звука в Ubuntu
У меня есть хобби — написание музыки. Поэтому после установки свежей версии Ubuntu на свой ноутбук мне понадобилось настроить звук чуть более тонко, чем обычным пользователям. К моему сожалению, сделать это у меня не вышло. Тем не менее, я хочу рассказать о шагах, которые немного приблизили меня к результату. Я надеюсь, что кому-то это сэкономит время. А может, с помощью читателей я смогу пройти дальше. Если вы пользуетесь Linux и можете произнести слова sidechain и компрессия в одном осмысленном предложении — Добро пожаловать!
Кратко
Для начала более подробно о сути задачи: есть ноутбук Asus N55 с Kubuntu 17.10 на борту. Нужно добиться той же конфигурации, которую можно получить на Windows:
- Без подключения сабвуфера драйвер работает в режиме 2.0
- При подключении сабвуфера драйвер переключается в режим 2.1. При этом переключении к каналам применяются частотные фильтры — НЧ для сабвуфера и ВЧ для колонок
- При подключении наушников, вывод звука переключается на них, вывод на колонки/сабвуфер приостанавливается
- При необходимости низких задержек можно с помощью выбора другого драйвера перейти в режим, обеспечивающий монопольный захват звуковой карты
Сразу после установки получаем нерабочий сабвуфер и нерабочие наушники.
В результате моих опытов мне удалось добиться следующего состояния системы:
- Драйвер работает в режиме 2.1
- При подключении сабвуфера ничего не изменяется
- При подключении наушников, вывод звука переключается на них, вывод на колонки/сабвуфер приостанавливается, но фильтры продолжают работать и в наушники идут только ВЧ
- При необходимости низких задержек можно адресоваться к карте через ALSA, но в этом режиме не работает сабвуфер, фильтры. Но работает переключение на наушники
Для знакомства с LMMS(с которой как оказалось нормально работать нельзя, но это отдельная тема) этого в общем-то хватает.
Если вы тоже добрались до этого состояния, то ничего нового этой статьей я вам не расскажу.
Обзор
Вы когда-нибудь задумывались о том, как устроена звуковая система Linux? Вот и я нет — обычно звук либо был не нужен, либо как-то работал, колонки играли — ни о каких фокусах подключения сабвуфера или наушников речи не было.
Похоже, теперь самое время узнать об этом немного больше. Гугление показало следующую картину:
Мысль первая: удаляем PulseAudio — ставим JACK
Мало кто говорит, что PulseAudio де-факто является стандартом для интеграции звука, по крайней мере в Ubuntu. Практически любой софт, который издает звуки, будет с большой долей вероятности пользоваться PulseAudio API. FF, например, для поддержки JACK надо отдельно собирать.
Поэтому удалять PulseAudio не стоит, если вы не уверены, что все чем вы будете пользоваться, умеет работать с JACK. Видимо, поэтому существует еще вариант интеграции Jack-PulseAudio. Но от этого варианта я отказался, т.к. для работы в том софте, где требуются низкие задержки, меня устраивает монопольный доступ через ALSA(под Windows это работает так же — там, где нужна низкая задержка, запрашивается монопольный доступ). Возможно, когда дело дойдет до установки какого-нибудь Ardour, мне придется вернуться к этому варианту.
Мысль вторая: ALSA и PulseAudio надо настраивать
Так, ну хорошо, JACK не нужен. Выходит, чтобы все заработало, мне надо настроить ALSA-компонент для своей карточки и интеграцию его с PulseAudio
PulseAudio
Тут нам из коробки предлагают вот такую UI консоль
Мне кажется, к такому инструменту пояснения излишни. После применения настроек вы сразу сможете слышать изменения, так что пробуйте.
Еще amarao советует обратить внимание на pactl /pacmd. Если я доберусь — напишу, что там к чему с этими утилитами
Диагностика ALSA
Первым делом понадобятся хоть какие-то инструменты для диагностики — это пакет alsa-utils
sudo apt install alsa-utils
Теперь посмотрим, как видит наше оборудование система
aplay -l
Кроме того, настройки надо проверять. Для этих целей обнаружилась утилита speaker-test
вызов speaker-test —help покажет, что умеет утилита, но мне особенно интересна конфигурация
speaker-test -Dplughw:1,0 -c4
- -D — id устройства. 1,0 — это индексы устройства и подустройства, их мы видели выше в выводе aplay
а вот структура текстовой части описана тут - -c — количество каналов на которые будет выведен тест
В моем случае первые 2 канала работают хорошо, а вот дальше интересно — 3й канал LFO не звучит, но зато звучит 4й канал. Такое ощущение, что LFO настроен как… стерео. Мне кажется, это часть моей проблемы.
Настройка ALSA
Тут и тут советуют поизучать dmix — это модуль микшера каналов в ALSA — буду смотреть
alsamixer
alsamixer — псевдографический интерфейс микшера. Половина советов по настройке ограничивается этой утилитой. И действительно, именно эта утилита часто покажет, когда канал неожиданно замьютился или у него сбросился уровень громкости.
Но настройка в микшере результата не дала.
hdajacksensetest
Следующая полезная утилита — hdajacksensetest. Показывает какие разъемы детектируют подключение внешних устройств.
Ок, я вижу, что мой внешний сабвуфер подключен на порт 0x1a.
Давайте попробуем найти как можно объяснить карте, куда выводить LFO.
hdajackretask
Большинство советов по настройке маппинга указывают на утилиту hdajackretask:
Тут вроде бы все понятно — есть порты, есть маппинг. К сожалению, никакие манипуляции с портом 0x1a к успеху не привели.
Может, после настройки надо явно перезагружать сервисы?
sudo alsa force-reload
Нет, смотрим дальше.
HDAAnalyzer
Для настройки маппинга есть еще одна утилита:
скачать ее можно в виде python-скрипта(. ) вот тут.
Выглядит эта штука как прокачанный вариант hdajackretask — она даже умеет строить схему маршрутизации портов графически. Но эксперименты с этой штукой тоже не привели ни к чему, кроме полной потери звука.
Никакого гайда по настройке я не нашел, поэтому пробовал методом проб и ошибок.
Правка конфигов
Других утилит, способных помочь в настройке звука я не обнаружил. Остается попробовать только одно — искать и править конфиги. С помощью гугла и find, мне удалось обнаружить несколько локаций.
PulseAudio
/usr/share/pulseaudio
в папке alsa-mixer тут лежат конфиги. Т.к. Pulseaudio более-менее работает тут я ничего трогать не стал.
/etc/pulse/daemon.conf
Как я понял, это настройки службы pulseaudio — один из немногих конфигов, изменения в котором на что-то влияют. именно тут настройками:
enable-lfe-remixing = yes
lfe-crossover-freq = 200
я заставил звучать свой сабвуфер из Pulseaudio так, как он должен. Для lfe-crossover-freq 200 — это очевидно частота среза в герцах.
Но тут же становится очевидно, что настроить нечто более сложное(при подключении наушников прекращать отправлять бас на сабвуфер) в этом конфиге возможности нет.
/usr/share/alsa/*
Тут лежит несколько shell-скриптов, в т.ч. alsa-info.sh, который может быть полезен при подготовке дефекта в трекере и т.д.
а в папке pcm какие-то конфиги, разобраться в которых мне не удалось:
Трогать их я пока не решился.
/etc/modprobe.d/alsa-base.conf — второй доказанно полезный конфиг. Вот эта строчка, дописанная в низ конфига, реально заставила работать наушники под ALSA:
options snd-hda-intel model=auto,auto probe_mask=1
Про настройку этого конфига написано довольно много. Одна из его целей, как я понял — сопоставить устройствам кодеки(model). Кодеки это… какой-то пресет маппингов… Есть табличка (копия есть тут). Думаю, в большинстве случаев для стандартных конфигураций этого действительно достаточно.
Там описаны модели для разных контроллеров. Но если для вас они не срабатывают, то вам рекомендуют добавить свою конфигурацию.
Звучит классно, но тут я должен сделать 2 ремарки:
- гайда как сделать свою конфигурацию — что конфигурить, куда сохранять, коммитить и т.д. я не нашел.
- После изменения настроек в alsa-base.conf нужно перезагружать ОС. Без перезагрузки никакие sudo alsa force-reload и даже хардкорный echo 1 | sudo tee /sys/class/sound/hwC1D0/reconfig не заставляют ALSA перечитать кодек устройства.
Кстати, в /sys/class/sound/hwC1D0/ — лежат файлы уже непосредственно устройства, т.е. как я понял hdajackretask работает именно с этими файлами. Тут тоже, наверное, можно сделать что-то полезное, если знать куда что писать.
Выводы
На этом у меня все. После правок в daemon.conf и alsa-base.conf , я получил результат, описанный в начале. Это все, чем я мог помочь вам в деле настройки звука под Ubuntu.
Большинство приведенной тут информации я получил здесь и документации ALSA на Arch Linux.
Как я и говорил, после проделанной работы появляется больше вопросов, чем ответов:
- как так pulseaudio нормально работает с сабвуфером, а ALSA нет.
- какие все-таки конфиги надо править для правки маппинга портов??
- как оформить вот свою модель HD-Audio.
- насколько ALSA эффективна по сравнению с аналогами в других ОС? подходит ли она вообще для работы со звуком?
Общий вывод, который я могу сделать по результатам проделанной работы: в целом видно, что если GUI, например, сообщество более-менее занимается, то звуковая подсистема явно остается за бортом.
На сегодняшний день возможности использования этой подсистемы не выдерживают никакой конкуренции с аналогами в других популярных ОС.
Такие досадные проблемы, как неработающий сабвуфер или наушники, или отсутствие НЧ-фильтра для сабвуфера, заставляют еще раз подумать, прежде чем отказываться от предустановленного софта. Ведь никому не хочется получать от своей железки меньше отдачи из-за кривостей ОС.
Источник
Лучшие аудио редакторы Linux
Существует не так уж много хороших или хотя бы достойных программ для работы со звуком в Linux. Большинство приложений написаны «на коленке» и совершенно не подходят тем, кто хочет записывать качественную музыку. Профессионалам приходится либо переходить на Windows или MacOS, либо устанавливать популярные аудиоредакторы с помощью Wine, либо ограничиваться программой Ardour, которая, хоть и не совсем дотягивает до функциональности FL Studio и Cubase, но всё же даёт возможность обрабатывать звук на высоком уровне.
А вот те, для кого музыка — хобби, могут найти для себя неплохие синтезаторы, звуковые редакторы и инструменты для сведения треков. В этой подборке мы собрали лучшие аудио редакторы Linux.
Лучшие аудио редакторы для Linux
В эту подборку попали приложения с удобным интерфейсом и современными возможностями. Они рассчитаны на выполнение разноуровневых задач: от самых простых до максимально сложных.
1. LMMS
LMMS — это FL Studio и Cubase «на минималках». Программа позволяет писать музыку, используя встроенные синтезаторы и коллекцию сэмплов, накладывать на звук разнообразные эффекты. Поскольку поддерживаются VST-плагины и пресеты, пользователь получает почти неограниченные возможности для творчества.
Нельзя сказать, что LMMS будет простым для новичков в мире цифровой музыки, но его преимущество заключается в наличии большого количества видеоуроков и текстовых инструкций на просторах интернета.
2. Rosegarden
Достаточно мощный аудио редактор секвенсер с удобным и понятным интерфейсом. От большинства конкурентов отличается наличием нотного редактора. Причём, записывать ноты можно как с MIDI-клавиатуры, так и «играя» на обычной компьютерной клавиатуре или пользуясь экранными кнопками.
В Rosegarden есть всё, что необходимо для редактирования музыки: звуковой микшер, множество эффектов и виртуальных инструментов, возможность загружать LADSPA-плагины. При нажатии на F1 открывается инструкция к программе — написана она очень подробно и доходчиво, но, к сожалению, существует только в англоязычном варианте.
3. Mixxx
Программа для диджеев и тех, кто увлекается созданием музыкальных миксов. Возможен ввод звука с микрофона и работа с файлами в форматах ogg, mp3, wave, flac. В арсенале этой программы множество эквалайзеров, звуковых эффектов и настроек.
Пользователям доступны поддержка от сообщества на форуме, документация из базы знаний Mixxx Wiki, обучающие материалы, общение с единомышленниками в Zulip Chat и новостная рассылка.
4. Cecilia
Cecilia — это графический интерфейс для Csound, предназначенный для синтеза звука и обработки звуковых сигналов. Программа была написана в 1995-м году и за последнюю четверть века пережила немало трансформаций. Сейчас она может похвастаться простым интерфейсом, а также оригинальными пресетами и модулями, которые наверняка понравятся звуковым дизайнерам и музыкантам. Её недостаток — отсутствие русифицированной версии.
5. Ardour
Программа для многоканальной записи звука и цифровая звуковая станция в одном. На данный момент может считаться лучшим ПО для Linux в своей категории. Из-за мощного аудио редактора Linux она часто используется профессиональными музыкантами. Среди преимуществ Ardour:
- поддержка сэмплов в любых форматах от 8 до 32 бит и частот сэмплирования в диапазоне от 8 до 192 кГц;
- неограниченная пропускная способность (быстродействие зависит только от скорости записи данных на диск и возможностей звуковых интерфейсов на конкретном ПК);
- использование JACK Audio Connection Kit для всех операций ввода и вывода аудио;
- поддержка MIDI Machine Control;
- неограниченное количество входов и выходов у каждой дорожки микшера и поддержка различных моделей панорамирования.
На официальном сайте бесплатная версия доступна только в виде исходников. Однако пользователи убунтуподобных операционных систем могут установить Ardour из репозитория ubuntu-bionic-universe.
6. SubMix
Submix — простой в использовании аудио редактор с современным интерфейсом и минимальным набором функций. Позволяет обрезать треки и делать вставки, перемещать части дорожек, записывать звук с микрофона. Количество треков, задействованных в одном проекте, не ограничено. Сейчас ведётся активная разработка программы, так что можно надеяться на расширение её возможностей в будущем.
7. Audacity
Ещё один простой и удобный звуковой редактор. Он был создан для записи подкастов, но может использоваться и для работы с музыкой. Поддерживает файлы в форматах Ogg Vorbis, mp2, mp3, wav, aiff, и au. При наличии многоканальной звуковой карты позволяет одновременную запись 16 каналов. Пользователи могут добавлять в Audacity дополнительные плагины, хотя и тех, что установлены «из коробки», хватит для выполнения большинства задач. Среди преимуществ этой программы есть частотный анализ звука и накладывание разнообразных эффектов, а также наличие руководства по работе, которое можно скачать с сайта и использовать без доступа к интернету.
8. Transitions DJ
Отличная программа от Адама Хилсса, который в своё время принимал участие в разработке программного обеспечения для корпораций Intel и Google. Предназначена для создания миксов и сведения композиций во время живых выступлений. Имеет удобный, но не русифицированный интерфейс. Позволяет добавлять файлы как непосредственно с диска, так и из аккаунта на SoundCloud.
9. Yoshimi
Yoshimi — один из лучших программных MIDI-синтезаторов для Linux. Собран на базе ZynAddSubFX и почти один в один повторяет его дизайн, но отличается от первоисточника новыми функциями. Предлагает пользователям доступ к огромному количеству инструментов и эффектов, позволяет наигрывать мелодию на компьютерной клавиатуре либо на виртуальной при помощи мышки. Также можно устанавливать дополнительные инструменты и патчи.
10. Qtractor
Многодорожечный синтезатор. Подойдёт для домашней звуковой студии. «Из коробки» пользователь получает огромное количество эффектов и 13 музыкальных инструментов. Также можно загружать дополнительные инструменты и контроллеры. Возможна установка пользовательских VST-, LADSPA-, V2-, DSSI-эффектов. Программа поддерживает около 30 типов файлов, а также 16/24/32/64-битные сэмплы.
Выводы
Несмотря на нехватку качественного ПО для обработки звука в ОС Linux, в репозиториях и сторонних источниках можно найти вполне достойные программы, поэтому Linux для аудио вполне подходит. А вам приходилось писать или редактировать музыку? Расскажите в комментариях, какими приложениями пользовались и какие из них понравились больше всего.
Источник