Как можно легко запустить круглосуточную трансляцию YouTube на linux транслируя свои видео? Почему linux? Почему нельзя просто установить OBS studio и с помощью неё запускать трансляцию? Одна з причин, это то, что при работе OBS studio требуется больше мощностей для запуска и трансляции, при этом, стабильной и плавной прямой трансляции может и не быть. Если получится запустить, то не на само слабом сервер и при этом, FPS может быть не более 20 кадров/с. По этом нам потребуется сервер с OS Linux.
Что потребуется: Сервер с системой Linux. Сегодня рассмотрим установку на сервере с ОС CentOS 7.Также установленный python. В большинство современных образов, python 2 установлен в систему из коробки.
Установка:
1. Подключаемся к серверу по SSH.
2. Устанавливаем дополнительно ПО для запуска трансляции. Для этого подключаем дополнительный репозиторий чтобы можно установить ПО для работы трансляции. Для этого пропишем следующую команду в консоли
3. Производим установку ffmpeg. Для установки пишем в консоли команду:
4. Чтобы проверить, установился ли ffmpeg, пишем команду
Если ffmpeg установлен, будет следующий результат как на рисунке ниже.
5. После установки ffmpeg создаём директорию в которой у нас будут храниться видео. В нашем случаю директория которая будет хранить видео, имеет расположение /root/YouTube/video. Чтобы создать данную директорию, напишем следующую команду:
После того как директория была создана, загружаем видео с расширением mp4 в данную директорию. После загрузки видео в указанную директорию, можем приступить к следящему действию.
6. Следующим шагом будет создания и редактирование файла/скрипта, который будет отвечать за работу прямой трансляции на YouTube. Напишем команду
После написаний откроется файл YouTube.py в который нужно написать следующий код:
Параметр dirname имеет путь к директории с видео, который будут транслироваться в прямой трансляции. Если нужно установить свою директорию, в которой находятся видео, замените «/root/YouTube/video/» на свой полный путь.
Чтобы установить свой ключ трансляции, меняете «rtmp://a.rtmp.youtube.com/live2/0xx0-xxxx-x000-x0x0-xxxx» на значение своего ключа.
Параметры:
-threads — количество потоков, которые может обрабатывать ffmpeg-preset — насколько сильно будет нагружен CPU
Есть следующие параметры:
- ultrafast
- superfast
- veryfast
- faster
- fast
- medium
- slow
- slower
- veryslow
В зависимости, от мощности CPU устанавливаем нужный параметр. Для наилучшего результата, проверим каждый параметр, как с ним производится трансляция и в зависимости от скорости работы устанавливаем тот или иной параметр.
-crf — коэффициент, который отвечает за качество картинки. По умолчанию установлен 23. Данный коэффициент может иметь значения от 0 до 51. Чем значение больше, тем качество лучше. Значение 0 — качество равно качеству самого видео. Значение 51 — самое хуже качество.
-g — коэффициент, который указывает явное количество ключевых кадров.
-re — указывает, что файл необходимо конвертировать в поток.
-i — указывает, что файл нужно воспроизвести.
-f — указывает, в какой формат должен быть конвертирован файл. Для YouTube нужен формат «flv»
Если все нужные настройки были завершены, можно приступить к запуску скрипта.
7. Чтобы запустить скрипт в фоновом режиме, нужно установить дополнительный пакет screen. Для этого прописывает следующую команду:
После установки данного пакета переходим в режим «скрина». Для этого прописываем следующую команду:
После написания данной команды, Вам нужно запустить данный скрипт. Для этого прописываем следующее:
Можем увидеть, что запустился скрипт. Пример можете увидеть на следующем скриншоте.
Чтобы отключится от сервера безопасно, при этом, оставить работать прямую трансляцию, требуется нажать на CTRL+A, после чего на клавишу D. Работа скрипта перейдёт в фоновый режим, а трансляцию продолжить свою работу. После этого можете отключиться от сервера. Или можно закрыть окно ssh-клиента — через кнопку закрытия окна (крестик), сессия не прервется. Если требуется остановить работу скрипта или проверить его работу, нужно в консоли сервера прописать следующую команду
После ввода данной команды открыться наш скрипт. Остановить его можно используя комбинации клавиш CTRL+Z