Настройка качества звука в Linux Mint 19.3 через Pulseaudio.
В Linux Mint по умолчанию для Pulseaudio установлен режим производительности, который является режимом низкого качества звука с минимальными накладными расходами для процессора. В обычном случае это работает хорошо и не создаёт никаких проблем, но если целью является получить наилучший звук, который способно выдать имеющееся оборудование, то для такого стандартные настройки не годятся.
Стандартные значения.
Настройка Pulseaudio производится через простой конфигурационный файл:
Вывести список параметров и их значения в терминал:
Значения по умолчанию в Linux Mint 19.3:
Редактирование значений.
Редактировать этот конфигурационный файл можно любым текстовым редактором с правами суперпользователя. Рекомендую nano.
Текстовые комментарии закомментированы знаком #
Перечисленные в файле параметры закомментированы знаком ;
Чтобы изменить значение параметра, его нужно раскомментировать, убрав ;
Чтобы изменённые параметры вступили в силу, нужно применить конфигурацию Pulseaudio:
Альтернативный метод через уничтожение процесса и его запуск:
pulseaudio —kill && pulseaudio —start
Может быть достаточно просто pulseaudio —kill и дальше демон (сервис) запустится автоматически.
Улучшение звука.
Основными параметрами, влияющими на качество звучания, являются resample-method и default-sample-format.
Вывести поддерживаемые оборудованием значения параметров:
aplay —device hw /dev/urandom —dump-hw-params
Параметр resample-method.
У resample-method значение по умолчанию auto, что, скорее всего, означает resample-method = speex-float-1, то есть высокая производительность, но низкое качество. Поэтому оптимальнее выбрать конкретный метод. Так же это может помочь решить проблему с «хрипами».
resample-method = speex-float-n — это компромиссный высокопроизводительный метод, где n означает целое число от 1 до 9. Чем выше значение, тем лучше качество звучание, но выше накладные расходы для производительности. В качестве компромиссного варианта рекомендуется значение в диапазоне от 5 до 7. Для максимального качества значение 9.
resample-method = src-sinc-n-quality — [устаревший параметр] — метод предназначенный для звука высокого качества, где n означает best, medium и fastest варианты. Метод создаёт значительную нагрузку на процессор.
resample-method = soxr-n — [актуальный параметр] — метод предназначенный для звука высокого качества, является заменой rc-sinc. Здесь n означает mq, hq и vhq. Метод создаёт значительную нагрузку на процессор.
resample-method = copy — самое высокое качество, но при высокой нагрузке на процессор.
Примечание: При загрузке процессора, близкой к 100%, на высоком уровне качества может появляться «треск».
Параметр default-sample-format .
Значение по умолчанию s16le, что является качеством ниже среднего, но с низкой нагрузкой на процессор.
Для высокого качества, нужно указать следующее значение:
После завершения редактирования конфигурационного файла с сохранением изменений необходимо применить новые значения для параметров:
После выполнения команды изменения тут же вступят в силу. Теперь можно наслаждаться высококачественным звучанием.
Блог начинающего линуксоида.
советы, руководства, инструкции.
Страницы
четверг, 11 июня 2015 г.
Гайд по настройке PulseAudio. Часть первая.
Вот некоторые возможности PulseAudio:
- Высококачественное программное микширование нескольких аудиопотоков с поддержкой более одного входа и выхода. Может использоваться для объединения нескольких звуковых карт в одну (с изменением частоты дискретизации).
- Множество поддерживаемых клиентских библиотек. Приложения, использующие ESD, ALSA, oss, libao и GStreamer, поддерживаются без необходимости внесения каких-либо изменений в них. Модули для работы PulseAudio доступны для xmms и mplayer.
- Внесение достаточно малых временных задержек и очень точное измерение времени задержки для воспроизведения и записи. Возможность полной синхронизации нескольких потоков воспроизведения.
- Сетевая прозрачность: приложения могут воспроизводить или записывать звук на компьютере, отличном от того, на котором они выполняются.
- Расширяемая архитектура с модулями для jackd, multicast-rtp, lirc и avahi, в числе прочих.
- Раздельная установка уровней громкости для разных программ.
- Расширяемая модульная система с поддержкой динамически загружаемых библиотек
- Совместимость со многими популярными аудиоприложениями.
- Использование технологии zero-copy, сберегающей машинное время.
- Интерфейс командной строки с возможностью использования сценариев.
- Демон, перенастраиваемый с помощью командной строки.
- Встроенное преобразование аудиоформатов.
- Смешиваемые потоки могут иметь разные частотные характеристики.
- Эффективный микшер, даже для звуковых плат без микшера, предотвращающий «монополизацию»/«кражу» звукового устройства отдельной программой.
PulseAudio — это не замена звуковой подсистеме ALSA. Он работает поверх ALSA, оперируя потоками. PulseAudio полностью совместим с приложениями ALSA и OSS. Для приложений OSS PulseAudio предоставляет утилиту padsp , создающую файлы типа /dev/dsp , через которые программа работает со звуковым сервером. Здесь я опишу опциональную настройку звукового сервера, способы улучшения качества звука и решение некоторых проблем.
Настройка демона
# This file is part of PulseAudio.
#
# PulseAudio is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# PulseAudio is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with PulseAudio; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
# USA.## Configuration file for the PulseAudio daemon. See pulse-daemon.conf(5) for
## more information. Default values are commented out. Use either ; or # for
## commenting.; daemonize = no
; fail = yes
; allow-module-loading = yes
; allow-exit = yes
; use-pid-file = yes
; system-instance = no
; local-server-type = user
; enable-shm = yes
; shm-size-bytes = 0 # setting this 0 will use the system-default, usually 64 MiB
; lock-memory = no
; cpu-limit = no; high-priority = yes
; nice-level = -11; realtime-scheduling = yes
; realtime-priority = 5; exit-idle-time = 20
; scache-idle-time = 20; dl-search-path = (depends on architecture)
; load-default-script-file = yes
; default-script-file = /etc/pulse/default.pa; log-target = auto
; log-level = notice
; log-meta = no
; log-time = no
; log-backtrace = 0# resample-method defaults to speex-float-1 on most architectures,
# speex-fixed-1 on ARM
; resample-method = speex-float-1
; enable-remixing = yes
; enable-lfe-remixing = no; flat-volumes = yes
; rlimit-fsize = -1
; rlimit-data = -1
; rlimit-stack = -1
; rlimit-core = -1
; rlimit-as = -1
; rlimit-rss = -1
; rlimit-nproc = -1
; rlimit-nofile = 256
; rlimit-memlock = -1
; rlimit-locks = -1
; rlimit-sigpending = -1
; rlimit-msgqueue = -1
; rlimit-nice = 31
; rlimit-rtprio = 9
; rlimit-rttime = 1000000; default-sample-format = s16le
; default-sample-rate = 44100
; alternate-sample-rate = 48000
; default-sample-channels = 2
; default-channel-map = front-left,front-right; default-fragments = 4
; default-fragment-size-msec = 25; enable-deferred-volume = yes
; deferred-volume-safety-margin-usec = 8000
; deferred-volume-extra-delay-usec = 0
Настройка качества звука.
Внимание : начиная с выпуска Pulseaudio 7, параметр src-sinc заменён на soxr-mq (среднее качество), soxr-hq (высокое качество) и soxr-vhq (очень высокое качество). Если у вас эти методы не работают — установите библиотеку libsoxr0.
Перезапустите демон:
pulseaudio -k
Настраиваем буфер звуковой карты.
Помните, я говорил, что можно указать размер буфера именно для своей звуковой карты? Сейчас мы его вычислим. Для начала нужно отключить PulseAudio:
echo autospawn = no >>
/.config/pulse/client.conf
pulseaudio -k
Далее получаем значения:
LANG=C timeout —foreground -k 10 -s kill 10 pulseaudio -vvvv 2>&1 | grep device.buffering -B 10
sed -i ‘$d’
Вывод будет примерно таким:
Настройка для приложений использующих ALSA.
Поддержка объёмного звука.
Инструменты для настройки PulseAudio.
Card Profile: маппинг портов звуковой карты
Sink Port: переключение звука на наушники
Default Sink: звуковой выход по умолчанию
Move Sink-Input: перемещение звукового потока
Управление громкостью
7 комментариев:
После настройки качества звука перестал запускаться PulseAudio .
Для запуска PulseAudio после перезагрузки пришлось изменить команду запуска родную на pulseaudio —start