Новый формат продвижения - прямые эфиры на YouTube!

18 сентября, 2026

Делюсь первыми впечатлениями о новом формате автоматического продвижения личного бренда - прямых эфирах на YouTube!

Начало

Пару лет назад у меня уже была такая идея: запускать прямые эфиры 24/7, транслируя записи своих онлайн-курсов: автоматически, без участия человека. Выбираешь нужные ролики, ставишь таймер, задаешь настройки (обложку, теги, категорию, описание), и получаешь просмотры, подписки, продажи. Качаешь узнаваемость и персональный бренд...

Тогда я начал разбираться. На рынке было несколько решений с GitHub, но нужного функционала в них не было. Да и моих знаний тогда не хватало, чтобы развернуть их самостоятельно.

Сложность была в установке. Даже открытые решения требовали:

  • собственного сервера с набором приложений для запуска трансляций;
  • дискового хранилища для видеоуроков и плейлистов;
  • конвертации видео в нужный битрейт, чтобы эфир шел стабильно;
  • подключения YouTube-аккаунта через веб-приложение (проект в Google Cloud и разрешение);
  • мониторинга и отработки сценариев, чтобы трансляция не прерывалась (все ошибки, остановки, кодирование и т.д. т.п.).

Серверная часть и бэкенд стали главной проблемой.

Да, можно было заплатить за специализированные сервисы, но 99% из них - зарубежные, а стоимость составляла от 7$ до 50$ за несколько часов с ограничением по объему контента (загрузка в файловое хранилище). А мне нужна была 24-часовая трансляция, и не одна. Занятия шли по 3 часа, некоторые курсы весили по 70-100 ГБ. Экономически это невыгодно. Я забросил идею.

Но сейчас, с развитием больших языковых моделей (LLM), благодаря предыдущему опыту и насмотренности я наконец смог реализовать то, что несколько лет назад было недоступно: запустить прямой эфир 24/7 на своем сервере, сведя собственные затраты, фактически, к минимуму.

Какие цели я преследовал? Во-первых, найти новый канал общения с аудиторией и привлечения подписчиков. Во-вторых, протестировать автоматические каналы продаж. Я убежден, что уже скоро многие бизнесы перейдут от холодных звонков и ручного поиска клиентов к автоматизации: парсингу вакансий, автоматической рассылке резюме и откликов. SMM-специалисты будут вести соцсети с помощью ИИ и автопостинга - выстраивать конвейер по производству контента и публиковать его без ручного участия. Да это уже и сейчас происходит, просто не так массово.

И, в-третьих, я хотел прокачивать навыки программирования с использованием агентов, создание собственных приложений и понимание серверной части. Для интернет-маркетолога это не бонус-навык, а уже часть профессии. Границы между разработчиком и любой другой специальностью очень сильно размываются.

Научитесь создавать приложения для рекламы и аналитики с помощью ИИ без опыта в программировании на онлайн-курсе «Вайбкодинг для маркетологов»

Подготовка к эфиру

Задача была простая и очень конкретная, но в то же время сложная для реализации: крутить на YouTube прямой эфир 24/7 из записанных видеозанятий, без OBS на домашнем компьютере (как я это делаю обычно на трансляциях в Twitch или живых потоках онлайн-курсов) и без ручного переключения роликов. Сам контент уже был - это 16 занятий онлайн-курса Google Tag Manager, 96 уроков (длинный плейлист) и ~ 50 часов видео в формате .mp4. У видео было разное качество: 1080p60, 1080p30, разные битрейты.

Материалы для прямого эфира (видеоуроки по Google Tag Manager)

Дополнительный функционал: возможность добавления изображений поверх трансляций (например, QR-кода/логотипа), автоматический подбор битрейта, а также автозапуск по расписанию с возможностью зацикливания плейлиста (если все видео будут показаны - запустить плейлист заново по кругу).

Перед разработкой я нашел несколько готовых решений:

  • Restreamer (datarhei) - мощный, но заточен под прием live-сигнала (камера, OBS), а не под плейлист из файлов + watermark + остановка после одного прохода;
  • hajilok/youtube-live-streaming - демо на ~50 строк: один файл в бесконечном цикле, без админки, без плейлиста, без watermark.

