Как сделать звук на линуксе

Управление уровнем звука из командной строки Ubuntu

Оригинал: Control Audio volume through the Ubuntu Command Line
Автор: Karim Buzdar
Дата публикации: 10 июля 2019 года
Перевод: А. Кривошей
Дата перевода: февраль 2020 г.

Человек, разбирающийся в терминале, найдет способ выполнить любое действие, находясь в командной строке. В основном мы делаем системные настройки в графическом интерфейсе Ubuntu, но есть определенные ситуации, когда вы можете сделать это из командной строки. ALSA или Advanced Linux Sound Architecture обеспечивает поддержку аудио для большинства дистрибутивов Linux.

В этой статье мы объясним, как вы можете установить пакет утилит ALSA, если он еще не установлен в вашей Ubuntu. Мы также объясним, как вы можете управлять звуковыми свойствами ваших звуковых карт с помощью:

Мы запускали команды и процедуры, упомянутые в этой статье, в системе Ubuntu 18.04 LTS.

Установка ALSA

Пакет Alsa-utils содержит утилиты Alsamixer и Amixer. Этот пакет доступен в официальных репозиториях Ubuntu и может быть легко установлен в командной строке с помощью команды apt-get.

Откройте терминал либо через системный поиск приложений, либо с помощью сочетания клавиш Ctrl+Alt+T.

Следующим шагом является обновление индекса репозиториев вашей системы с помощью следующей команды:

Как сделать звук на линуксе. Смотреть фото Как сделать звук на линуксе. Смотреть картинку Как сделать звук на линуксе. Картинка про Как сделать звук на линуксе. Фото Как сделать звук на линуксе

Это поможет вам установить последнии доступные версии программ из интернета. Обратите внимание, что только авторизованный пользователь может добавлять, удалять и настраивать программное обеспечение в Ubuntu.

Теперь вы готовы установить Alsa-utils; вы можете сделать это, выполнив следующую команду от имени sudo:

Как сделать звук на линуксе. Смотреть фото Как сделать звук на линуксе. Смотреть картинку Как сделать звук на линуксе. Картинка про Как сделать звук на линуксе. Фото Как сделать звук на линуксе

Система может попросить вас ввести пароль для sudo, а также запросить выбор Y/n для продолжения установки. Введите Y, а затем нажмите Enter; программное обеспечение будет установлено в вашей системе. Однако процесс может занять некоторое время в зависимости от скорости вашего интернета.

Alsamixer предлагает графическое представление звуковых карт, установленных в вашей системе, и позволяет вам легко просматривать и управлять свойствами этих карт. Alsamixer создан на базе Ncurses, так что вы можете оставаться в терминале, работая с громкостью звуковой карты.

Вы можете запустить этот графический интерфейс, выполнив следующую команду в вашем терминале:

Alsamixer отобразит свойства вашей звуковой карты по умолчанию следующим образом:

Как сделать звук на линуксе. Смотреть фото Как сделать звук на линуксе. Смотреть картинку Как сделать звук на линуксе. Картинка про Как сделать звук на линуксе. Фото Как сделать звук на линуксе

Если вы не можете увидеть все свойства, как показано на снимке экрана выше, либо разверните окно терминала или используйте клавиши со стрелками влево и вправо, чтобы просмотреть свойства, которые не видны.

Представления Alsamixer

Когда вы открываете интерфейс Alsamixer, вы видите его в представлении Payback. Это означает, что из этого представления вы можете управлять только параметрами, связанными с воспроизведением звука. Два других вида, на которые вы можете переключиться:

Представление Capture

Чтобы просмотреть свойства, относящиеся только к захвату звука, вы можете переключиться в режим Capture, нажав F4, когда открыт Alsamixer. Вот так выглядит представление Capture:

Как сделать звук на линуксе. Смотреть фото Как сделать звук на линуксе. Смотреть картинку Как сделать звук на линуксе. Картинка про Как сделать звук на линуксе. Фото Как сделать звук на линуксе

Представление All

Чтобы просмотреть свойства, связанные как с захватом, так и с воспроизведением звука, вы можете переключиться в режим «All», нажав клавишу F5, когда открыт Alsamixer. Вот так выглядит All:

