Вы установили Steam в Linux, затем несколько игр из своей библиотеки и продолжаете наслаждаться играми. Вы запустили любимую игру, включили колонки или надели наушники, а затем бросились выключать их из-за надоедливого треска. Это ваш опыт игры в Steam для Windows под Linux?
Источником проблемы является неправильно настроенный параметр в Pulsaudio, который может проявляться в любых дистрибутивах Linux. К счастью, это легко исправить. Читайте дальше, чтобы узнать, как можно решить проблему со звуком треска в играх Steam в Linux с помощью простой настройки.
Также читайте: Как записать системный звук в Linux
Настройка демона PulseAudio
Решение нашей проблемы состоит из двух этапов, с возможностью последующего устранения неполадок на всякий случай. Начнем с настройки демона PulseAudio.
Запустите свой любимый терминал и введите:
sudo nano /etc/pulse/daemon.conf
Contents
Настройка демона PulseAudio
eam Games Nano Daemon Conf">Найдите параметры «default-fragments» и «default-fragment-size-msec». Оба уже должны существовать, но если их нет, смело добавляйте их самостоятельно. Установите их значения 2 и 4 соответственно. Они должны выглядеть примерно так:
default-fragments = 2 default-fragment-size-msec = 4
Сохраните обновленный файл и перезапустите PulseAudio, чтобы применить изменения. Вы можете сделать это с помощью:
pulseaudio -k
На этом первая часть наших настроек завершена. Не волнуйтесь, следующий вариант еще проще!
Настройка звукового сервера
Перезапустите свой любимый текстовый редактор, но на этот раз отредактируйте файл, определяющий, как должен запускаться звуковой сервер PulseAudio, с помощью:
sudo nano /etc/pulse/default.pa
Найдите раздел, который указывает PulseAudio загружать модули драйверов с помощью udev. Это будет выглядеть так:
### Automatically load driver modules depending on the hardware available .ifexists module-udev-detect.so load-module module-udev-detect .else ### Use the static hardware detection module (for systems that lack udev support) load-module module-detect .endif
Обновите его, добавив tsched=0
в конце «load-module module-udev-detect», чтобы новая версия выглядела так:
### AutomaticallНастройка звукового сервера
he hardware available .ifexists module-udev-detect.so load-module module-udev-detect tsched=0 .else ### Use the static hardware detection module (for systems that lack udev support) load-module module-detect .endif
Сохраните изменения и перезапустите PulseAudio еще раз:
pulseaudio -k
И все – надеемся, проблема исчезнет.
Устранение неполадок
Если приведенные выше настройки улучшили вашу ситуацию, но она все еще не исправлена полностью, отредактируйте первый файл заново и увеличьте значения параметров «default-fragments» и «default-fragment-size-msec». Попробуйте такие значения, как «3» и «5» или «4» и «8» соответственно. Не сходите с ума с самого начала, а постепенно увеличивайте значения, пока проблема не будет устранена.
С другой стороны, если эти изменения усугубили проблему, стоит пойти наоборот. Уменьшите значения этих двух параметров, затем вернитесь ко второму файлу и измените настройку на tsched=1
.
Перезапустите PulseAudio еще раз и проверьте, решена ли на этот раз проблема. Если это не так, вернитесь к обоим файлам и отмените все изменения. К сожалению, в данном случае источник проблемы кроется в другом.
Стоит попробовать разные драйверы для вашей аудиоподсистемы, но поскольку они, как правило, включены в ядро, это будет означать замену ядра вашего дистрибутива на другое. Проверьте, есть ли более новая версия. Если нет, либо вернитесь к предыдущей версии, либо установите альтернативное ядро, например Ликорикс .
Драйверы, буферы, планирование
Вы можете задаться вопросом, почему эти параметры (возможно) решили вашу проблему. Все зависит от оборудования вашей аудиоподсистемы, ее драйверов и того, как PulseAudio ее использует.
Первые два параметра, которые мы изменили, раз
Устранение неполадок
на фрагменты. В зависимости от вашей аудиоподсистемы это может помочь операционной системе передавать данные в вашу аудиоподсистему, которые затем преобразуются в звук.Второй параметр меняет подход к планированию PulseAudio. Начиная с версии 0.9.11, PulseAudio использует модель на основе системного таймера. Однако для этого ваше оборудование и драйвер должны возвращать точную информацию о времени. Некоторые так и делают, например, решения Intel. Это считается современным и лучшим подходом. Некоторые, например, многие звуковые карты Creative, этого не делают. В зависимости от вашего оборудования и драйверов включение или выключение планировщика таймера (представленный нами параметр tsched
) (значения 1 или 0) может иметь огромное значение.
Если вместо этого у вас проблема без звука в Ubuntu, вот как это исправить .