PulseAudio - PulseAudio
Tento článek má několik problémů. Prosím pomozte vylepši to nebo diskutovat o těchto otázkách na internetu diskusní stránka. (Zjistěte, jak a kdy tyto zprávy ze šablony odebrat) (Zjistěte, jak a kdy odstranit tuto zprávu šablony)
|
Vývojáři | Lennart Poettering Pierre Ossman Shahms E. King Tanu Kaskinen Colin Guthrie Arun Raghavan David Henningsson |
---|---|
První vydání | 17. července 2004[1] |
Stabilní uvolnění | 14.0[2] / 23. listopadu 2020 |
Úložiště | gitlab |
Napsáno | C[3] |
Operační systém | FreeBSD, NetBSD, OpenBSD, Linux, Illumos, Solaris, Operační Systém Mac, a Microsoft Windows (neudržováno) |
Plošina | PAŽE, PowerPC, x86 / IA-32, x86-64, a MIPS |
Typ | Zvukový server |
Licence | GNU Lesser General Public License 2.1[4] |
webová stránka | pulseaudio.org |
PulseAudio je kompatibilní se sítí zvukový server program distribuovaný prostřednictvím freedesktop.org projekt. Běží hlavně dál Linux, rozličný BSD distribuce jako FreeBSD a OpenBSD, Operační Systém Mac, stejně jako Illumos distribuce a Solaris operační systém. Microsoft Windows byl dříve podporován prostřednictvím MinGW toolchain (implementace GNU toolchain, který zahrnuje různé nástroje jako např GCC a binutils ). Port systému Windows však nebyl aktualizován od roku 2011.[5]
PulseAudio je bezplatný open source software a je licencován na základě podmínek GNU Lesser General Public License verze 2.1.[4]
Byl vytvořen v roce 2004 pod názvem Polypaudio, ale v roce 2006 byl přejmenován na PulseAudio.[6]
Softwarová architektura
Obecně ALSA je subsystém jádra, který poskytuje zvukový ovladač, a PulseAudio je rozhraní mezi aplikacemi a ALSA.
PulseAudio funguje jako zvukový server, kde proces na pozadí přijímá zvukový vstup z jednoho nebo více Zdroje (procesy, snímací zařízení atd.). Proces na pozadí pak přesměruje tyto zdroje zvuku na jeden nebo více dřezy (zvukové karty, vzdálené síťové servery PulseAudio nebo jiné procesy).[7]
Jedním z cílů PulseAudio je přesměrovat všechny zvukové toky skrz něj, včetně těch z procesů, které se pokoušejí o přímý přístup k hardwaru (jako starší OSS aplikace). PulseAudio toho dosahuje tím, že poskytuje adaptéry pro aplikace využívající jiné zvukové systémy, jako je ARTS a ESD.
V typickém scénáři instalace v systému Linux uživatel nakonfiguruje ALSA tak, aby používalo virtuální zařízení poskytované PulseAudio. Aplikace využívající ALSA tedy budou vydávat zvuk do PulseAudio, který pak použije samotný ALSA pro přístup ke skutečné zvukové kartě. PulseAudio také poskytuje své vlastní nativní rozhraní pro aplikace, které chtějí přímo podporovat PulseAudio, stejně jako starší rozhraní pro aplikace ESD, takže je vhodný jako náhrada za ESD.
Pro aplikace OSS poskytuje PulseAudio padsp
nástroj, který nahrazuje soubory zařízení, jako je / dev / dsp
, což přimělo aplikace k domněnce, že mají výlučnou kontrolu nad zvukovou kartou. Ve skutečnosti je jejich výstup přesměrován přes PulseAudio.
libcanberra
libcanberra je abstraktní API pro zvuky událostí na ploše a úplná náhrada za „PulseAudio sample cache cache“:
- Vyhovuje Zvukové téma XDG a specifikace pojmenování.
- Definuje jednoduché abstraktní rozhraní pro přehrávání zvuků událostí.[8]
- Rozhraní s ALSA přes libasound.[9]
- Má back-end k PulseAudio.[10]
libSydney
libSydney je úplnou náhradou za „PulseAudio streaming API“ a byly vytvořeny plány, aby se libSydney nakonec stalo jediným zvukovým API používaným v PulseAudio.[11]
Funkce
Mezi hlavní funkce PulseAudio patří:[7]
- Ovládání hlasitosti podle aplikace.[12]
- Rozšiřitelná architektura pluginu s podporou pro načtitelné moduly.
- Kompatibilita s mnoha populárními zvukovými aplikacemi.[13]
- Podpora více zdrojů zvuku a umyvadel.
- A nulová kopie architektura paměti pro efektivitu zdrojů procesoru.
- Schopnost objevovat další počítače pomocí PulseAudio v místní síti a přehrávat zvuk přímo z jejich reproduktorů.
- Schopnost změnit, které aplikace výstupního zařízení používají k přehrávání zvuku během přehrávání zvuku (Aplikace to nemusí podporovat, PulseAudio to dokáže, aniž by aplikace detekovaly, že se to stalo)
- Rozhraní příkazového řádku se skriptovacími schopnostmi.
- Zvukový démon s možnostmi rekonfigurace příkazového řádku.
- Integrovaná funkce převodu vzorků a převzorkování.
- Schopnost kombinovat více zvukové karty do jednoho.
- Schopnost synchronizovat více streamů přehrávání.
- Podpora Bluetooth audio zařízení s možnostmi dynamické detekce.
- Možnost povolení celého systému vyrovnání.
Přijetí
PulseAudio se poprvé objevil pro běžné uživatele v Fedora Linux, počínaje verzí 8,[14] poté byla přijata hlavními linuxovými distribucemi, jako je Ubuntu, Debian,[15] Mageia, Mandriva Linux, Linux Mint, openSUSE, a OpenWrt.[16] Ve službě je podpora pro PulseAudio GNOME projektu, a také v KDE, protože je integrován do Plazmové pracovní prostory, přidání podpory do Phonon (multimediální rámec KDE) a KMix (integrovaná aplikace směšovače) a také grafické uživatelské rozhraní „Speaker Setup“, které usnadňuje konfiguraci vícekanálových reproduktorů. PulseAudio je také k dispozici v Illumos rozdělení OpenIndiana a ve výchozím nastavení povoleno MATE životní prostředí.
Rozličný Linux - mobilní zařízení na bázi, včetně Nokia N900, Nokia N9 a Palm Pre[17] použijte PulseAudio.
Tizen, mobilní operační systém s otevřeným zdrojovým kódem, který je projektem Linux Foundation a je řízen technickou řídící skupinou (TSG) složenou z Intel a Samsung, používá PulseAudio.
Problémy během fáze adopce
- The PortAudio API bylo nekompatibilní s designem PulseAudio a bylo potřeba jej upravit.[18] Téměř všechny balíčky používající OSS a mnoho balíčků používajících ALSA musely být upraveny tak, aby podporovaly PulseAudio.[19] Další vývoj bezchybné zvukové funkce vyžadoval úplné přepsání jádra PulseAudio a byly také nutné změny v ALSA API a interních funkcích.[20][21]
- Při prvním přijetí distribucemi, vývojář PulseAudio Lennart Poettering (také tvůrce systemd ) to popsal jako „software, který aktuálně rozbíjí váš zvuk“.[22] Poettering později tvrdil, že „Ubuntu přesně neudělal hvězdnou práci. Při přijímání PulseAudio nedělali domácí úkoly[23] pro Ubuntu „Hardy Heron“ (8.04), problém, který byl vylepšen následujícími verzemi Ubuntu.[24] V říjnu 2009 však Poettering uvedl, že stále není spokojen s integrací PulseAudio do Ubuntu.[25]
- Interakce se starými zvukovými komponentami konkrétního softwaru: Některé programy, jako např Adobe Flash pro Linux, způsobila nestabilitu v PulseAudio.[26][27] Novější implementace doplňků Flash nevyžadují konfliktní prvky a ve výsledku jsou nyní Flash a PulseAudio kompatibilní.
- Včasná správa překročení / podtečení vyrovnávací paměti: Starší verze PulseAudio někdy začaly zkreslovat zpracovaný zvuk kvůli nesprávnému zpracování překročení / podtečení vyrovnávací paměti.[28]
Související software
Jiné zvukové servery
ZVEDÁK je zvukový server, který poskytuje v reálném čase, nízká latence (tj. 5 milisekund nebo méně) zvukový výkon a od JACK2 podporuje efektivní vyrovnávání zátěže využitím symetrické více procesů; to znamená, že zátěž všech zvukových klientů lze rozdělit mezi několik procesorů. JACK je preferovaný zvukový server pro profesionální zvukové aplikace, jako je Zanícení, ReZound, a LinuxSampler; několik bezplatných distribucí produkce zvuku jej používá jako výchozí zvukový server.
Je možné, aby JACK a PulseAudio koexistovaly: zatímco JACK běží, PulseAudio se může automaticky připojit jako klient JACK, což umožňuje klientům PulseAudio vytvářet a zaznamenávat zvuk současně s klienty JACK.[29]
PipeWire je audio a video server, který „si klade za cíl podporovat případy použití, které aktuálně zpracovává PulseAudio i Jack“.[30][31]
Obecné zvukové infrastruktury
Před ZVEDÁK a PulseAudio, zvuk na těchto systémech byl řízen víceúčelovým integrovaným zvukovým řešením. Tato řešení plně nepokrývají proces míchání a streamování zvuku, ale stále je používají JACK a PulseAudio k odesílání konečného zvukového proudu na zvukovou kartu.
- ALSA poskytuje softwarový mixér s názvem dmix, který byl vyvinut před PulseAudio. To je k dispozici téměř u všech distribucí Linuxu a jedná se o jednodušší řešení míchání zvuku PCM. Neposkytuje pokročilé funkce PulseAudio (jako je plánování podle časovače a síťový zvuk). Na druhou stranu ALSA nabízí v kombinaci s odpovídajícími zvukovými kartami a softwarem nízké latence.
- OSS byl původní zvukový systém používaný v Linuxu a dalších operačních systémech Unix, ale po jádře Linuxu 2.5 byl zastaralý.[32] Proprietární vývoj pokračoval 4Přední technologie, který v červenci 2007 vydal zdroje pro OSS pod CDDL pro OpenSolaris a pod GPL pro Linux.[33] Moderní implementace Open Sound System v4 poskytuje softwarové mixování, převzorkování a změnu hlasitosti na základě jednotlivých aplikací; na rozdíl od PulseAudio jsou tyto funkce implementovány v jádře. Podpora PulseAudio v OpenIndiana a další ilumos distribuce závisí na implementaci OSS v jádře ("Boomer ").
Viz také
Reference
- ^ „OldNews“. freedesktop.org.
- ^ Kaskinen, Tanu (24. listopadu 2020). „PulseAudio 14.0“. pulseaudio-discuss (Poštovní seznam). Citováno 23. listopadu 2020.
- ^ „PulseAudio“, Shrnutí analýzy, Otevřete rozbočovač
- ^ A b "Licence", PulseAudio git, Desktop zdarma, archivovány z originál dne 4. března 2014, vyvoláno 16. června 2011
- ^ PulseAudio ve Windows
- ^ Projekt dříve známý jako Polypaudio
- ^ A b "O", PulseAudio, Plocha zdarma, vyvoláno 11. března 2013
- ^ [email protected], Debian Webmaster. "Debian - Výsledky hledání balíčku - libcanberra". packages.debian.org.
- ^ [email protected], Debian Webmaster. "Debian - Výsledky hledání balíčku - libasound". packages.debian.org.
- ^ [email protected], Debian Webmaster. "Debian - Výsledky hledání balíčku - libcanberra-pulse". packages.debian.org.
- ^ Poettering, Lennart (8. února 2007). „FOMS / LCA rekapitulace“. 0pointer.de. Citováno 13. března 2017.
- ^ Poettering, Lennart, "Rozhovory", Projekt Fedora, Červená čepice, vyvoláno 3. července 2009
- ^ Pulse Audio wiki, PulseAudio, archivovány z originál dne 18. října 2009, vyvoláno 19. července 2009
- ^ „LPC: Linux audio: it's a mess [LWN.net]“. 18. září 2008. Citováno 11. července 2019.
- ^ PulseAudio, Debian, archivovány z originál (wiki) dne 9. listopadu 2013, vyvoláno 9. listopadu 2013
- ^ PulseAudio (wiki), OpenWRT, vyvoláno 8. ledna 2012
- ^ „Identita otevřeného zdroje: tvůrce PulseAudio, Lennart Poettering“, TechWorld, 8. října 2009
- ^ Poettering, Lennart (25. září 2004). "Psaní ovladače PortAudio". audio.portaudio.devel. git.net. Citováno 28. února 2017.
- ^ Poettering, Lennart. „PulseAudio je nyní ve výchozím nastavení povoleno u nových instalací Fedory“. Fedora Development ML. červená čepice. Citováno 1. března 2017.
- ^ „Vlastnosti: Bezchybný zvuk“. Fedora Project Wiki. Citováno 28. února 2017.
- ^ Poettering, Lennart. „Problémy s Alsou“. PulseAudio - Trac. Archivovány od originál dne 16. října 2008. Citováno 28. února 2017.
- ^ LPC: Linux audio: je to nepořádek, LWN, 18. září 2008, archivováno z původního dne 18. října 2009, vyvoláno 3. července 2009
- ^ Lennart Poettering (18. července 2008), PulseAudio FUD, 0pointer.de, archivováno z původního dne 18. října 2009, vyvoláno 30. prosince 2009
- ^ Jak na to: Opravy PulseAudio a podpora ekvalizéru v celém systému, Fóra Ubuntu, 10. května 2008, archivováno z původního dne 18. října 2009, vyvoláno 18. října 2009
- ^ Zlomím ti zvuk, Lennart Poettering Blog, 19. října 2009, vyvoláno 26. prosince 2009
- ^ Žádný zvuk po spuštění Flash, YouTube atd. (Pulseaudio řešení) Fóra Ubuntu, archivováno z původního dne 18. října 2009, vyvoláno 18. října 2009
- ^ PulseAudio, Ubuntu Wiki, archivováno z původního dne 18. října 2009, vyvoláno 18. října 2009
- ^ "Nadměrně optimistické ukládání do vyrovnávací paměti v PulseAudio způsobuje podtečení (slyšitelné koktání, praskání)". panel. Citováno 9. listopadu 2013.
- ^ Viz „Načtitelné moduly“. Moduly, Freedesktop.org, https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/Modules/#index9h2, vyvoláno 28. srpna 2019
- ^ „PipeWire“. pipewire.org.
- ^ „Na cestě k pracovní stanici Fedora 31 - Christian F.K. Schaller“.
- ^ Úvod do zvukových systémů Linux a API, Linux.com, 9. srpna 2004, archivovány z originál dne 19. října 2014, vyvoláno 23. března 2013,
OSS je k dispozici nejen pro Linux, ale také pro BSD OS a další unixové systémy. To může být jeho jediná výhoda, protože tento systém není příliš výkonný a byl oficiálně nahrazen ALSA v jádrech 2.5 ...
- ^ Technologie 4Front vydává zdrojový kód pro otevřený zvukový systém, Linux PR, 14. června 2007, vyvoláno 8. ledna 2012.