Как сделать звук на линуксе. Смотреть фото Как сделать звук на линуксе. Смотреть картинку Как сделать звук на линуксе. Картинка про Как сделать звук на линуксе. Фото Как сделать звук на линуксе

Представление Playback

Чтобы вернуться в режим Playback, нажмите кнопку F3.

Выбор звуковой карты

Утилита Alsamixer отображает свойства карты, которая выбрана «по умолчанию». Для просмотра/редактирования свойств другой звуковой карты, установленной в вашей системе, вы можете нажать F6.

Как сделать звук на линуксе. Смотреть фото Как сделать звук на линуксе. Смотреть картинку Как сделать звук на линуксе. Картинка про Как сделать звук на линуксе. Фото Как сделать звук на линуксе

Меню звуковой карты, как показано выше, появляется при нажатии клавиши F6. Вы можете перемещаться вверх и вниз по меню и затем нажать Enter, чтобы выбрать другую карту. Вы также можете вручную ввести имя карты, если оно не отображается в списке, выбрав пункт меню «enter device name».

Вы можете выйти из этого меню, нажав Esc.

Управление свойствами звука

Вы можете перемещаться влево и вправо, чтобы выбрать устройство, громкость которого вы хотите увеличить, уменьшить или отключить.
Когда вы выбрали устройство, используйте клавиши вверх и вниз, чтобы увеличить или уменьшить громкость соответственно.
Чтобы отключить устройство/элемент управления, нажмите клавишу m, когда выбрано это свойство.
Для получения информации обо всем, что вы можете сделать с помощью Alsamixer, нажмите элемент управления F1. Это отобразит справку следующим образом:

Как сделать звук на линуксе. Смотреть фото Как сделать звук на линуксе. Смотреть картинку Как сделать звук на линуксе. Картинка про Как сделать звук на линуксе. Фото Как сделать звук на линуксе

Вы можете использовать клавишу Esc, чтобы выйти из этого окна справки.

Использование Amixer для управления звуком с помощью команд

Введите следующую команду, чтобы увидеть все, что вы можете сделать с Amixer:

Как сделать звук на линуксе. Смотреть фото Как сделать звук на линуксе. Смотреть картинку Как сделать звук на линуксе. Картинка про Как сделать звук на линуксе. Фото Как сделать звук на линуксе

Ваша команда amixer выглядит в целом так:

Во всех ваших командах amixer вам нужно указывать три вещи:

1. Звуковая карта (номер карты), свойством которой вы хотите управлять.
2. Устройство/элемент управления, громкостью которого вы хотите управлять.
3. Значение громкости в процентах или децибелах, которое вы хотите установить, увеличить или уменьшить. Вы также можете указать, хотите ли вы отключить звук для звуковой карты.

Команда scontrols позволяет просматривать список элементов управления, которыми вы можете управлять:

Как сделать звук на линуксе. Смотреть фото Как сделать звук на линуксе. Смотреть картинку Как сделать звук на линуксе. Картинка про Как сделать звук на линуксе. Фото Как сделать звук на линуксе

1. Следующая команда установит громкость на главном элементе управления/устройстве первой звуковой карты на 100%.

2. Следующая команда установит громкость на элементе управления/устройстве Speaker второй звуковой карты на 30%.

3. Следующая команда установит громкость на элементе управления/устройстве Speaker второй звуковой карты на 3 дБ.

4. Следующая команда увеличит громкость на элементе управления/устройстве Speaker второй звуковой карты на 2 дБ.

5. Используйте следующие команды, чтобы отключить или включить звук устройства.

Источник

Лучшие аудио редакторы 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:

На официальном сайте бесплатная версия доступна только в виде исходников. Однако пользователи убунтуподобных операционных систем могут установить 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 для аудио вполне подходит. А вам приходилось писать или редактировать музыку? Расскажите в комментариях, какими приложениями пользовались и какие из них понравились больше всего.

Источник

Как сделать звук на линуксе