Эти решения мне не подошли, поэтому я собрал легкую админку со следующей инфраструкторой и стеком технологий:

  • Node.js + FFmpeg + Docker;
  • зарубежный сервер VPS (Linux, 2 vCPU, ~4 GB RAM), так как в России YouTube принудительно замедляют;
  • свой домен;
  • HTTPS через Caddy + Let's Encrypt;
  • приложение без базы данных (настройки, плейлисты и метаданные в JSON на диске), без облачного хранилища (файлы хранятся на VPS) и для личного использования (никаких аккаунтов пользователей и биллинга, красивых стилей, дизайна и т.п., только админка с паролем и базовый функционал).

Первая версия умела загружать видео, создавать плейлисты, добавлять watermark'и, зацикливание и start/stop через браузер. YouTube API, чекпоинты, автопереподключение, нормализация форматов добавились уже после запуска прямого эфира, когда на трансляции начали появляться первые проблемы. Об этом расскажу далее.

Интерфейс я решил разбить на несколько вкладок, чтобы было удобнее управлять трансляциями:

  • Подключение YouTube - добавить YouTube-канал для эфира (можно подключить несколько);
  • Плейлист - создать плейлист, загрузить видео, выставить порядок воспроизведения;
  • Прямые эфиры - создать эфир, выбрать плейлист, настроить изображение (watermark), расписание, теги, категорию, описание, зацикливание и т.д.

Вкладки в администраторской панели

Вот так выглядят настройки прямого эфира:

Настройки прямого эфира YouTube

Так проще не перепутать Загрузить видео и Запустить трансляцию, а один плейлист можно использовать в нескольких эфирах без дублирования файлов. К тому же, на странице эфира отображается статус и прогресс конкретной трансляции: идет ли эфир, какие ошибки возникают в процессе, прогресс плейлиста, здоровье потока на YouTube и прочее.

Проведя всю подготовительную работу и протестировав эфир на тестовом аккаунте, я запустил прямую трансляцию на основном YouTube-канале.

Запуск прямого эфира 24/7 на YouTube

День 1

Первые пять часов прошли отлично! Никаких сбоев, никаких проблем.

Прямой эфир работает в штатном режиме

Эфир идет, по ключевым словам мой стрим на YouTube отображается в поиске. Все прекрасно!

Моя трансляция отображается в результатах поиска

Примерно на шестом часу непрерывного эфира трансляция зависла. У зрителя картинка перестала обновляться, хотя в админке все работало. Пришлось оперативно перезапускать поток и на ходу дорабатывать приложение: улучшать проверку ошибок, логику переподключения и то, как система ведет себя после обрыва.

Было важно не создавать новый эфир на YouTube при каждом сбое. Если трансляция оборвалась, а эфир на канале еще активен, приложение должно вернуться к той же ссылке (watch?v=...), а не генерировать новый URL. Иначе зрители теряют страницу, сбивается статистика, а в YouTube Studio множатся эфиры.

Ошибок было много. Например:

YouTube временно не получает видеопоток. В интерфейсе появлялось предупреждение, что видеосигнал не поступает, хотя FFmpeg еще работал или только переподключался. Оказалось, что сообщение часто появлялось раньше времени, в момент переподключения, когда старый прием видеопотока (ingest) уже оборвался, а новый еще не успел стать активным (active). YouTube при этом мог уже показывать эфир как LIVE, хотя картинка еще не шла.

Пришлось перерабатывать логику работы, разделив поток на два состояния:

  • Ожидание сигнала - эфир только подключается, предупреждать рано;
  • Поток пропал - ingest был подтвержден, потом долго inactive (примерно 40+ секунд).

Другая ошибка - Error closing file rtmp://... Broken pipe + Эфир на YouTube не завершен автоматически. Локальный процесс внутри моей админки падал или зависал, а эфир на YouTube оставался активным. Из-за этого зрители видели зависшую картинку или черный экран.

