Muitos usuários do Linux preferem usar o Open Broadcaster para realizar transmissões ao vivo na Twitch. No entanto, nem todos se identificam com essa ferramenta e buscam alternativas. É possível acompanhar streams da Twitch sem a necessidade de um navegador, e também é viável usar um script simples em bash para transmitir.
Se você utiliza uma VPN em conjunto com a Twitch, será necessário ativá-la separadamente.
Instalação do FFmpeg
O processo de transmissão para a Twitch via linha de comando no Linux depende do utilitário de codificação FFmpeg. Antes de avançarmos, certifique-se de que o FFmpeg esteja instalado em seu computador Linux. Para isso, abra o terminal e digite os comandos correspondentes à sua distribuição. Caso sua distribuição não seja Ubuntu, Debian, Arch Linux, Fedora ou OpenSUSE, você pode baixar e instalar o FFmpeg diretamente do site oficial aqui.
Ubuntu
sudo apt install ffmpeg
Debian
sudo apt-get install ffmpeg
Arch Linux
sudo pacman -S ffmpeg
Fedora
sudo dnf install ffmpeg
OpenSUSE
sudo zypper install ffmpeg
Após a instalação, execute o FFmpeg no terminal para verificar seu funcionamento. O FFmpeg não precisa de um arquivo específico para iniciar. No terminal, digite:
ffmpeg --help
Se a página de ajuda for exibida corretamente, limpe o terminal com o comando `clear`.
Configuração do Bashrc
Com o FFmpeg instalado e funcionando, o próximo passo é configurar um alias para facilitar a transmissão na Twitch. Para criar este alias, você precisará editar o arquivo bashrc, que armazena variáveis e comandos específicos para cada usuário. As alterações no bashrc são aplicadas por usuário, então cada pessoa que desejar transmitir para a Twitch usando este método deve seguir os passos abaixo.
Comece fazendo um backup do arquivo bashrc para garantir que quaisquer edições ou erros possam ser revertidos. Crie uma cópia do arquivo:
mkdir ~/bashrc-backup cp ~/.bashrc ~/bashrc-backup/.bashrc-bak
Com o backup concluído, inicie a edição. Abra o bashrc no terminal. É fundamental NÃO usar o usuário ROOT, pois você pode acabar editando o bashrc do usuário root por engano, o que causaria problemas.
nano ~/.bashrc
Cole o seguinte código no final do arquivo bashrc. É importante revisar e ajustar este código de acordo com suas necessidades específicas, especialmente em relação à resolução, threads, qualidade, CBR e outros parâmetros.
Importante: não insira sua chave de stream diretamente no bashrc, pois isso representa um risco à segurança. O script foi projetado para solicitar a chave a cada transmissão, garantindo maior proteção.
streaming() { INRES="1920x1080" # resolução de entrada OUTRES="1920x1080" # resolução de saída FPS="15" # quadros por segundo (FPS) desejado GOP="30" # intervalo de i-frame, idealmente o dobro do FPS GOPMIN="15" # intervalo mínimo de i-frame, igual ao FPS THREADS="2" # máximo 6 CBR="1000k" # taxa de bits constante (entre 1000k e 3000k) QUALITY="ultrafast" # predefinição do FFMPEG AUDIO_RATE="44100" STREAM_KEY="$1" # use "streaming sua_chave_aqui" para transmitir SERVER="live-sjc" # servidor da Twitch (Califórnia), veja https://bashtech.net/twitch/ingest.php ffmpeg -f x11grab -s "$INRES" -r "$FPS" -i :0.0 -f alsa -i pulse -f flv -ac 2 -ar $AUDIO_RATE -vcodec libx264 -g $GOP -keyint_min $GOPMIN -b:v $CBR -minrate $CBR -maxrate $CBR -pix_fmt yuv420p -s $OUTRES -preset $QUALITY -tune film -acodec libmp3lame -threads $THREADS -strict normal -bufsize $CBR "rtmp://$SERVER.twitch.tv/app/$STREAM_KEY" }
Após inserir o código no bashrc, salve as alterações (Ctrl + O) e feche o editor Nano (Ctrl + X).
Iniciando a Transmissão
Para iniciar a transmissão na Twitch diretamente pela linha de comando, abra um terminal e utilize o novo comando “streaming” configurado no bashrc. É fundamental ter em mãos sua chave de transmissão da Twitch. Acesse o painel de controle da Twitch aqui e localize sua chave de transmissão.
Se a chave estiver correta, a transmissão via linha de comando deve ser iniciada com o seguinte comando:
streaming sua_chave_de_transmissao
Para interromper a transmissão, pressione a tecla “Q”. Como o stream utiliza o FFmpeg, ele deverá ser finalizado. Caso a tecla Q não funcione, você pode forçar o encerramento do script usando Ctrl + Z.
Criação de Script de Transmissão
Se você considera cansativo digitar a chave de stream repetidamente, você pode criar um script para facilitar o processo. No entanto, lembre-se que isso expõe sua chave de stream a qualquer pessoa que tenha acesso ao seu computador. Para criar o script, abra o terminal e digite os seguintes comandos:
Primeiramente, utilize o comando echo para adicionar o shebang. O shebang instrui o interpretador Bash sobre o tipo de script a ser executado.
Observação: Não mova o script da sua pasta pessoal! Ele depende do script “streaming” configurado no bashrc. Mover o script para outros locais do sistema de arquivos pode gerar problemas de permissão e impedir que o script funcione corretamente.
echo "#!/bin/bash" > ~/stream-script.sh
Em seguida, copie seu comando de streaming e use echo para inseri-lo no script.
echo "streaming sua_chave_de_transmissao" >> ~/stream-script.sh
Por último, atualize as permissões do script para que ele possa ser executado corretamente. Sem essa permissão, o script poderá falhar.
sudo chmod +x stream-script.sh
Execute o script com:
./stream-script.sh
ou
sh stream-script.sh
Para sair do script, pressione a tecla “Q” ou use Ctrl + Z.