Наша совместная команда Banwar.org

Связаться с нами

  • (097) ?601-88-87
    (067) ?493-44-27
    (096) ?830-00-01

Статьи

Ubuntu 14.04 і PulseAudio. Звук на 192000 Hz »Crossroads

Звук в Linux в порівнянні з Windows завжди був огидний. Справедливості заради варто помітити, що в Windows він теж не відрізняється кристально, але лише до установки драйвера з сайту виробника звукової карти. Сумно, але за останні п'ять років мені не траплялися пропрієтарні драйвери під Linux від виробників заліза.
Особисто для мене став одкровенням той факт, що PulseAudio в Ubuntu "з коробки" може відтворювати звук з частотою, вище ніж 44100 Hz. А отже і якість звуку на слух в Linux може бути краще, ніж звук будильника в каструлі. Треба лише внести невелику правку в конфігураційний файл.
Встановивши драйвер в Windows, користувачеві зазвичай досить відкрити графічний інтерфейс і вказати в ньому те значення, яке йому потрібно. Якщо з заліза не можна вичавити більше, ніж до установки драйвера від виробника, то ці значення від користувача будуть приховані. І зручно і захист від дурня. В Ubuntu же по "доброї" традиції Canonical таких настройок немає зовсім. З кожним новим релізом мені завжди цікаво, що ж ще вони прибрали з Settings "для зручності користувача" і як ще урізали вибір, замінивши його "правильної" безальтернативністю в найвільнішою операційній системі. Але я не про це. Звук ...
Для того, щоб змусити PulseAudio відтворювати звук більш чітко, потрібно підправити конфігураційний файл daemon.conf за адресою / etc / pulse скориставшись який-небудь консольної утилітою, наприклад Nano.

sudo nano /etc/pulse/daemon.conf


У файл потрібно або додати, або розкоментувати наступні рядки, виділені на скріншоті. Для наочності файл у мене відкритий в gedit. Там же і рядки для багатоканального звуку, якщо у вас 5.1, наприклад.
Але слід дуже акуратно вносити зміни в вищевказаний файл, так як в разі помилки або якщо ваше залізо не підтримує певні настройки, PulseAudio може наглухо відвалитися.
У моєму випадку ідеально працює наступна конфігурація:
default-sample-format = float32ne default-sample-rate = 192000 alternate-sample-rate = 48000 default-sample-channels = 2 default-channel-map = front-left, front-right default-fragments = 2 default-fragment- size-msec = 125 resample-method = soxr-vhq enable-lfe-remixing = no high-priority = yes nice-level = -11 realtime-scheduling = yes realtime-priority = 9
Для застосування змін потрібно перезапустити PulseAudio (~ $ pulseaudio --kill) або сесію.
Таким чином звук у мене тепер 32 bit з частотою 192000 Hz. За замовчуванням він - 16 bit і 44100 Hz. Відчутна різниця. Якщо прикрутити еквалайзер, то буде ще краще.
Всі ці параметри індивідуальні. Мій звук, вбудований в материнську плату, не відрізняється особливою продуктивністю, так що вищевказана конфігурація повинна працювати на більшості середніх ПК.
default-sample-channels і default-channel-map в моєму випадку вказують на двухканальную (стерео) конфігурацію. Приберіть ці рядки, якщо у вас більше двох каналів. Для 5.1, наприклад, слід вказати щось подібне:
default-sample-channels = 6 enable-lfe-remixing = yes
Якщо ж після правки daemon.conf PulseAudio у вас все ж відвалився, то завжди можна закомментировать ту чи іншу рядок для використання параметра за замовчуванням і спробувати запустити PulseAudio знову. Основні підозрювані в те, що PulseAudio помер, такі рядки:
default-sample-format = float32ne default-sample-rate = 192000 resample-method = soxr-vhq
В default-sample-format (endian, зворотний порядок байт) можна вказати le (little-endian), або be (big-endian) в залежності від CPU. Однак процесори x86, x86-64 (практично всі десктопні ПК, ноутбуки та інше) мають little-endian. Тому доцільно вказати значення le. Так само в цьому рядку можна прописати s24-32le (допомагає там, де звук на 32 біт не працює), або float32le, або float32be, однак перед цим потрібно переконатися в тому, що ваша машина фізично в змозі відтворювати 32-х бітний звук.
default-sample-rate = 192000 - працює не завжди і не скрізь. Конфігурація може працювати, але параметр буде ігноруватися (зустрічається на Ubuntu); параметр може перешкоджати запуску PulseAudio (в Debian) ... Тут слід встановити максимальний робочий значення. Наприклад 48000. У будь-якому випадку 192000Hz - це максимальне значення, і якщо 192000Hz працює в Windows, то не факт, що заведеться в Linux з незрозумілих мені причин.
soxr-vhq в resample-method може так само бути причиною. Параметр може мати інше значення для кращого результату у вашій конфігурації. Наприклад speex-float-9 або speex-fixed-9. Значення float на більшості десктопних CPU дає кращу продуктивність і якість. Дев'ятка ж на кінці відповідає за якість. Значення може бути від 0 до 9 (від гіршого до кращого).
Детальніше про ці значеннях можна дізнатися.
~ $ Pulseaudio --start запустить PulseAudio або повідомить про помилку, якщо конфігурації не працює на вашому ПК.

___
Tatyana K.

Новости

Banwar.org
Наша совместная команда Banwar.org. Сайт казино "Пари Матч" теперь доступен для всех желающих, жаждущих волнения и азартных приключений.