Twitch é uma plataforma que oferece um serviço de streaming de vídeo ao vivo propriedade da Amazon, esta plataforma tornou-se um dos mais populares para compartilhar streaming de vídeo de videogame, incluindo streaming de eSports e outros eventos relacionados a videogame. O conteúdo do site pode ser visualizado ao vivo ou sob demanda.
Para poder transmitir vídeo no linux nós temos algumas ferramentas, mas esquecemos o mais simples e é do terminalNesta postagem, compartilharei com vocês um método para poder transmitir para o Twitch a partir de nosso terminal.
Requisitos anteriores
Ser capaz de transmitir no Twitch vamos nos apoiar no FFmpeg que já é conhecido por muitos graças à sua ampla gama de utilidades, para isso devemos abrir um terminal e executar o seguinte comando:
sudo apt install ffmpeg
Simplesmente para ter certeza de que foi instalado com sucesso, vamos executar este comando:
ffmpeg --help
Onde receberão uma resposta com todos os parâmetros da ferramenta.
modificando bashrc
Agora devemos fazer algumas modificações em nosso arquivo bashrc, no qual adicionaremos um alias para a transmissão.
É importante lembrar que o arquivo bashrc funciona por usuário, portanto, se mais de um usuário do seu sistema for usar esta função, eles devem adicionar o seguinte ao arquivo bashrc.
Antes de adicionar ou modificar, vamos fazer uma cópia de backup do nosso arquivo, para isso no terminal vamos executar o seguinte comando:
mkdir ~/bashrc-backup
cp ~ / .bashrc ~ / bashrc-backup / .bashrc-bak
Já com nosso backup do arquivo, podemos prosseguir para editá-lo com segurança, só precisamos executar o seguinte comando:
nano ~/.bashrc
Nota: você não deve editar como root ou com permissões de superusuário.
Devemos adicionar o seguinte ao final do arquivo:
streaming() { INRES="1920x1080" # input resolution OUTRES="1920x1080" # output resolution FPS="15" # target FPS GOP="30" # i-frame interval, should be double of FPS, GOPMIN="15" # min i-frame interval, should be equal to fps, THREADS="2" # max 6 CBR="1000k" # constant bitrate (should be between 1000k - 3000k) QUALITY="ultrafast" # one of the many FFMPEG preset AUDIO_RATE="44100" STREAM_KEY="$1" # use the terminal command Streaming streamkeyhere to stream your video to twitch or justin SERVER="live-sjc" # twitch server in California, see http://bashtech.net/twitch/ingest.php to change 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" }
Neste vPodemos editar a resolução, qualidade, áudio e outras configurações de transmissão de acordo com nossa necessidade ou capacidade de nossos equipamentos e conexão de rede. Portanto, você deve dedicar alguns minutos para isso.
Os valores pode ser calculado com a ajuda de estimadores, os links são eEste que a OBS nos fornecee este outro que encontrei na net. É fundamental que eles também saibam a velocidade de upload de sua rede, pois é um dos fatores mais influentes na qualidade da transmissão, você pode saber com esta ferramenta.
Nós apenas não adicionaremos nossa chave de transmissão, isso será solicitado sempre que executarmos o script.
Depois de feitas as configurações, salvamos as alterações no editor de texto Nano com Ctrl + O e fechamos com Ctrl + X.
Streaming para Twitch do terminal
Agora, para executar o script, basta escrever o seguinte comando no terminal:
streaming streamkey
Com isso eles devem já sabe a senha fornecida pelo Twitch, se não, eles deveriam simplesmente ir para este link onde eles vão conseguir.
Já com isso basta configurá-lo e você deve iniciar o fluxo para o Twitch corretamente.
Para sair do stream, pressione "Q" e deve terminar, pois o stream usa FFmpeg. Se o botão Q não funcionar, tente sair do script com Ctrl + C ou Ctrl + Z.