В статье даны конкретные примеры настройки звуковой карты (или нескольких карт) компьютера с помощью «стандартных средств», входящих в состав дистрибутива Ubuntu (в моей Runtu 14.04 были установлены по-умолчанию).

1. Консольная утилита «AlsaMixer».

Открыть терминал и ввести : alsamixer.

Как сделать звук на линуксе. Смотреть фото Как сделать звук на линуксе. Смотреть картинку Как сделать звук на линуксе. Картинка про Как сделать звук на линуксе. Фото Как сделать звук на линуксе

Откроется такое окно. Как видно, хоть программа и терминальная, но имеет графическое оформление, вполдне доступное для понимания. Всё просто и даже в основном по-русски! :-))

Как сделать звук на линуксе. Смотреть фото Как сделать звук на линуксе. Смотреть картинку Как сделать звук на линуксе. Картинка про Как сделать звук на линуксе. Фото Как сделать звук на линуксе

Как сделать звук на линуксе. Смотреть фото Как сделать звук на линуксе. Смотреть картинку Как сделать звук на линуксе. Картинка про Как сделать звук на линуксе. Фото Как сделать звук на линуксе

С остальными настройками также несложно разобраться, а для посильной бесплатной помощи существует клавиша «F1». Стрелками «вверх-вниз-влево-вправо» можно выбирать нужное звуковое устройство и задавать уровень его громкости/чувствительности.

2. Утилита «Pavucontrol» («PulseAudio»)

Для запуска набрать в терминале: pavucontrol :

Как сделать звук на линуксе. Смотреть фото Как сделать звук на линуксе. Смотреть картинку Как сделать звук на линуксе. Картинка про Как сделать звук на линуксе. Фото Как сделать звук на линуксе

Как сделать звук на линуксе. Смотреть фото Как сделать звук на линуксе. Смотреть картинку Как сделать звук на линуксе. Картинка про Как сделать звук на линуксе. Фото Как сделать звук на линуксе

Либо сделать это же, щёлкнув по значку динамика («Рег. Громкости») и, далее, по «Параметрам звука» :

Как сделать звук на линуксе. Смотреть фото Как сделать звук на линуксе. Смотреть картинку Как сделать звук на линуксе. Картинка про Как сделать звук на линуксе. Фото Как сделать звук на линуксе

А можно ещё кликнуть по «динамику» правой кнопкой мыши и выпадет дополнительное меню, где следует выбрать строчку «Настройка каналов (двойной щелчок)» :

Как сделать звук на линуксе. Смотреть фото Как сделать звук на линуксе. Смотреть картинку Как сделать звук на линуксе. Картинка про Как сделать звук на линуксе. Фото Как сделать звук на линуксе

(что делает двойной щелчок лично я так и не понял. Для запуска программы оказалось достаточно даже одного щелчка, что экономит силы и время :-))

Таким образом, существует возможность зайти в программу настройки звука аж тремя способами! Это «разнообразие» способов вряд-ли имеет особый практический смысл, однако может вселить в пользователя уверенность в полной власти над «системой» и поверить в возможность свободного выбора! :-)) Как хочу, так и ворочу.

Каким бы из вышеуказанных способом вы не воспользовались, результат будет одинаковым и, скорее всего — положительным. Тогда откроется следующее окно настроек:

Как сделать звук на линуксе. Смотреть фото Как сделать звук на линуксе. Смотреть картинку Как сделать звук на линуксе. Картинка про Как сделать звук на линуксе. Фото Как сделать звук на линуксе

Как сделать звук на линуксе. Смотреть фото Как сделать звук на линуксе. Смотреть картинку Как сделать звук на линуксе. Картинка про Как сделать звук на линуксе. Фото Как сделать звук на линуксе

Но для начала во вкладке «Конфигурация» следует выбрать свою звуковую карту. Если у вас она одна, то делать здесь, в общем-то, ничего особо не придётся. У меня же их три, что предоставляет, опять же, свободу действий и право личного выбора, но несколько усложняет жизнь :-)) :

Как сделать звук на линуксе. Смотреть фото Как сделать звук на линуксе. Смотреть картинку Как сделать звук на линуксе. Картинка про Как сделать звук на линуксе. Фото Как сделать звук на линуксе

