几年前,我能够通过以下方式将内核传输到声音设备
cat /vmlinuz > /dev/dsp
但是,我在 Natty 11.04 中不再有声音设备。有什么想法吗,我该如何在新版本的 Ubuntu 中做到这一点?
答案1
在终端中:
cat /vmlinuz | padsp tee /dev/dsp > /dev/null
Ubuntu 使用 PulseAudio 作为其声音服务器(我相信之前使用过 ALSA 的 dmix。我不记得了。)
padsp 是一个 PulseAudio 工具,它将 /dev/dsp 包装到 PulseAudio。
oss-compat 包(由 MrShunz 建议)启用了 ALSA 的 OSS 兼容层,因此它必须经过 ALSA 才能到达 PulseAudio,后者最终使用 ALSA 访问声音设备。因此:
oss-compat: OSS->ALSA->PulseAudio->ALSA
padsp: OSS->PulseAudio->ALSA
我认为 padsp 也已默认安装。如果没有,bash 会告诉您哪个包包含它 :)
答案2
新版本的alsa
声音设备位于 目录下/dev/snd/
。查找pcmXXXX
设备。
或者您可以随时安装该oss-compat
包以获得/dev/dsp
:
# aptitude show oss-compat
Package: oss-compat
State: not installed
Version: 0.0.4+nmu3
Priority: extra
Section: universe/sound
Maintainer: Ubuntu MOTU Developers <[email protected]>
Uncompressed Size: 61.4 k
Depends: module-init-tools | modutils | hurd
Description: OSS compatibility package
This package ensures that OSS support is provided in some way. On Linux, it enables the ALSA compatibility modules. On other
kernels where OSS is the default interface, no action is taken.
The purpose of this package is for applications that only support OSS to depend on it, hence preventing common "/dev/dsp not found"
errors that would confuse unexperienced users.