一种linux声音解决方案ALSA+pauseaudio

ALSA(高级Linux声音体系)是为声卡提供驱动的Linux内核组件,以替代原先的OSS(开放声音系统).这两个是系统发出声音最低层的软件系统,可以视为(或者就是)驱动.

PulseAudioESD是两个声音服务器,简单说,软件要发声就先发消息给声音服务器,然后声音服务器经过处理(主要是多条音频流的混音),然后发给驱动控制声音设备发出声音.

选用pulseaudio+alsa的好处和坏处,好处就是解决混音和声卡独占问题,缺点就是有些软件(极其个别)还不支持

 

声音服务器并不是必须的,你可以跳过esdpulseaudio直接控制alsaoss,只是没有了单独的声音控制以及混音功能.有的同学说了,不对啊,我就能混音,其实那是因为alsa自带了一个很简单的混音器dmix,这也是混音常常出问题,常常声卡独占的原因.用 pulseaudio 代替 alsa 自带的 dmix 可以明显减小 mpd 的 cpu 占用。


ALSA不同,PulseAudio可以在多个操作系统中运行,包括其他的POSIX平台和微软的Windows。也就是说如果你建立一个是用PulseAudio的应用程序而非ALSA,把这个应用移植到另一个平台会很容易。

 

Music Player Daemon (MPD)是一个小巧的,功能强大的服务器端音乐播放器。在其网络协议下,通过添加插件和音乐库可以播放大量格式的音乐文件。除了播放之外,他还能管理播放列表,管理音乐数据库。由于是后台进程,所以需要一个单独的客户端。


你可能感兴趣的:(linux)