Следует выбрать одну из звуковых карт, для остальных желательно указать параметр «Выключено» (при включении, например, сразу двух карт, у меня звук появлялся и пропадал на обеих картах совершенно непредсказуемым образом). Вообще, чтобы карта «активировалось» для настроек, необходимо воткнуть в неё необходимые разъёмы — наушники, колонки, микрофоны и т.д. (по крайней мере, это будет более корректно). Не следует втыкать в карту посторонние предметы и всё что попало (спички, отвёртки и им подобное), ибо это никак не поспособствует улучшению качества звука, а приведёт к непредсказуемым для науки результатам и даже порче дорогого имущества! :-))

В строке выбранной звуковой карты, справа, можно разглядеть «кнопку» со стрелкой :

Как сделать звук на линуксе. Смотреть фото Как сделать звук на линуксе. Смотреть картинку Как сделать звук на линуксе. Картинка про Как сделать звук на линуксе. Фото Как сделать звук на линуксе

При нажатии на неё выпадет спиcок возможных конфигураций звуковой схемы:

Как сделать звук на линуксе. Смотреть фото Как сделать звук на линуксе. Смотреть картинку Как сделать звук на линуксе. Картинка про Как сделать звук на линуксе. Фото Как сделать звук на линуксе

Ну и на этом я позволю себе закончить увлекательное и познавательное (отчасти) повествование, ибо на этом известные мне в настоящий момент времени способы настроек звуковых карт, в общем то, исчерпаны.

Извините за внимание.

Автор предупреждает, что его мнение не всегда совпадает с тем, что он тут пишет :-))

Источник

Программирование звука в Linux

Андрей Боровский
borovsky@yandex.ru

Эта статья посвящена программированию звуковой подсистемы Linux. Мы рассмотрим различные аспекты программирования звука: от работы с основными устройствами до форматов хранения аудиоданных. Разумеется, в журнале нельзя полностью охватить материал, оригинальная документация по которому насчитывает сотни страниц, так что моя задача √ помочь читателю сориентироваться в многообразии устройств и средств программирования.

Оборудование и данные

Микшер

Большинство звуковых карт оборудовано микшерами. Микшер √ это устройство, позволяющее устанавливать уровни записи/воспроизведения для других устройств, а также выбирать источник записываемых данных.

Цифровое аудио

Цифровое аудио (digital audio) √ самый простой и естественный формат хранения и передачи звука в цифровых устройствах. Принцип цифрового аудио следующий: аналого-цифровой преобразователь считывает значения амплитуды аналогового сигнала через определенные интервалы времени. Каждое значение кодируется числом, которое записывается в одном или нескольких байтах (один такой код называется сэмплом). В стереозаписи сэмплы, соответствующие левому и правому каналам, либо записываются на одном треке, чередуясь друг за другом, либо размещаются непрерывно на отдельных треках. Рассмотренная ниже система OSS использует чередование сэмплов. При воспроизведении выполняется обратное преобразование из цифровой в аналоговую форму. Качество записи определяют частота дискретизации и разрядность кодирования амплитуды.
Максимальная частота дискретизации, поддерживаемая большинством звуковых карт, составляет 48 КГц. Карты класса Hi-End поддерживают частоты дискретизации до 96 КГц (DVD audio). Сэмплы кодируются 8, 16 и 24 битами (последнее значение поддерживается не всеми картами). Для записи одной секунды одноканального звука с частотой дискретизации 8 КГц и разрядностью сэмплов 8 бит (качество цифрового телефона) потребуется 8000 байтов. Пропускная способность канала для передачи такого сигнала должна составлять 64 КБит/сек. Для записи одной секунды стереозвука с частотой дискретизации 44,1 КГц и разрядностью сэмплов 16 бит (что соответствует качеству аудио-CD) понадобится 172 КБ а пропускная способность канала должна быть не меньше 1.5 MБит/сек. Из этих расчетов становится очевидным, почему в большинстве форматов хранения цифрового аудио применяются различные методы сжатия данных.
MIDI
Протокол MIDI (Musical Instrument Digital Interface) используется электронными музыкальными инструментами, а также специальными устройствами воспроизведения звука. В MIDI передается не закодированный звуковой сигнал, а набор инструкций, описывающих мелодию, которую должны исполнять инструменты, поэтому запись в формате MIDI гораздо компактнее, чем запись в формате цифрового аудио. Главным недостатком MIDI с точки зрения программирования звука на компьютере является то, что этот протокол может воспроизводить только музыку, причем ее звучание будет зависеть от возможностей конкретной звуковой карты. Практически все звуковые карты оснащены портами для подключения внешних MIDI-устройств. Кроме того, большинство карт обладает встроенными MIDI-синтезаторами, позволяющими воспроизводить MIDI-музыку через аудиосистему самой карты.

