Mnoho uživatelů operačního systému Linux preferuje pro živé vysílání na platformě Twitch nástroj Open Broadcaster Software. Nicméně, tento program nemusí vyhovovat každému a někteří hledají alternativní řešení. Je možné sledovat streamy na Twitch bez nutnosti používání webového prohlížeče a dokonce i streamovat pomocí jednoduchého skriptu v prostředí Bash.
Pokud při přístupu na Twitch používáte VPN, bude potřeba ji aktivovat samostatně.
Instalace nástroje pro kódování FFmpeg
Pro streamování na Twitch z příkazové řádky v Linuxu se využívá nástroj pro kódování videa FFmpeg. Před pokračováním v tomto návodu je nutné mít tento software nainstalovaný na vašem systému. Spusťte okno terminálu a zadejte příslušný příkaz pro instalaci. Následující příkazy jsou určeny pro distribuce Ubuntu, Debian, Arch Linux, Fedora nebo OpenSUSE. V případě, že používáte jinou distribuci, můžete si FFmpeg stáhnout a nainstalovat ze stránek projektu zde.
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
Po úspěšné instalaci ověřte funkčnost FFmpeg spuštěním v terminálu. Není nutné zadávat žádné parametry pro kódování souborů. Pro otestování zadejte:
ffmpeg --help
Pokud se zobrazí nápověda, vše proběhlo správně. Následně vymažte terminál pomocí příkazu clear
.
Úprava souboru .bashrc
Po instalaci a ověření funkčnosti nástroje pro kódování je dalším krokem konfigurace aliasu pro streamování na Twitch. K tomu je nutné upravit soubor .bashrc
. Tento soubor obsahuje různé příkazové proměnné pro každého uživatele. Změny v .bashrc
se vztahují pouze na konkrétního uživatele, takže každý, kdo chce používat tento skript, musí provést níže uvedené kroky.
Nejprve vytvořte zálohu souboru .bashrc
, aby bylo možné vrátit změny, pokud se rozhodnete streamovací alias odstranit. Zálohu vytvoříte zkopírováním souboru:
mkdir ~/bashrc-backup cp ~/.bashrc ~/bashrc-backup/.bashrc-bak
Po zálohování můžete začít s úpravami. Otevřete soubor .bashrc
v textovém editoru z terminálu. **Nepoužívejte ROOT**, abyste omylem neupravili .bashrc
uživatele root, což by byla chyba.
nano ~/.bashrc
Na konec souboru .bashrc
vložte následující kód. Mějte na paměti, že budete pravděpodobně muset upravit některé parametry podle vašich preferencí, jako jsou rozlišení, počet vláken, kvalita, CBR atd.
Důležitá poznámka: Nikdy neukládejte svůj streamovací klíč přímo do .bashrc
, je to bezpečnostní riziko. Skript bude vyžadovat vložení klíče při každém spuštění streamu.
streaming() { INRES="1920x1080" # vstupní rozlišení OUTRES="1920x1080" # výstupní rozlišení FPS="15" # cílová snímková frekvence GOP="30" # interval I-snímků, měl by být dvojnásobkem FPS GOPMIN="15" # minimální interval I-snímků, měl by být roven FPS THREADS="2" # maximálně 6 CBR="1000k" # konstantní bitová rychlost (doporučuje se mezi 1000k - 3000k) QUALITY="ultrafast" # jedna z mnoha předvoleb FFMPEG AUDIO_RATE="44100" STREAM_KEY="$1" # pro streamování na Twitch zadejte příkaz Streaming vas_streamovaci_klic SERVER="live-sjc" # server Twitch v Kalifornii, viz https://bashtech.net/twitch/ingest.php pro změnu 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" }
Po vložení kódu do .bashrc
uložte změny (Ctrl+O) a zavřete textový editor Nano (Ctrl+X).
Streamování
Pro zahájení streamování na Twitch z příkazové řádky otevřete terminál a použijte nový příkaz pro streamování, který jste definovali v souboru .bashrc
. Pro streamování budete potřebovat svůj streamovací klíč z Twitch. Přihlaste se do svého účtu na Twitch, přejděte na svůj panel a najděte svůj streamovací klíč.
Pokud jste správně nastavili všechny parametry, streamování z příkazové řádky by mělo být spuštěno následujícím příkazem:
streaming streamkey
Stream ukončíte stisknutím klávesy „Q“. Pokud „Q“ nefunguje, můžete ukončit skript nuceně stisknutím Ctrl+Z.
Streamovací skript
Pokud vás nebaví opakované zadávání streamovacího klíče, můžete si vytvořit streamovací skript. Nicméně, mějte na paměti, že uložení klíče do skriptu znamená zpřístupnění ho všem uživatelům, kteří mají přístup k vašemu počítači. Pokud se pro tuto variantu rozhodnete, otevřete terminál a zadejte následující příkazy:
Nejprve použijte příkaz echo
pro vložení „shebang“ do skriptu. Shebang informuje interpret Bash, jaký typ skriptu má spustit.
Důležitá poznámka: Nepřesouvejte skript z domovského adresáře! Spoléhá se na streamovací funkci definovanou v souboru .bashrc
. Pokud jej přesunete do jiné složky, skript nemusí fungovat správně.
echo "#!/bin/bash" > ~/stream-script.sh
Následně zkopírujte streamovací příkaz a pomocí příkazu echo
vložte ho do skriptu:
echo "streaming streamkey" >> ~/stream-script.sh
Nakonec aktualizujte oprávnění skriptu, aby jej bylo možné spustit. Bez tohoto kroku by skript nemusel fungovat.
sudo chmod +x stream-script.sh
Skript spustíte zadáním:
./stream-script.sh
nebo
sh stream-script.sh
Skript ukončíte stisknutím klávesy „Q“ nebo nuceně stisknutím Ctrl+Z.