# PulseAudio (Português)

From ArchWiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Este artigo ou esta seção precisa de tradução.

Notas: Desatualizado, faltando informações do artigo original. (Discuta em Talk:PulseAudio (Português)#)

PulseAudio (antigo Polypaudio) é um servidor de som em rede multi-plataforma , comumente usado em sistemas baseados no Linux e FreeBSD. Ele pode ser usado como um substituo melhorado do Enlightened Sound Daemon (ESD).

PulseAudio roda em sistemas Microsoft Windows e POSIX-compliant, como o Linux e FreeBSD. PulseAudio é um software livre lançado sobre os termos da GNU Lesser General Public License.

Fonte: Wikipédia

## Instalação

Para instalar o PulseAudio:

    # pacman -S pulseaudio

Opcionalmente você pode instalar alguns frontends escritos em GTK:

    # pacman -S paprefs pavucontrol

## Executando

O PulseAudio pode ser iniciado usando:

    $ pulseaudio --start

Ou se você usa o X11:

    $ start-pulseaudio-x11

Isso vai iniciar o PulseAudio com os plugins para o X11.

No KDE você pode usar o comando:

    $ start-pulseaudio-kde

Isso permite que você veja cada um dos dispositivos de áudio no Configurações do sistema->Multimídia->Phonon.

Você pode parar o PulseAudio usando:

    $ pulseaudio --kill

Note que em alguns Desktops Environments como o KDE e o GNOME, o PulseAudio será iniciado durante o login.

## Configuração dos Backends

### ALSA

Para aplicativos que não suportam o PulseAudio mas suportam o ALSA é recomendado instalar o plugin do PulseAudio para o ALSA. O jeito mais simples de fazê-lo é instalando o pacote pulseaudio-alsa.

    # pacman -S pulseaudio-alsa

Esse pacote inclui o `/etc/asound.conf` necessário para configurar o ALSA para usar o PulseAudio.

Se você usa o Arch x86_64 e quer ter som em programas 32-bits (como o Wine), lembre-se de instalar o lib32-libpulse e o lib32-alsa-plugins também.

Para evitar que aplicativos usem a emulação do OSS via ALSA e assim transpassando o PulseAudio (prevenindo outros aplicativos de tocar som), remova o módulo `snd_pcm_oss` executando:

    # rmmod snd_pcm_oss

Depois, coloque o módulo na lista negra (blacklist) adicionando `!snd_pcm_oss` na parte MODULES do arquivo `/etc/rc.conf`.

### OSS

Existem várias maneiras de fazer programas que só funcionam com OSS rodarem no PulseAudio:

#### osspd

Esse é o jeito mais simples.

Instale o ossp e inicie-o digitando:

    # /etc/rc.d/osspd start

Depois, adicione-o na linha DAEMONS do arquivo `/etc/rc.conf`.

#### padsp wrapper

Se você tem um programa que usa o OSS você pode fazê-lo funcionar com o PulseAudio iniciando-o com o padsp:

    $ padsp OSSprogram

Alguns exemplos:

    $ padsp aumix
    $ padsp sox foo.wav -t ossdsp /dev/dsp

Se você preferir você pode renomear seu programa OSS e substituí-lo com um script como esse:

    /usr/bin/OSSProgram

    #!/bin/sh
    if test -x /usr/bin/padsp; then
        exec /usr/bin/padsp /usr/bin/OSSprogram-bin "$@"
    else
        exec /usr/bin/OSSprogram "$@"
    fi

### GStreamer

Para fazer o GStreamer usar o PulseAudio, execute `gstreamer-properties` (parte do pacote gnome-media) e selecione Servidor de som PulseAudio tanto na Saída como Entrada padrão. Alternativamente, isso pode ser feito setando as variáveis `/system/gstreamer/0.10/default/audiosink` para pulsesink e `/system/gstreamer/0.10/default/audiosrc` para pulsesrc no gconf2:

     $ gconftool-2 -t string --set /system/gstreamer/0.10/default/audiosink pulsesink
     $ gconftool-2 -t string --set /system/gstreamer/0.10/default/audiosrc pulsesrc

Algumas aplicações (como o Rhythmbox) ignoram a propriedade audiosink, usando a propriedade musicaudiosink, que não pode ser configurada usando o `gstreamer-properties` e precisa ser setada manualmente usando o `gconf-editor` ou `gconftool-2`:

     $ gconftool-2 -t string --set /system/gstreamer/0.10/default/musicaudiosink pulsesink

### OpenAL

OpenAL deve usar o PulseAudio por padrão, mas você pode configurar explicitamente para usá-lo em:

    /etc/openal/alsoft.conf

    drivers=pulse,alsa

### libao

Edite a seguinte linha no arquivo de configuração do libao:

    /etc/libao.conf

    default_driver=pulse

### PortAudio

A versão atual do PortAudio no repositório community não suporta o PulseAudio. Isso pode ser arrumado compilando o PortAudio do ABS e aplicando esse patch ao código.

### ESD

PulseAudio substitui o enlightened sound daemon (ESD). Enquanto o PulseAudio estiver rodando, clientes ESD devem ser capazes de usá-lo sem configurações adicionais.

## Desktop Environments

### X11 bell

Para fazer o PulseAudio tocar um som quando um evento do X11 acontecer (ex.: fazer seu terminal fazer 'Ping!' ao invés de 'Beep!'), adicione o seguinte no arquivo `/etc/pulse/default.pa`:

    load-sample-lazy x11-bell /usr/share/sounds/freedesktop/stereo/dialog-error.ogg
    load-module module-x11-bell sample=x11-bell

Você também pode usar outro som. `dialog-error.ogg` faz parte do pacote sound-theme-freedesktop.

### GNOME

Para obter integração completa do GNOME com o PulseAudio você deve instalar os seguintes pacotes:

- gnome-media-pulse
- gnome-settings-daemon-pulse
- libcanberra-pulse

Eles fazem parte do grupo pulseaudio-gnome.

### KDE 3

PulseAudio não é um substituto para o aRts. Se você usa o KDE 3 não é possível usar o PulseAudio por enquanto.

### KDE 4 e Qt4

Se tudo ocorreu bem não é necessário fazer nenhuma configuração adicional no KDE 4.

## Aplicativos

### Audacious

Audacious tem suporte nativo ao PulseAudio. Para usá-lo você deve setar nas preferências do Audacious (Ctrl + P) -> Áudio -> Plugin de saída atual para 'PulseAudio Output Plugin'.

### mpd

Você vai precisar configurar o mpd para usar o PulseAudio.

Se você roda o daemon no modo system-wide, você vai precisar adicionar o usuário mpd no grupo pulse-access para conseguir fazer o mpd se conectar ao daemon.

Num desktop, executar o mpd com o seu usuário e não com o mpd é preferível.

### MPlayer

O MPlayer tem suporte nativo ao PulseAudio usando a opção "-ao=pulse". Também é possível configurar o PulseAudio para ser a saída de áudio padrão, em `~/.mplayer/config` para cada usuário, ou `/etc/mplayer/mplayer.conf` para o sistema inteiro:

    /etc/mplayer/mplayer.conf

    ao=pulse

## Configurações alternativas

### Sistemas surround

Várias pessoas tem uma placa de som surround, mas só usam dois canais, então o PulseAudio não pode usar como padrão uma configuração surround. Para habilitar todos os canais, edite o arquivo `/etc/pulse/daemon.conf`: descomente a linha 'default-sample-channels' (remova o ponto-e-vírgula do início da linha) e sete o valor para 6 se você tiver um sistema 5.1 ou 8 se você tiver um sistema 7.1 e assim por diante.

    # Padrão
    default-sample-channels=2
    # Para 5.1
    default-sample-channels=6
    # Para 7.1
    default-sample-channels=8

Depois de fazer a mudança, você deve reiniciar o PulseAudio.

#### Gravar de fonte monitora

Para conseguir gravar a partir de uma fonte monitora (a.k.a. "O-que-você-ouve", "Stereo Mix"), use `pactl list` para achar o nome da fonte no PulseAudio (ex. `alsa_output.pci-0000_00_1b.0.analog-stereo.monitor`). Então adicione algo como o seguinte no `/etc/asound.conf` or `~/.asoundrc`:

    pcm.pulse_monitor {
      type pulse
      device alsa_output.pci-0000_00_1b.0.analog-stereo.monitor
    }

    ctl.pulse_monitor {
      type pulse
      device alsa_output.pci-0000_00_1b.0.analog-stereo.monitor
    }

Agora você pode selecionar o `pulse_monitor` como uma fonte de gravação.

### PulseAudio via rede

Um dos recursos mais interessantes do PulseAudio é a possibilidade de fazer streams de áudio dos clientes via TCP até o servidor rodando o daemon do PulseAudio, permitindo que sons sejam transmitidos via LAN.

Para conseguir isso, é necessário ativar o module-native-protocol-tcp, e copiar o pulse-cookie nos clientes.

### Suporte TCP (som via rede)

This article or section is out of date.

Reason: please use the first argument of the template to provide a brief explanation. (Discuss in Talk:PulseAudio (Português)#)

Para ativar o módulo TCP, adicione isso (ou descomente, se já estiver aí) `/etc/pulse/default.pa`:

    load-module module-native-protocol-tcp

Para permitir conexões remotas ao módulo TCP, você também tem que desbloquear o serviço em `/etc/hosts.allow` com a seguinte linha:

    pulseaudio-native: ALL

#### Publicação Zeroconf (Avahi)

Para o servidor remoto do PulseAudio aparecer no PulseAudio Device Chooser (`padevchooser`), você também vai precisar adicionar o `avahi-daemon` na linha DAEMONS do seu rc.conf tanto no servidor quanto nos clientes.

### Trocando o servidor PulseAudio usado por clientes X locais

Para trocar entre servidores no cliente a partir do X, o comando `pax11publish` pode ser usado. Por exemplo, para trocar do servidor padrão para um servidor no hostname foo:

    $ pax11publish -e -S foo

Ou para voltar ao servidor padrão:

    $ pax11publish -e -r

Note que para a troca se efetive, os programas que usam o PulseAudio devem ser reiniciados.

### Pulseaudio via OSS

Adicione a seguinte linha no `/etc/pulse/default.pa`:

     load-module module-oss

Então inicie o PulseAudio como usual.

## Soluções de problemas

### Sem som depois da instalação

#### Sem placa de som

Se o PulseAudio inicie, rode `pacmd list`. Se nenhuma placa de som for reportada, confira se seus dispositivos ALSA não estão em uso:

    $ fuser -v /dev/snd/*
    $ fuser -v /dev/dsp

Tenha certeza que qualquer aplicativo usando pcm ou dsp está desligado antes de reiniciar o PulseAudio.

#### Dispositivo de som mudo

Se você não teve nenhum áudio enquanto usava o ALSA como seu dispositivo padrão, talvez você tenha que remover o mudo da sua placa de som. Para isso, você vai iniciar o alsamixer e checar se cada coluna tem uma verde com 00 abaixo dele (isso pode ser feito pressionando 'm')

    $ alsamixer -c 0

Algumas vezes o módulo snd_pcsp conflita com o snd_hda_intel (para aqueles que usam placas da Intel) e nenhum som é conseguido. Para arrumar isso, você pode colocar na lista negra (blacklist) o módulo snd_pcsp na linha MODULES do arquivo `/etc/rc.conf` (inserindo `!snd_pcsp`)

### Falha ao iniciar o daemon

Tente recomeçar o PulseAudio. Para isso:

    $ pulseaudio --kill
    $ killall pulseaudio
    $ killall -9 pulseaudio
    $ rm -rf ~/.pulse*
    $ rm -rf /tmp/pulse*

Depois disso, inicie o PulseAudio de novo.

### padevchooser

Se você não consegue iniciar o PulseAudio Device Chooser, primeiro (re)inicie o daemon do Avahi:

    $ /etc/rc.d/avahi-daemon restart

### Problemas e uso intenso da CPU a partir da versão 0.9.14

O servidor de áudio PulseAudio foi reescrito para usar timer-based scheduling ao invés do tradicional interrupt-driven scheduling. Timer-based scheduling pode apresentar problemas em alguns drivers do ALSA. Para desligar o timer-based scheduling, substitua a linha:

    load-module module-udev-detect

no arquivo `/etc/pulse/default.pa` por:

    load-module module-udev-detect tsched=0

### Som intermitente

Som intermitente no PulseAudio pode ser resultado de configurações erradas no sample rate do arquivo `/etc/pulse/ddaemon.conf`. Tente substituir a linha

    ; default-sample-rate = 44100

para

    default-sample-rate = 48000

e reinicie o PulseAudio usando

    pulseaudio --kill && pulseaudio --start

### Ajuste de volume não funciona corretamente

Você talvez queira checar:

    /usr/share/pulseaudio/alsa-mixer/paths/analog-output.conf.common

### Realtime scheduling

Se o rtkit não funcionar, você pode setar manualmente seu sistema para rodar o PulseAudio com realtime scheduling, o que ajuda na performance. Para fazer isso, adicione as seguintes linhas no arquivo `/etc/security/limits.conf`:

    @pulse-rt - rtprio 9
    @pulse-rt - nice -11

Depois disso, você precisa adicionar seu usuário no grupo `pulse-rt`:

    # gpasswd -a <user> pulse-rt

## Veja também

- Allow multiple programs to play sound at once

## Links externos

- http://www.pulseaudio.org/wiki/PerfectSetup - Um bom guia para configurar o PulseAudio de forma perfeita (em inglês)
- http://www.alsa-project.org/main/index.php/Asoundrc - Alsa wiki sobre .asoundrc (em inglês)
- http://www.pulseaudio.org/ - Site oficial do PulseAudio (em inglês)
- http://www.pulseaudio.org/wiki/FAQ - PulseAudio FAQ (em inglês)

Category:

- Sound (Português)

Hidden categories:

- Pages or sections flagged with Template:Translateme (Português)
- Pages or sections flagged with Template:Out of date