Драйверы и интерфейсы

На сегодняшний день в Linux наиболее распространены две аудиоподсистемы: OSS и ALSA.
OSS (Open Sound System), разрабатываемая компанией 4Front Technologies, по замыслу разработчиков должна стать средством построения единого звукового интерфейса для различных UNIX-платформ и совместимых с ними систем. OSS представляет собой набор драйверов звуковых карт и библиотек, реализующих простые и удобные интерфейсы программирования. Система OSS распространяется в двух вариантах: OSS/Free и OSS Commercial. С сайта www.opensound.com можно бесплатно загрузить пробную версию OSS Commercial, обладающую более широкими возможностями по сравнению с OSS/Free и функционирующую в течение длительного периода времени. К достоинствам OSS следует отнести широкий спектр поддерживаемых звуковых карт и полноту проработки драйверов √ OSS позволяет работать со всеми типами встроенных в карты устройств, хотя новые карты не всегда поддерживаются полностью. Еще одно достоинство √ подробная документация.
Система ALSA (Advanced Linux Sound Architecture), как видно из названия, предназначена специально для Linux. Проект ALSA является открытым и начат сравнительно недавно (на момент написания этой статьи стабильная версия драйверов добралась лишь до номера 0.5.12). На сайте проекта www.alsa-project.org можно загрузить последнюю версию системы и документацию, которая еще далеко не полна. ALSA хорошо справляется с программированием микшера и цифрового аудио, однако поддержка MIDI-синтезаторов пока что отсутствует. Кроме того, при работе с некоторыми дистрибутивами Linux, ALSA не поддерживает устройство /dev/sndstat, позволяющее получать информацию о параметрах установленного звукового оборудования. Главное достоинство ALSA √ полная открытость проекта, остальные преимущества носят пока скорее потенциальный характер.
В распоряжении Linux-программиста есть и другие пакеты, например, ориентированная на KDE система aRts. В примерах программ, приведенных в этой статье, используется OSS.

Программирование микшера

Драйверы OSS позволяют обращаться к микшерам посредством файлов /dev/mixer00, /dev/mixer01 и т.п. Обычно к первому из доступных микшеров можно также обратиться по символической ссылке /dev/mixer. Все основные константы OSS для работы с микшером (как, впрочем, и с другими аудиоустройствами) объявлены в файле soundcard.h. Интерфейс микшера позволяет считывать и устанавливать значения уровней записи/воспроизведения для различных каналов, а также указывать канал-источник записи.
Перед началом работы с микшером надо открыть соответствующий файл устройства (например, /dev/mixer). Дальнейшая работа с файлом выполняется при помощи функции ioctl. Чтобы определить, какие каналы поддерживает данный микшер, следует вызвать функцию ioctl, передав в параметре request константу SOUND_MIXER_READ_DEVMASK.
ioctl(mixer_fd, SOUND_MIXER_READ_DEVMASK, &mask);

Здесь mixer_fd √ дескриптор файла микшера. В переменной mask будет возвращена маска каналов. Каждый бит маски соответствует определенному каналу. Если бит установлен, канал поддерживается. Битам маски соответствуют константы, определенные в файле soundcard.h. Их имена начинаются с префикса SOUND_MASK_, за которым следует имя канала. Обозначения основных каналов приводятся в таблице:

Общий уровень воспроизведения для основного выхода звуковой карты

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *