Instalando
A maioria dos programas mencionados na página anterior são gratuitos e podem ser encontrados no repositório da maioria das distros, assim qualquer apt-get, Synaptic ou yum vai instalar as aplicações sem problemas, a única distro mais chatinha que eu testei foi o CentOS, que tem nos repositórios da versão 5, porém faltam na 6 e 7.
O único que até onde eu sei é só para Ubuntu/Debian e derivados é o Bitwig, que existe em pacote deb a versão completa e a demo, que tem quase tudo o que um pago tem, mas as duas funções que foram retiradas são "Salvar projeto" e "Exportar o áudio" (Tá zoando, né ??!!!).
Se você gostar e quiser as funções desbloqueadas, o preço é de £205.84 Libras ou 259,00 Euros (na cotação do dia que escrevi esse artigo R$ 867.13).
Para fazer o download da versão demo:
Se quiser comprar e só ativar direto na aplicação.
Execute o seguinte comando para instalar os programas que compõem o JACK Audio Kit e alguns extras no Ubuntu e derivados do Debian:
sudo apt-get install pavucontrol pulseaudio-module-x11 pulseaudio-utils paman pulseaudio-module-jack japa qjackctl jamin jackd2 patchage jackeq jack-rack
Depois de instalados esses pacotes você pode adicionar o programa desejado pelo Synaptic ou apt-get, simplesmente adicionando o nome da aplicação após o comando install, por exemplo para instalar todos os programas que eu mencionei, direto do repositório:
sudo apt-get install lmms ardour qtractor audacity sonata mixxx mixxx-data banshee sonic-visualizer
Configurando
Se você está usando o Ubuntu ou alguma distro onde o PulseAudio é o servidor de som padrão, já pode abrir o QjackCtl para fazer as configurações do JACK.
Se sua distro só trabalha com o ALSA, vamos modificar o PulseAudio primeiro:
sudo nano /etc/pulse/daemon.conf
Faça com que as seguintes linhas não estejam comentadas, para isso remova o ";" do início da linha:
allow-module-loading = yes
use-pid-file = yes
realtime-scheduling = yes
realtime-priority = 5
load-default-script-file = yes
default-script-file = /etc/pulse/default.pa
Com essas linhas ativadas escreva o seguinte no terminal:
killall -9 pulseaudio
ps axo pid,cmd | grep pulseaudio | grep -v grep
Agora ao executar o ps como descrito acima eu vou ter algo como:
9874 /usr/bin/pulseaudio --start --log-target=syslog
Pronto o Pulse já está pronto, agora é a vez de decidir como vamos lidar com o JACK. Você lembra que eu expliquei que os dois brigam para acessar o ALSA, então temos que fazer eles entrarem em um tratado de paz ou devemos tomar o lado de um dos dois nessa guerra e mandar o outro passear.
PulseAudio
Você deve tomar o lado do PulseAudio e deixar o JACK de lado se não está nem aí para gravações ou criação de música ou eventos ao vivo onde som é um elemento principal, ou seja, você é um usuário comum que só quer saber do seu Facebook, Twitter, YouTube, etc e o único motivo de você estar lendo essas linhas é porque você é curioso e quer aprender alguma coisa que pode te ser útil no futuro.
Para tomar o lado do PulseAudio, não faça nada que esse artigo propõe, não instale nenhum dos programas aqui descrito, use o Ubuntu, Fedora, SUSE, etc sem modificar nada.
Jack
Você deve tomar o lado do JACK se latência é crucial para o seu trabalho e você está pouco se lixando para o Flash, browser, Skype, etc. Sua missão é fazer o áudio sair limpo, sem cortes em alta qualidade e sem atraso.
Para alcançar isso toda vez que você usar o JACK tire o PulseAudio de cena. Crie um arquivo em
~/.pulse/client.conf e escreva nele "autospawn = no". A maneira mais fácil de fazer isso é copiando e colando o seguinte no terminal:
echo "autospawn = no" > ~/.pulse/client.conf
Crie um atalho para a inicialização do sistema chamando o comando "
pulseaudio -k".
Para fazer isso, se você usa o Ubuntu clique em Sistema - Preferências - Aplicativos de Sessão, ou simplesmente clique no logo do Ubuntu e no campo de pesquisa digite "Aplicativos de sessão". Ao abrir a janela clique no botão com o símbolo mais e digite no campo de comado "pulseaudio -k", coloque um nome, uma descrição e pronto.
Toda vez que você iniciar a sessão o PulseAudio será desativado deixando espaço para o JACK que deve ser iniciado como serviço do sistema ou usando o QjackCtl.
PulseAudio e JACK na mesma placa
Caso você queira os dois rodando ao mesmo tempo e você só tem uma placa eu vou explicar da forma mais simples e direta de como fazer isso, suponho que você já tem o pulseaudio-module-jack e o qjackctl instalados, caso contrário veja o comando no início desta página.
Depois de instalados abra a aplicação QjackCtl e clique na aba de opções e digite o seguinte em script depois de iniciar:
pacmd load-module module-jack-source channels=2; pacmd load-module module-jack-sink channels=2;pacmd set-default-sink jack_out;pacmd set-default-source jack_in
E em script depois de desligar, digite:
killall jackd
Pronto, com isso você já pode gravar o áudio de vídeos da internet, por exemplo: o áudio do site vem do PulseAudio e entra no JACK para depois ser tocado no ALSA...
Eu sei, parece difícil mas não é. Usando a aplicação Patchage você faz o link do PulseAudio com o Ardour e a saída do Ardour vai para o playback do JACK.
Por exemplo, o áudio deste vídeo do Blender Foundation está sendo gravado direto no Ardour.
Uma observação: tenha em mente o uso de material com copyright, se você for gravar algum áudio da internet esteja seguro de que você não esteja violando nenhuma lei.
Para entender como o Patchage faz as ligações, tudo que usar o JACK vai ter uma caixa com o nome da aplicação, tudo que usar o PulseAudio vai vir de Pulse-source ou Pulse-sink em cada "caixa" você tem a entrada de áudio do lado esquerdo e a saída do áudio do lado direito, a partir daí o céu é o limite, você pode fazer várias ligações...
Você pode selecionar o Jack Sink no controle de volume do Pulse para qualquer aplicação que não suporte JACK como nessa imagem onde o Banshee está tocando e você consegue ouvir a música e se quiser ao mesmo tempo você pode rotear a música para uma aplicação que faz gravação ou até efeitos em tempo real, sério... eu vou falar mais a respeito disso mais tarde.
Skype
Ô programa chato de configurar, porém tão usado que eu tenho que falar dele. Muito bem, qual é o problema neste cenário onde temos JACK e PulseAudio juntos e por alguma razão eu quero usar o
Skype?
O problema é que o Skype não tem suporte para o JACK (pelo menos até o fim deste artigo) e usa o PulseAudio como padrão, só que a saída de áudio ele tenta jogar direto no hardware e a entrada (microfone) não é ativada até o momento em que se faz uma ligação.
Com isso quando você tem o Skype rodando, entre em Opções/Dispositivo de Som e mantenha tudo como "Servidor PulseAudio" abra o controle de volume do PulseAudio e clique na aba de Reprodução (playback) veja que o Skype aparece e o dispositivo padrão está como qualquer outra coisa mas não Jack Sink, no meu caso "Builtin Audio Analogue Stereo", mude para Jack Sink.
E então, surpresa!!! O Skype desaparece do controle de volume do Pulse, bendita Microsoft!!!!
Voltando à janela de configuração do Skype clique em "Fazer um teste de chamada", enquanto a chamada de teste está rolando volte ao controle de volume do PulseAudio e ali está o Skype de novo só que desta vez ao selecionar o Jack Sink o áudio começa a sair nas suas caixas, porém antes de comemorar clique na aba de entrada de áudio e você vai ver que o Skype aparece perto do microfone, desta vez selecione "Jack Source" como dispositivo de entrada padrão. Agora fale qualquer coisa e a mulher do teste de chamada do Skype deve reproduzir sua gravação.
Parabéns, você configurou o Skype corretamente.
Desvantagens de usar os dois: em muitos fóruns, web sites e tutoriais algumas pessoas dizem que não é bom usar os dois juntos ou usamos o JACK ou o Pulse... eu discordo com isso, ao contrário, vejo muita vantagem e pouquíssimas desvantagens:
- O fato que volta e meia você tem que usar o Patchage para rotear o caminho do som... para mim isso não faz mal.
- Algumas aplicações são muito lentas e se a latência for baixa o áudio corta muito... vou explicar coisas mais radicais para quem quer tirar o máximo de proveito do seu sistema mais adiante.
- Algumas aplicações não registram o Jack Sink como padrão, assim você deve manualmente selecionar o PulseAudio e controlar o dispositivo onde o áudio deve sair (Jack Sink).
- Infelizmente por limitação do PulseAudio depois de feito a gravação, no momento de exportar o áudio para um arquivo, você deve desconectar o Pulse ou ele vai fazer o processo de exportação ficar tão lento que atá parece que o programa travou
Se existe alguma outra desvantagem eu não conheço...