OSS + PulseAudio = запись звука и работающий голос в Steam, Skype под Linux · Все темы

Немного обычной пингвинской магии для того, чтобы на компьютере с драйверами Open Sound System в Steam заработал ввод звука.
1) Устанавливаем pulseaudio, так как у ALSA проблемы с записью через OSS.
2) Копируем /etc/pulse/default.pa в ~/.config/pulse/default.pa и добавляем туда примерно такие строки (номера устройств подскажет ossinfo):

# Подключаем DSP-устройство для воспроизведения звука
load-module module-oss device="/dev/dsp0" sink_name=output mmap=0
# Подключаем DSP-устройство для записи звука
load-module module-oss device="/dev/dsp2" source_name=input mmap=0

# Можно настроить USB-карточки примерно так, но после подключения надо будет делать:
# sudo /usr/lib/oss/scripts/oss_usb-create-devices
# pulseudio --kill && pulseaudio --start
.ifexists /dev/oss/usb046d0a29-2/pcm0
load-module module-oss device="/dev/oss/usb046d0a29-2/pcm0" sink_name=h800 mmap=0
load-module module-oss device="/dev/oss/usb046d0a29-1/pcmin0" source_name=h800_mic mmap=0
.endif

set-default-sink output
set-default-source input

Перезапускаем Pulse:
$ pulseudio --kill && pulseaudio --start
Если всё сделано правильно, то после этого приложения, работающие через Pulseaudio, смогут выводить и записывать звук через OSS-драйвера, например, в Steam заработает голос (например, тимспик в Counter-Strike). Возможно, даже заработает Skype (но я пока не проверял).
Можно добавить несколько звуковых карт и переключать их, например, с помощью pavucontrol. Из неприятных мелочей, PA отображает все устройства с одним и тем же именем (которое, кажется, берёт от /dev/dsp), так что угадать, где какое, можно только по порядку.

UPD: Проверил Скайп - тоже нормально работает.

UPD2: Столкнулся с проблемой, что при длительном простое компьютера звук может заглючить (хотя все режимы энергосбережения у меня отключены). Скрипт для ремонта:

#!/bin/bash
sudo killall pulseaudio
sudo killall -s KILL pulseaudio
sudo /etc/init.d/oss restart
pulseaudio -D

Tags: Linux.


Comments:

No Comments for this post yet...

Leave a comment:

Your email address will not be displayed on this site.
Your URL will not be displayed on this site. Comments containing URL's of non-personal pages may be removed.
Confirmation Code:
Human Confirmation Code (Captcha)

HTML tags and "<", ">" symbols are not allowed. Links will not be converted to hyperlinks. Any commercials are removed and reported as abuse.

Archives

                                                                                                                                                                                                                                                                   


© Sergey A. Galin, 1998-2021 sageshome.net/blog/