Як транслювати, щоб Twitch з командного рядка в Linux

Багато користувачів операційної системи Linux віддають перевагу стрімінгу на платформі Twitch, використовуючи програму Open Broadcaster Software. Проте, цей інструмент не всім підходить, і деякі шукають альтернативні рішення. Можливість переглядати Twitch-трансляції безпосередньо в браузері існує, і так само можна створити простий bash-скрипт для стрімінгу на Twitch.

Важливо пам’ятати, що якщо ви використовуєте VPN для підключення до Twitch, його потрібно буде активувати окремо.

Інсталяція кодувальника FFmpeg

Процес стрімінгу на Twitch з командного рядка Linux залежить від використання кодувальника FFmpeg. Перед тим, як продовжити з цим посібником, переконайтеся, що FFmpeg встановлений на вашому Linux-комп’ютері. Відкрийте вікно терміналу і введіть відповідну команду. Для встановлення FFmpeg, ваш дистрибутив Linux повинен бути Ubuntu, Debian, Arch Linux, Fedora або OpenSUSE. Якщо ви використовуєте інший дистрибутив, ви можете завантажити та встановити FFmpeg безпосередньо з офіційного сайту тут.

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

Після інсталяції, запустіть FFmpeg в терміналі, щоб перевірити його працездатність. Не потрібно вказувати файл для кодування. Введіть наступне в терміналі:

ffmpeg --help

Переконайтеся, що довідкова сторінка відкрилася, а потім введіть “clear”, щоб очистити термінал.

Редагування файлу Bashrc

Кодувальник встановлений та готовий до роботи. Наступним кроком є налаштування псевдоніма для стрімінгу на Twitch в системі. Для цього потрібно буде відредагувати файл bashrc, який містить різні змінні та команди для кожного користувача. Bashrc працює окремо для кожного користувача, тому кожен, хто хоче використовувати цю команду для стрімінгу, повинен виконати описаний нижче процес.

Почніть зі створення резервної копії файлу bashrc, щоб мати можливість скасувати зміни в разі необхідності. Створіть копію, використовуючи наступні команди:

mkdir ~/bashrc-backup

cp ~/.bashrc ~/bashrc-backup/.bashrc-bak

Після створення резервної копії, перейдіть до редагування. Відкрийте bashrc в терміналі. **Не використовуйте root!** Ви можете випадково відредагувати bashrc користувача root замість свого власного.

nano ~/.bashrc

Вставте цей код в кінець файлу bashrc. Зверніть увагу, що, можливо, вам знадобиться змінити деякі параметри під свої потреби. Особливо це стосується роздільної здатності, бітрейту, якості відео і так далі.

**Зауваження:** Не зберігайте ключ потоку в bashrc. Це небезпечно! Скрипт буде запитувати ключ кожного разу, коли ви починаєте трансляцію.

 streaming() {
     INRES="1920x1080" # вхідна роздільна здатність
     OUTRES="1920x1080" # вихідна роздільна здатність
     FPS="15" # цільовий FPS
     GOP="30" # інтервал між i-кадрами, має бути вдвічі більший за FPS
     GOPMIN="15" # мінімальний інтервал i-кадрів, має бути рівним FPS
     THREADS="2" # макс. 6
     CBR="1000k" # постійний бітрейт (від 1000k до 3000k)
     QUALITY="ultrafast" # один з пресетів FFMPEG
     AUDIO_RATE="44100"
     STREAM_KEY="$1" # використовувати команду Streaming streamkeyhere для стрімінгу на Twitch
     SERVER="live-sjc" # сервер Twitch в Каліфорнії, див. 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"
 }

Після вставки коду, збережіть файл (Ctrl+O) та закрийте редактор (Ctrl+X).

Початок трансляції

Щоб почати стрімінг на Twitch з командного рядка, відкрийте термінал і використовуйте нову команду “streaming”, яку ви налаштували в bashrc. Вам потрібен ваш ключ трансляції Twitch. Увійдіть в Twitch, перейдіть до панелі керування і знайдіть свій ключ потоку.

Якщо все налаштовано правильно, для запуску стріму введіть:

streaming ваш_ключ_трансляції

Щоб зупинити трансляцію, натисніть “Q”. Якщо це не спрацює, закрийте скрипт примусово за допомогою Ctrl+Z.

Створення скрипту для стрімінгу

Якщо вводити ключ трансляції кожен раз незручно, можна створити скрипт. Пам’ятайте, що це зробить ваш ключ доступним для всіх, хто має доступ до вашого комп’ютера. Щоб створити скрипт, відкрийте термінал і введіть наступні команди.

Спочатку додайте shebang з допомогою команди “echo”. Shebang вказує Bash, який інтерпретатор використовувати.

**Увага:** Не переміщуйте скрипт з домашньої папки. Він залежить від команди “streaming” у bashrc. Якщо його перемістити, він може не працювати.

echo "#!/bin/bash" > ~/stream-script.sh

Далі, скопіюйте вашу команду для стрімінгу та запишіть її у скрипт:

echo "streaming ваш_ключ_трансляції" >> ~/stream-script.sh

Оновіть дозволи для скрипту, щоб система могла його запустити:

sudo chmod +x stream-script.sh

Запустіть скрипт за допомогою:

./stream-script.sh

або

sh stream-script.sh

Для виходу зі скрипту натисніть “Q” або Ctrl + Z.