PulseAudio

PulseAudio, freedesktop. org projesi aracılığıyla yayımlanan ağ özellikli bir ses sunucusu programıdır. Esas olarak Linux, FreeBSD ve OpenBSD gibi çeşitli BSD dağıtımları, macOS ve ayrıca Illumos dağıtımları ve Solaris işletim sistemi üzerinde çalışır. Uygulamalar ve donanım arasında bir ara yazılım görevi görür ve ham PCM ses akışlarını yönetir.
PulseAudio ücretsiz ve açık kaynaklı bir yazılımdır ve LGPL-2.1-veya-üstü koşulları kapsamında lisanslanmıştır.
2004 yılında Polypaudio adı altında oluşturuldu, ancak 2006 yılında PulseAudio olarak yeniden adlandırıldı.
PulseAudio'nun yerini o zamandan beri uyumlu bir PulseAudio sunucusu (pipewire-pulse olarak bilinir) sağlayan PipeWire almıştır ve PipeWire artık Fedora Linux, Ubuntu ve Debian dahil birçok Linux dağıtımında varsayılan olarak kullanılmaktadır.
Geçmiş
Microsoft Windows daha önce MinGW (GCC ve binutils gibi çeşitli araçları içeren GNU araç zincirinin bir uygulaması) aracılığıyla destekleniyordu. Ancak Windows sürümü 2011'den beri güncellenmedi.
Yazılım mimarisi
Geniş anlamda ALSA, sağlam donanım sürücüsü sağlayan bir çekirdek alt sistemidir ve PulseAudio, uygulamalar ile ALSA arasındaki arayüz motorudur. Ancak kullanımı zorunlu değildir ve ses, PulseAudio olmadan çalınabilir ve karıştırılabilir.
PulseAudio, bir veya daha fazla kaynaktan (işlemler, yakalama cihazları, vb.) ses girişini kabul eden bir arka plan işleminin oluşturulduğu bir ses sunucusu görevi görür. Arka plan işlemi daha sonra bu ses kaynaklarını bir veya daha fazla havuza (ses kartları, uzak ağ PulseAudio sunucuları veya diğer işlemler) yönlendirir.
PulseAudio'nun hedeflerinden biri, donanıma (eski OSS uygulamaları gibi) doğrudan erişmeye çalışan işlemlerden gelenler de dahil olmak üzere tüm ses akışlarını yeniden yönlendirmektir. PulseAudio bunu, aRts ve ESD gibi diğer ses sistemlerini kullanan uygulamalara adaptörler sağlayarak başarır.
Linux altındaki tipik bir kurulum senaryosunda, kullanıcı ALSA'yı PulseAudio tarafından sağlanan bir sanal cihazı kullanacak şekilde yapılandırır. Böylece, ALSA kullanan uygulamalar, gerçek ses kartına erişmek için ALSA'nın kendisini kullanan PulseAudio'ya ses çıkışı verecektir. PulseAudio, PulseAudio'yu doğrudan desteklemek isteyen uygulamalara kendi yerel arabiriminin yanı sıra ESD uygulamaları için eski bir arabirim sağlar ve bu da onu ESD'nin doğrudan değiştirilmesi için uygun hale getirir. ğüğüğüğğğğğğğğğğğğğğğğğğüüğü
OSS uygulamaları için PulseAudio, /dev/dsp gibi aygıt dosyalarını değiştiren ve uygulamaları ses kartı üzerinde özel denetime sahip olduklarına inandırarak kandıran padsp yardımcı programını sağlar. Gerçekte, çıktıları PulseAudio aracılığıyla yeniden yönlendirilir.
libcanberra
libcanberra, masaüstü olay sesleri için soyut bir API'dir ve "PulseAudio örnek önbellek API'sinin" tamamen yerine geçer:
XDG Ses Teması ve Adlandırma Spesifikasyonları ile uyumludur.
Olay seslerini çalmak için basit bir soyut arayüz tanımlar.
ALSA ile libasound aracılığıyla arayüzler.
PulseAudio için bir arka uca sahiptir.
libSydney
libSydney, "PulseAudio akış API'sinin" tamamen yerini almıştır ve libSydney'in sonunda PulseAudio'da kullanılan tek ses API'si olması için planlar yapılmıştır.
Özellikler
Ana PulseAudio özellikleri şunlardır:
Uygulama başına ses kontrolleri
Yüklenebilir modülleri destekleyen genişletilebilir bir eklenti mimarisi
Birçok popüler ses uygulamasıyla uyumluluk
Birden çok ses kaynağı ve havuzu için destek
İşlemci kaynak verimliliği için sıfır kopyalı bellek mimarisi
Yerel ağda PulseAudio kullanarak diğer bilgisayarları keşfetme ve doğrudan hoparlörlerinden ses çalma yeteneği
Uygulamaların ses çalarken ses çalmak için hangi çıkış aygıtı kullandığını değiştirebilme özelliği (Uygulamaların bunu desteklemesi gerekmez, PulseAudio bunu uygulamalar olduğunu algılamadan yapabilir)
Komut dosyası oluşturma özelliklerine sahip bir komut satırı arabirimi
Komut satırı yeniden yapılandırma yeteneklerine sahip bir ses arka plan programı
Yerleşik örnek dönüştürme ve yeniden örnekleme özellikleri
Birden fazla ses kartını bir araya getirme yeteneği
Birden fazla oynatma akışını senkronize etme yeteneği
Dinamik algılama özelliklerine sahip Bluetooth ses cihazı desteği
Sistem genelinde eşitlemeyi etkinleştirme yeteneği
Uyarlama
PulseAudio, ilk olarak Fedora Linux'ta düzenli kullanıcılar için 8, sürümünden başlayarak ortaya çıktı, ardından Ubuntu, Debian, Mandriva Linux ve openSUSE gibi büyük Linux dağıtımları tarafından benimsendi. GNOME projesinde ve ayrıca KDE'de PulseAudio için destek vardır, çünkü Plasma Workspaces'a entegre edilmiştir, Phonon (KDE multimedya çerçevesi) ve KMix'e (entegre mikser uygulaması) ve bir "Hoparlör Kurulumu" GUI'sine destek eklenmiştir. çok kanallı hoparlörlerin konfigürasyonuna yardımcı olmak için. PulseAudio, OpenIndiana Illumos dağıtımında da mevcuttur ve MATE masaüstü ortamında varsayılan olarak etkindir.
Nokia N900, Nokia N9 ve Palm Pre gibi çeşitli Linux tabanlı mobil cihazlar PulseAudio kullanır.
Linux Vakfı'nın bir projesi olan ve Intel ve Samsung'tan oluşan bir Teknik Yönlendirme Grubu (TSG) tarafından yönetilen açık kaynaklı bir mobil işletim sistemi olan Tizen, PulseAudio kullanmaktadır.