PulseAudio (antigo PolypAudio[4]) é um projeto de servidor de som em rede multi-plataforma. Destina-se a ser um melhor substituto drop-in para o Enlightened Sound Daemon (ESD).

PulseAudio
Desenvolvedor Lennart Poettering
Pierre Ossman
Shahms E. King
Tanu Kaskinen
Colin Guthrie
Arun Raghavan
David Henningsson
Plataforma ARM, PowerPC, x86 / IA-32, x86-64 e MIPS
Lançamento 17 de julho de 2004 (20 anos)
Versão estável 17.0[1] (12 de janeiro de 2024; há 11 meses)
Escrito em C[2]
Sistema operacional FreeBSD, NetBSD, OpenBSD, Linux, Illumos, Solaris, macOS, e Microsoft Windows (sem suporte)
Gênero(s) Servidor de som
Licença GNU General Public License,
GNU Lesser General Public License[3]
Página oficial www.freedesktop.org/wiki/Software/PulseAudio/
Repositório gitlab.freedesktop.org/pulseaudio/pulseaudio

PulseAudio roda sobre Microsoft Windows e sistemas POSIX como o Linux, porém o port do Windows não é atualizado desde 2011.[5] Liberado sob os termos da GNU Lesser General Public License (para o software de biblioteca porção) e da GNU General Public License (para o som próprio servidor), PulseAudio é software livre.

Características

editar

As principais características do Pulseaudio incluem:[6]

  • Controle de volume por aplicativo[7]
  • Uma arquitetura de plugins expansível com suporte para módulos carregáveis
  • Compatibilidade com muitos aplicativos de áudio populares
  • Suporte para múltiplas fontes de áudio e sumidouros
  • Operação em baixa latência e suporte a medição de latência[8]
  • Uma arquitetura de memória cópia zero para eficiência de recursos do processador
  • Uma interface de linha de comando com capacidades de scripting
  • Um daemon de som com capacidades de reconfiguração por linha de comando
  • Capacidades integradas de conversão de amostra e de reamostragem
  • Capacidade de combinar várias placas de som em uma
  • Capacidade de sincronizar múltiplos fluxos de reprodução
  • Capacidade de descobrir outros computadores usando o PulseAudio na rede local e reproduzir som diretamente pelos alto-falantes deles
  • Capacidade de mudar o dispositivo de saída que os aplicativos devem usar para reproduzir som enquanto eles estão tocando som (as aplicações não precisam suportar isso, o PulseAudio é capaz de fazer isso sem que os aplicativos detectem que isso aconteceu)
  • Capacidade de sincronizar vários fluxos de reprodução
  • Suporte a dispositivos de áudio Bluetooth com capacidade de detecção dinâmica
  • Capacidade de habilitar a equalização de som em todo o sistema

Funcionamento

editar
 
Fluxograma operacional do PulseAudio
 
PulseAudio é um daemon que faz a mixagem em software.

PulseAudio age como um servidor de som, onde um processo em plano de fundo aceitando a entrada de som de uma ou mais fontes (processos, dispositivos de captura, etc.) é criado. O processo em plano de fundo redireciona as fontes de som mencionadas para um ou mais sumidouros (placas de som, servidores PulseAudio em rede ou outros processos).[6]

Um dos objetivos do PulseAudio é redirecionar todos os fluxos de som através dele, incluindo os de processos que tentam acessar diretamente o hardware (como aplicações legadas OSS). PulseAudio consegue isso ao providenciar adaptadores para aplicações que utilizam outros sistemas de áudio, como o aRts e ESD.

Em um cenário típico de instalação em Linux, o usuário configura o ALSA para usar um dispositivo virtual fornecido pelo PulseAudio. Assim, aplicações usando o ALSA irão emitir som para o PulseAudio, que então usa o próprio ALSA para acessar a placa de som real. PulseAudio também fornece sua própria interface nativa para aplicativos que desejam oferecer suporte ao PulseAudio diretamente, bem como uma interface legada para aplicativos ESD, tornando-a adequada para substituir o ESD.

Para aplicações OSS, PulseAudio fornece o utilitário padsp, que substitui arquivos de dispositivo como /dev/dsp, enganando os aplicativos ao fazê-los acreditar que eles têm controle exclusivo sobre a placa de som. Na realidade, a saída deles é redirecionada para a entrada do PulseAudio.

Ver também

editar

Referências

  1. Raghavan, Arun (12 de janeiro de 2024). «PulseAudio 17.0». Consultado em 16 de janeiro de 2024 
  2. «PulseAudio». Analysis Summary. Open Hub 
  3. «License». PulseAudio git. Free desktop. Consultado em 15 de julho de 2018 
  4. «The Project Formerly Known as Polypaudio» 
  5. «"PulseAudio on Windows"» 
  6. a b «About». PulseAudio. Free desktop. Consultado em 15 de julho de 2018 
  7. «Interviews/LennartPoettering». Fedora Project Wiki. Consultado em 23 de novembro de 2020 
  8. «Audio latency: A long overdue discussion of the latency issue(s)». Consultado em 23 de novembro de 2020. Arquivado do original em 17 de agosto de 2016 

Ligações externas

editar