27 ноября 2011 г.

Pulseaudioи качество звука

Все началось с того, что мне захотелось разобраться почему звук Skype при разговоре значительно ниже чем звук того же mplayer, хотя в настройках микшера и для Skype и для mplayer уровни стоят одинаковые - на всю громкость.

Забегая вперёд скажу, что так и не нашёл ответа, зато поигрался с настройками pulseaudio для повышения качества звука о чем и хотел бы рассказать.

Итак все настройки о которых пойдет речь дальше живут в файле /etc/pulse/daemon.conf

Подробно о всех настройках читаем тут man pulse-daemon.conf

Судя по мануалам за качество звука отвечают следующие параметры

  • resample-method
  • default-sample-format
  • default-sample-rate

Начнём по прядку

resample-method - остановился на значении speex-float-10. Вроде бы значение src-sinc-best-quality по качеству выше, но и нагрузка на процессор тоже.

default-sample-format - нужно поставить float32le. Обратите внимание, что есть значения заканчивающиеся на le - little-endian и be - big-endian - зависит от порядка байт используемых процессором. Для x86 архитектуры это le, для SPARC - be.

default-sample-rate - на слух уловил разницу только когда ошибся и не дописал один 0 в значение 48000. Оставил по умолчанию 44100, т.к. 48000 сильно грузит процессор, а на слух разницы нет. Возможно какой-нить современный Моцарт и услышит, но я к этой категории не отношусь :-)

Рекомендую для каждой машины подбирать параметры экспериментально и не забивать смотреть на top, т.к. некоторыми комбинациями параметров я загружал процессор на 100%

После изменения параметров в конфиге чтобы новые настройки вступили в силу нужно выполнить pulseaudio -k

Есть ещё параметры которые влияют на загрузку процессора, но не влияют на качество:

  • default-sample-channels
  • default-channel-map

Эти значения должны соответствовать друг другу
default-sample-channels = 2
default-channel-map = front-left,front-right
или
default-sample-channels = 6
default-channel-map = front-left,front-right,rear-right,rear-left,front-center,lfe
Остановился на варианте из 6-ти каналов. Опять же на слух все 6 колонок как звучали так и звучат, нагрузка на процессор немного больше, но как-то приятней на душе что в конфиге включено 5.1