複製鏈接
請複製以下鏈接發送給好友

PulseAudio

鎖定
PulseAudio(以前叫Polypaudio)是一個跨平台的、可通過網絡工作的聲音服務,其一般使用於LinuxFreeBSD操作系統。它可以用來作為一種簡易改進的開放聲音後台(ESD)替換。
PulseAudio運行於Microsoft WindowsPOSIX兼容系統(如Linux和FreeBSD)。PulseAudio是自由軟件,基於GNU寬通用公共許可證 (LGPL)2.1協議。
中文名
PulseAudio
目    的
聲音服務
領    域
計算機
性    質
聲音服務器

目錄

PulseAudio描述

PulseAudio是一個聲音服務器,一個後台進程從一個或多個音源(進程或輸入設備)接受聲音輸入 然後重定向聲音到一個或多個槽(聲卡,遠程網絡PulseAudio服務,或其他進程)。
PulseAudio的一個目的通過它是重定向所有聲音流,包括那些試圖訪問硬件的進程(像那些遺留的基於OSS的軟件)。PulseAudio通過提供適配器給那些使用不同的聲音系統,像aRts和ESounD。
在Linux下的典型方案,用户提供配置ALSA來使用PulseAudio提供的虛擬設備。儘管應用使用ALSA會將輸出的聲音輸出到PulseAudio,然後PulseAudio會使用ALSA它自己來訪問真正的聲卡. PulseAudio同樣提供它自己的接口給應用程序,用來直接支持PulseAudio,就像那些遺留的基於ESD的軟件,這樣使得PulseAudio適合作為ESD的替代品。
對於OSS的軟件, PulseAudio提供padsp工具,用來代替硬件文件夾像/dev/dsp,欺騙應用程序,使程序以為它們有聲卡的完全控制權。在事實上,它們的輸出被PulseAudio重定向。 [1] 

PulseAudio特點

PulseAudio的主要特點包括:
  • 可對每一個應用程序進行音量控制Per-application volume controls
  • 可擴展的插件與支持可裝載模塊架構
  • 兼容性許多流行的音頻應用程序
  • 支持多重音源和多重輸出
  • 低延時操作和支持延遲測量
  • 一個對處理器資源效率零拷貝內存架構
  • 能夠發現本地網絡上使用PulseAudio的其他計算機並通過其揚聲器直接播放聲音
  • 能夠改變一個應用程序的聲音輸出設備,就算這個應用程序在播放聲音(程序不需要支持這特性,而事實上,程序甚至沒有意識到改變)
  • 帶有腳本功能的命令行界面
  • 一個功能完善且帶有命令行重新配置功能的守護進程
  • 內置採樣轉換和重採樣功能
  • 能夠合併多塊聲卡成一個聲卡
  • 能夠同步播放多個音頻流
  • 動態檢測藍牙音頻設備
  • 使全系統均衡的能力 [1] 

PulseAudio使用

PulseAudio被幾個主要Linux發行版使用,例如FedoraUbuntuMandrivaLinux MintopenSUSEOpenWRTGNOME項目中還有越來越多的對Pulseaudio的支持。
PulseAudio已經被多款基於Linux的移動電話設備當作聲音系統,包括Nokia N900Palm Pre.
當PulseAudio第一次公開發布時, PulseAudio開發者Lennart Poettering描述它為"the software that currently breaks your audio".Poettering later claimed that "Ubuntu didn't exactly do a stellar job. They didn't do their homework" in adopting PulseAudioforUbuntu"Hardy Heron" (8.04), a problem which was then improved with subsequent Ubuntu releases.However, on October 2009, Poettering reported that he was still not happy with Ubuntu's integration of PulseAudio.
某些程序,包括Linux上的舊版的Adobe Flash,在PulseAudio上造成不穩定.幸運的是較新的Flash插件的不引起衝突,因此Flash和PulseAudio的是兼容的。 [2] 

PulseAudio替代品

ALSA提供一個軟件調音台叫amixer,它是在PulseAudio前開發的。這是幾乎可以在所有的Linux發行版使用的一個簡單的PCM音頻混合的解決方案。但它不提供PulseAudio的高級功能(如高品質的重採樣,聚合裝置,定時的調度和網絡音頻)。
JACK是一個提供相比PulseAudio更專業的服務的體系,提供實時和低延時的表現。 和自從JACK2開始支持對稱多處理,使得所有的音頻客户端能有效平衡負載於多個處理器。音頻客户端可以彼此之間任意連接。在JACK的所有客户之間的圖新連接,可以被多種應用程序可視化和編輯,例如Qjackctl。這使得它非常直觀地概述了整體音頻控制流,可以在任何時候修改所有的音頻應用程序和硬件路由。JACK對專業音頻軟件來説是首選的專業音頻應用服務,例如Ardour、Rezound和LinuxSampler。
在OSS V4的聲音系統,如4Front,可提供軟件混音,重採樣和改變對每個應用程序的基礎量,與PulseAudio對比,這些功能是在內核中實現。PulseAudio的還可以與現有的音響系統互操作,包括那些設計成獨佔聲卡的程序(OSS V3)。 [2] 
參考資料
  • 1.    Interviews/LennartPoettering - FedoraProject. FedoraProject. [2009-07-03].
  • 2.    Open source identity: PulseAudio creator Lennart Poettering, TechWorld, 8 October 2009.