Я пытаюсь настроить аудиоустройство по умолчанию на хосте NixOS.
Мои устройства alsa, таким образом:
$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: NVidia [HDA NVidia], device 3: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: NVidia [HDA NVidia], device 7: HDMI 1 [HDMI 1]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: Generic [HD-Audio Generic], device 0: ALC1220 Analog [ALC1220 Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: Generic [HD-Audio Generic], device 1: ALC1220 Digital [ALC1220 Digital]
Subdevices: 1/1
Subdevice #0: subdevice #0
У меня нет HDMI или цифровых аудиоустройств; Я просто хочу использовать обычное аналоговое устройство ALC1220.
В настоящее время у меня установлено AUDIODEV=hw:1,0
в моей среде (для sox) и alsa-audio-device=sysdefault:CARD=Generic
в моей vlcrc. Это работает, но очевидно, что оно зависит от пользователя и приложения и вызывает боль в склонении к склонности (declarity?).
Похоже, это должно быть что-то, что я могу установить на уровне хоста, например, установив
sound.extraConfig =
''
pcm.!default {
type hw
card Generic
}
'';
в моем файле configuration.nix или, возможно, при настройке pulseaudio.
Я искал помощи в вики NixOS ( ALSA , Pulse ), на других сайтах, таких как ArchLinux , Документация Pulse и другие сайты, такие как StackOverflow (например, stackexchange ), но я не могу найти ничего, что действительно работает.
Я пробовал вышеизложенное и его варианты; а также пробовал с & без Pulse; но я не нашел ничего, что работает.
Было бы просто здорово прослушивать звук на всех устройствах этой карты.
Как всегда, любые указатели с благодарностью получены.
Обновление : вот мой /etc/asound.conf
pcm_type.pulse {
libs.native = /nix/store/a3v4gh5lbb2g8fizq9xh8nbdp8qrvs6r-alsa-plugins-1.1.6/lib/alsa-lib/libasound_module_pcm_pulse.so ;
}
pcm.!default {
type pulse
hint.description "Default Audio Device (via PulseAudio)"
}
ctl_type.pulse {
libs.native = /nix/store/a3v4gh5lbb2g8fizq9xh8nbdp8qrvs6r-alsa-plugins-1.1.6/lib/alsa-lib/libasound_module_ctl_pulse.so ;
}
ctl.!default {
type pulse
}
(и этот модуль настоящий):
$ ls -l /nix/store/a3v4gh5lbb2g8fizq9xh8nbdp8qrvs6r-alsa-plugins-1.1.6/lib/alsa-lib/libasound_module_ctl_pulse.so
-r-xr-xr-x 1 root root 33512 Jan 1 1970 /nix/store/a3v4gh5lbb2g8fizq9xh8nbdp8qrvs6r-alsa-plugins-1.1.6/lib/alsa-lib/libasound_module_ctl_pulse.so