Здесь пришлось исправлять многое:

  • переход на RTMPS (rtmps://a.rtmps.youtube.com/live, порт 443);
  • Graceful stop FFmpeg (q - SIGTERM - SIGKILL), чтобы не оставлять зависший поток;
  • автопереподключение до 8 попыток с нарастающей паузой, чтобы эфир восстанавливался без ручного вмешательства;
  • внедрение checkpoint'ов (сохранение позиций в плейлисте каждые 30 секунд), чтобы в случае обрыва продолжать воспроизведение с того же места, а не с начала;
  • PID-файл и очистка «зависших» FFmpeg перед новым стартом, чтобы не запускать второй процесс поверх первого.

Не менее интересная ошибка - С основным URL связано больше одного потока данных.

Ошибка "С основным URL связано больше одного потока данных"

Было две причины, которые вызывали эту ошибку:

Причина А - лишние дорожки в FFmpeg. В mp4 иногда есть не только видео и аудио, но и обложка (cover), вторая аудиодорожка. FFmpeg по умолчанию мог отправить их все, а YouTube воспринимал это как несколько потоков на один URL.

Причина Б - попытка dual ingest. YouTube дает два URL трансляции: основной (a.rtmp.youtube.com) и резервный (b.rtmp.youtube.com?backup=1). Мы пробовали слать видео на оба сразу. YouTube ругался на «лишние потоки», а через RTMPS это работало плохо. В какой-то момент мой сервер показывал 100% нагрузку:

100% нагрузка на CPU

В итоге отказались от двойной отправки и оставили один поток на основной адрес. Саму ошибку YouTube Studio убрали иначе: настроили FFmpeg так, чтобы он отдавал только одно видео и один звук, без лишних дорожек из файла. После этого предупреждение исчезло, и прием потока снова стал нормальным.

На следующем этапе отладки выяснилось еще одно: часть mp4 в плейлисте была 30 fps (time_base 1/15360), а первые ролики - 60 fps (1/60000). FFmpeg не пересчитывает метки времени между файлами с разным time base. На стыке 60-30 fps все видеокадры отбрасывались (drop=26000+), а звук шел. Отсюда возникал рассинхрон аудиодорожки и видеодорожки. Исправили так: перед стартом эфира все файлы плейлиста приводятся к единому формату (remux без перекодирования, ~1–4 секунды на файл). Плюс мониторинг drop= в логах FFmpeg с предупреждением в админке. После этого ошибка пропала, трансляция стала идти стабильнее.

Главная доработка первого дня - это переподключение к тому же эфиру. Изначально при запуске прямого эфира после сбоя создавалась новая трансляция на YouTube: новая ссылка, а старый эфир продолжал висеть со статусов LIVE.

После перезапуска из-за сбоя начиналась новая трансляция с новой ссылкой

Из-за этого мои подписчики, переходя по ссылке из письма-рассылки или социальных сетей, могли думать, что трансляция уже завершилась, хотя она просто идет, но просто уже по другому URL.

Для перезапуска трансляции использовались checkpoint'ы (продолжаем с того же ролика и секунды, где оборвалось) и проверка на освобождение потока трансляции. Как только это происходило, система сама извлекала broadcastId (идентификатор потока), streamId (идентификатор трансляции), watchUrl (URL трансляции) и подставляла в исходные значения. Если переиспользовать нельзя - только тогда создаем новый эфир и аккуратно завершаем старый.

Больше всего я боялся, что трансляция зависнет ночью, стоит мне лечь спать. Так и вышло. Но из-за легкого волнения организм сам просыпался именно в те моменты, когда эфир останавливался. Я вручную перезапускал его - примерно в 3 часа ночи, в 5 и в 6 утра. Спал урывками, зато получил отличный опыт!

Научитесь создавать приложения для рекламы и аналитики с помощью ИИ без опыта в программировании на онлайн-курсе «Вайбкодинг для маркетологов»

Главный вывод после первого дня эфира - навык быстрого реагирования: проснуться ночью и, если трансляция прервалась, сразу возобновить ее. Первые минуты и часы запуска нужно мониторить постоянно, потому что случиться может что угодно. Это тот же процесс, что и после старта рекламных кампаний. Кто работал с контекстной и таргетированной рекламой, поймет 😉

День 2

После всех ошибок, исправленных в первый день, трансляция во второй прошла как по маслу: никаких сбоев, никаких прерываний, все строго по плейлисту. Единственное, что иногда появлялось - это уведомление об изменении битрейта потока. Он опускался ниже рекомендованного (6800 Kbps). Не критично.

День второй прошел стабильно

В остальном все прошло отлично! Ни разу не пришлось вставать ночью, сервер стабильно держал нагрузку и не давал сбоев. Пока шел прямой эфир, я занимался другими делами.

Итоги

Суммарное время эфира ~ 53 часа

Вы хотели увидеть практическое применение нейросетей и вайбкодинга? Вот оно. Но я не устану повторять: результата вы добьетесь только тогда, когда будете разбираться сами во всех процессах проведения прямых эфиров. А именно:

  • понять, как устроена передача видео и звука от камеры до зрителя, как работает кодирование потока и почему от битрейта зависит качество картинки;
  • разобраться, где разместить сервер и почему для YouTube важна его геолокация;
  • научиться настраивать домен и защищённое соединение, чтобы трансляция была доступна по вашему адресу, а не по чужому;
  • понять, как организовать хранение плейлистов, расписания и метаданных без сложных баз данных;
  • освоить хотя бы базовую автоматизацию, чтобы эфир запускался по расписанию, а не вручную.

Я провожу эфиры с 2016 года, а с веб-разработкой знаком с начала нулевых, поэтому создать что-то подобное было в разы проще, чем человеку, не знакомому с этими процессами.

Но я все равно получил колоссальный опыт работы с прямыми эфирами, и теперь могу масштабировать это решение на другие площадки - параллельно вести трансляции на Rutube, ВК и других платформах. Останется только потихоньку расширять функционал и наслаждаться результатом.

Как я говорил в самом начале, скоро многие интернет-магазины и блогеры заведут свой собственный «магазин на диване» и будут вести трансляции круглосуточно, рассказывая о преимуществах своих товаров и услуг. А активность в других социальных сетях будет давать им органический прирост трафика. Причем это может быть как видеоконтент, записанный заранее, так и сгенерированный нейросетью цифровой аватар, который будет вести эфир от вашего имени. А - автоматизация!

Трансляция не сохранилась на моем канале, потому что ее длительность превышает максимально допустимую для одного видео YouTube -  12 часов. Но краткую статистику по прямому эфиру привести смогу:

Первая трансляция (длительность - 6 часов)

  • Просмотров - 1051
  • Суммарное время просмотров - 48 часов
  • Уникальных зрителей - 166
  • Показы значков видео - 5900
  • CTR для значков видео - 2,4%
  • Средняя продолжительность просмотра - 11:32 (с подпиской - 57,8%, без подписки - 42,2%)
  • Максимум зрителей - 16, в среднем - 8
  • Основной тип устройства - компьютер (78%)

Оборвалась связь, поэтому пришлось запускать новую, по другому URL.

Вторая трансляция (длительность - 48 часов)

  • Просмотров - 2252
  • Суммарное время просмотров - 85 часов
  • Уникальных зрителей - 169
  • Показы значков видео - 11 600
  • CTR для значков видео - 2,4%
  • Средняя продолжительность просмотра - 9:42 (с подпиской - 53,5%, без подписки - 46,5%)
  • Максимум зрителей - 7, в среднем - 2
  • Основной тип устройства - компьютер (83%)

За два дня прямого эфира на мой YouTube-канал подписались 20 человек, и один человек купил онлайн-курс по вайбкодингу (на трансляции я повесил QR-код, по которому отслеживал переход с utm_меток). Так что свою первую трансляцию я уже монетизировал!

Если формат вам понравится, такой источник продвижения я буду использовать гораздо чаще. Возможно, даже сделаю свой собственный канал по интернет-маркетингу, на котором будут транслироваться обучения 24/7, в том числе и других авторов, со своей эфирной сеткой.

🔥 Новый онлайн-курс по вайбкодингу! Живой поток. Старт 26 октября!
ПОДРОБНЕЕ