ALSA(高级Linux声音体系)是为声卡提供驱动的Linux内核组件,以替代原先的OSS(开放声音系统).这两个是系统发出声音最低层的软件系统,可以视为(或者就是)驱动.
而PulseAudio和ESD是两个声音服务器,简单说,软件要发声就先发消息给声音服务器,然后声音服务器经过处理(主要是多条音频流的混音),然后发给驱动控制声音设备发出声音.
选用pulseaudio+alsa的好处和坏处,好处就是解决混音和声卡独占问题,缺点就是有些软件(极其个别)还不支持
声音服务器并不是必须的,你可以跳过esd和pulseaudio直接控制alsa和oss,只是没有了单独的声音控制以及混音功能.有的同学说了,不对啊,我就能混音,其实那是因为alsa自带了一个很简单的混音器dmix,这也是混音常常出问题,常常声卡独占的原因.用 pulseaudio 代替 alsa 自带的 dmix 可以明显减小 mpd 的 cpu 占用。
和ALSA不同,PulseAudio可以在多个操作系统中运行,包括其他的POSIX平台和微软的Windows。也就是说如果你建立一个是用PulseAudio的应用程序而非ALSA,把这个应用移植到另一个平台会很容易。
Music Player Daemon (MPD)是一个小巧的,功能强大的服务器端音乐播放器。在其网络协议下,通过添加插件和音乐库可以播放大量格式的音乐文件。除了播放之外,他还能管理播放列表,管理音乐数据库。由于是后台进程,所以需要一个单独的客户端。
本文介绍了Linux下的ALSA声音体系,作为声卡驱动的替代方案,以及PulseAudio作为声音服务器的角色。PulseAudio解决了ALSA的混音和声卡独占问题,但也存在部分软件不支持的情况。使用PulseAudio可以降低MPD的CPU占用,并且具备跨平台特性。Music Player Daemon(MPD)是一个强大的服务器端音乐播放器,需要配合客户端进行操作。
586

被折叠的 条评论
为什么被折叠?



