Nixos默认音频设备

时间:2019-05-08 11:54:40

标签: audio alsa nix nixos pulse

我正在尝试在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模拟设备。

我目前在环境中(对于sox)设置了AUDIODEV=hw:1,0,在vlcrc中设置了alsa-audio-device=sysdefault:CARD=Generic。可以,但是显然是针对用户和应用程序的,这对于声明性(声明性?)是一个痛苦。

似乎应该可以在主机级别进行设置,例如,通过设置

sound.extraConfig =
  ''
    pcm.!default {
      type hw
      card Generic
    }
  '';

在我的configuration.nix中,或者可能在配置pulseaudio。

我已经在NixOS Wiki(ALSAPulse),ArchLinuxPulse documentation等其他站点以及StackOverflow之类的其他站点(例如, stackexchange),但我什么都没找到。

我已经尝试了以上内容及其变体;并且还尝试了有无脉冲但我什么都没找到。

仅仅能够在该卡上的所有设备上发出声音也是一件好事。

一如既往,所有指针都感激不尽。

更新:这是我的/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

0 个答案:

没有答案