Как управлять настройками трансляций
Если вы правильно настроите трансляцию, это поможет вам привлечь нужную аудиторию и улучшить качество потока.
Примечание. Эта статья предназначена только для пользователей, которые проводят трансляции с мобильного устройства или с помощью видеокодера. Эфиры с веб-камер настраиваются по-другому.
Как применить настройки из прошлой трансляции
При создании новой трансляции можно использовать настройки предыдущей. При этом будут скопированы все ее метаданные, ключ и параметры. После создания трансляции эти параметры можно изменить. Чтобы применить настройки, выберите трансляцию и нажмите Использовать.
Как изменить метаданные
Укажите приведенные ниже параметры при создании или планировании трансляции. Также к ним можно перейти, нажав Изменить на странице с настройками.
Страница сведений
Конфиденциальность
Пользователи 13-17 лет по умолчанию загружают видео с ограниченным доступом, а пользователи 18 лет и старше – с открытым. Изменить тип доступа к прямой трансляции можно в любой момент.
Тип
Укажите, к какой категории относится ваша трансляция, например «Видеоигры» или «Люди и блоги». Это поможет привлечь нужную аудиторию.
Теги
Теги – это ключевые слова, по которым пользователям будет проще найти ваш контент. Рекомендуем добавлять теги, если при поиске видео зрители зачастую допускают ошибки в написании. В остальных случаях делать это необязательно.
Запланированная трансляция
Информация о запланированном эфире может появиться у ваших зрителей в фиде подписок. Если они нажмут «Напомнить», то получат уведомление о начале трансляции.
Страница «Монетизация»
Страница «Сведения о правах»
Здесь можно управлять правами на трансляцию, в том числе указать страны, где она будет монетизироваться, включить или отключить поиск совпадений в системе Content ID, заявить о правах собственности и задать политику. Например, вы можете настроить показ рекламы зрителям в России и отслеживание статистики по просмотрам в остальных странах. Подробнее об управлении правами…
Страница «Редирект»
После окончания трансляции вы можете предложить зрителям посмотреть премьеру или другой эфир. Вот несколько рекомендаций:
- Создайте премьеру и задайте ее параметры перед настройкой трансляции.
- Сообщите зрителям, что они будут автоматически перенаправлены на страницу премьеры примерно через две секунды после окончания трансляции.
Комментарии и оценки
В этом разделе можно указать, нужно ли показывать комментарии и отправлять их на проверку. Также здесь можно выбрать, как упорядочить комментарии.
Настройки трансляции
Как добавить трейлер трансляции
До начала запланированной прямой трансляции на ее странице можно показывать трейлер. Это отличный способ заинтересовать зрителей.
Добавить трейлер можно только для трансляций, запланированных на вкладке «Управление» на Панели управления трансляциями. Вот как это сделать:
- Загрузите трейлер на канал, как обычный ролик.
- Откройте Творческую студию YouTube и нажмите Начать трансляцию.
- Запланируйте эфир или выберите нужную трансляцию на вкладке «Управление».
- В правом верхнем углу нажмите Изменить.
- Выберите Настроить.
- В разделе «Трейлер» нажмите Добавить.
- Выберите нужное видео.
- Нажмите Сохранить.
Требования к авторам
Вы сможете пользоваться этой функцией, только если у вас нет предупреждений о нарушении правил сообщества и на вашем канале более 1000 подписчиков.
Требования к видео для трейлера
- Видео может быть в любом формате, который поддерживается на YouTube.
- Длительность видео должна составлять от 15 секунд до трех минут.
- Для трейлера рекомендуется выбрать такое же соотношение сторон и разрешение, как и для премьеры.
- Трейлер не должен нарушать ничьи права.
Трейлер должен соответствовать нашим правилам сообщества.
Ключ трансляции
Ключ трансляции играет такую же роль, как пароль и адрес. Эта информация позволяет видеокодеру отправить видеопоток на YouTube, а YouTube – получить его. Ключ трансляции нужно сначала создать на YouTube, а затем скопировать в видеокодер.
Если вы хотите использовать один и тот же ключ трансляции, создайте свой собственный ключ. Для этого в разделе Выберите тип ключа трансляции нажмите «Создать ключ трансляции». Укажите настройки и нажмите Создать. Новый ключ появится в списке ключей трансляции.
URL трансляции
Этот URL следует ввести в настройках видеокодера, чтобы видеопоток передавался по нужному адресу.
Задержка трансляции
Задержка – это промежуток времени между моментом, когда камера или видеокодер фиксирует происходящее, и моментом, когда зрители видят этот кадр. Чем меньше задержка, тем чаще возникают паузы из-за буферизации. Если вы не планируете взаимодействовать с аудиторией, можно выбрать большую задержку. Подробнее о задержке трансляции…
Видеорекордер
Панорамное видео
Вести прямую трансляцию можно в режиме панорамного видео. Пока на YouTube поддерживается только формат равнопромежуточной проекции. Вот как с ним лучше работать:
- Задайте максимальные разрешение и битрейт, которые поддерживаются на вашем устройстве.
- Рекомендуемое разрешение для панорамных трансляций: 2160p или 1440p.
- Установите соотношение сторон 16:9. Подробнее…
Проводить панорамные прямые трансляции можно только на компьютере в браузерах Chrome, Firefox, Microsoft Edge и Opera. Смотреть же их можно и на мобильных устройствах в приложениях YouTube и «YouTube Гейминг».
Автоматический запуск и завершение трансляции
Если у вас включены эти параметры, вы можете начать трансляцию и прекратить ее прямо в видеокодере. Если вы применяете настройки предыдущей трансляции, эти параметры тоже копируются в новую.
Эта информация оказалась полезной?
Как можно улучшить эту статью?
Если вы правильно настроите трансляцию, это позволит вам привлечь нужную аудиторию и улучшить качество потока.
Примечание.
Эта статья предназначена только для пользователей, которые проводят трансляции с помощью видеокодера. Эфиры с веб-камер и мобильных устройств настраиваются по-другому.
- Как применить настройки из прошлой трансляции
- Как изменить сведения о трансляции
- Настройки доступа
- Категория
- Запланированная трансляция
- Как задать настройки трансляции
- Ключ трансляции
- URL трансляции
- Задержка трансляции
- Видеорекордер
- Панорамное видео
- Автоматический запуск и завершение трансляции
Как применить настройки из прошлой трансляции
К каждому новому эфиру можно применять параметры одного из предыдущих. Тогда будут скопированы метаданные, ключ трансляции и другие настройки. После создания эфира эти параметры можно изменить. Чтобы воспользоваться функцией, просто выберите трансляцию, настройки которой вы хотите применить, и нажмите Использовать.
Как изменить сведения о трансляции
Приведенные ниже параметры указываются при создании трансляции. Также перейти к ним можно, нажав Изменить на странице с настройками.
Настройки доступа
Вы можете выбрать один из следующих вариантов:
- Открытый доступ
- Трансляцию смогут смотреть все пользователи.
- Доступ по ссылке
- Трансляцию смогут смотреть только пользователи, у кого есть ссылка.
- Ограниченный доступ
- Трансляция будет доступна только вам.
Категория
Укажите, к какой категории относится ваша трансляция, например «Видеоигры» или «Люди и блоги». Это поможет привлечь нужную аудиторию.
Запланированная трансляция
Информация о запланированном эфире может появиться у ваших зрителей в фиде подписок. При желании они могут включить уведомление о начале трансляции. Для этого нужно нажать «Напомнить«.
Как задать настройки трансляции
Ключ трансляции
Ключ трансляции играет такую же роль, как пароль и адрес. Эта информация позволяет видеокодеру отправить фид по нужному каналу, а YouTube – получить его. Ключ трансляции нужно сначала создать на YouTube, а затем скопировать в видеокодер.
Если вы хотите использовать один и тот же ключ трансляции, создайте свой собственный ключ. Для этого в разделе Выберите тип ключа трансляции нажмите «Создать ключ трансляции«. Укажите настройки и нажмите Создать. Новый ключ появится в списке ключей трансляции.
URL трансляции
Этот URL нужно ввести в настройках видеокодера, чтобы фид трансляции передавался по нужному адресу.
Задержка трансляции
Задержка – это промежуток времени между моментом, когда камера или видеокодер фиксирует происходящее, и моментом, когда зрители видят этот кадр. Чем меньше задержка, тем чаще возникают паузы из-за буферизации. Если вы не планируете взаимодействовать с аудиторией, можно выбрать большую задержку. Подробнее…
Видеорекордер
С видеорекордером зрители смогут ставить вашу трансляцию на паузу и перематывать ее назад. Если запустить ее снова, она продолжится с того момента, на котором ее остановили. Подробнее….
- Задайте подходящее разрешение и битрейт. Лучше использовать максимальные параметры, которые поддерживаются на вашем устройстве.
- Рекомендуемое разрешение для панорамных трансляций: 2160p или 1440p.
- Установите соотношение сторон 16:9. Подробнее…
Проводить панорамные прямые трансляции можно только на компьютере в браузерах Chrome, Firefox, Microsoft Edge и Opera. Смотреть же их можно и на мобильных устройствах в приложениях YouTube и «YouTube Гейминг».
Панорамное видео
Вести прямую трансляцию можно в формате панорамного видео. Пока на YouTube поддерживается только формат равнопромежуточной проекции. Вот как с ним лучше работать:
Автоматический запуск и завершение трансляции
Если у вас включены эти опции, вы можете начать трансляцию или прекратить ее прямо в видеокодере. Также эти параметры можно скопировать из предыдущего эфира вместе с другими настройками.
По материалам:
https://support.google.com/youtube/answer/9854503
Заберите ссылку на статью к себе, чтобы потом легко её найти!
Выберите, то, чем пользуетесь чаще всего:
Я уже могу создавать трансляции событий в YouTube Live, сейчас я пытаюсь изменить существующие с помощью API обновления.
Проблема в том, что библиотека VideoSnippet не позволяет этого сделать, это нужно сделать другим способом.
(Эта PHP-функция вызывается из внешнего интерфейса с помощью ajax-запроса)
function updateBroadcast(){
if(!isset($client)){
$client = getClient();
}
$streamData = $_POST['streamData'];
$client->setAccessToken($_SESSION['google_access_token']);
$service = new Google_Service_YouTube($client);
if ($client->getAccessToken()) {
try {
$videoId = $streamData['id'];
// Call the API's videos.list method to retrieve the video resource.
$listResponse = $service->videos->listVideos("snippet",
array('id' => $videoId));
if (empty($listResponse)) {
return json_encode(sprintf('Can't find a video with video id: %s', $videoId));
} else {
// Since the request specified a video ID, the response only
// contains one video resource.
$video = $listResponse[0];
$videoSnippet = $video['snippet'];
$videoSnippet->setTitle($streamData['eventName']);
$videoSnippet->setDescription($streamData['eventCategory']);
$videoSnippet->setScheduledStartTime($streamData['eventDateTime'])
}
} catch (Google_Service_Exception $e) {
echo sprintf('<p>A service error occurred: <code>%s</code></p>',
htmlspecialchars($e->getMessage()));
} catch (Google_Exception $e) {
echo sprintf('<p>An client error occurred: <code>%s</code></p>',
htmlspecialchars($e->getMessage()));
}
return json_encode("Video Updated");
}
}
Выдает эту ошибку:
Неустранимая ошибка: вызов неопределенного метода Google_Service_YouTube_VideoSnippet :: setScheduledStartTime () в /var/www/html/production/app/empowerir/php/videoStreaming/functions.php в строке 242
Строка 242 это:
$videoSnippet->setScheduledStartTime($streamData['eventDateTime'])
0
Решение
Если вы прочитали ошибку, она уже должна сказать вам, в чем проблема:
Вызов неопределенного метода
Google_Service_YouTube_VideoSnippet :: setScheduledStartTime ()
Смотря на LiveBroadcasts.update, нет такого метода setScheduledStartTime (похоже, вы изобрели это на лету). Если вы хотите обновить snippet.scheduledStartTime свойство, вы должны установить это в теле запроса вашего LiveBroadcasts.update запрос.
0
Другие решения
Других решений пока нет …
*Стрим-сервис Youtube находится в постоянной доработке, поэтому некоторые функции могут отличаться от указанных в руководстве
Стрим-сервис на Youtube уже давно запустил платформу Youtube Gaming, предназначенную для стримов и просмотра игровых видео. Основной функционал Youtube позволяет проводить трансляции на базе платформы Youtube Gaming (YG), которые вы можете посмотреть не только на YG, но и на самом Youtube в целом.
Навигация
- Быстрый способ
- Запланированная трансляция
- Настройки видеокодера, битрейт и разрешение прямой трансляции
- Сообщения об ошибках на панели управления трансляциями
Требования для получения возможности проводить прямые трансляции для новых аккаунтов следующие:
- хорошая репутация аккаунта (отсутствие каких-либо ограничений);
- трансляции c мобильных устройств доступны авторам, на каналы которых подписано более 25 пользователей;
- подтвержденный мобильный номер для аккаунта.
Для того, чтобы включить возможность проводить трансляции, вы должны зайди на эту страницу
http://www.youtube.com/features
и в пункте «Прямые трансляции» нажать на кнопку «Включить». Если у вас нет прав на создание прямых трансляций, то откроется страница с меню для подтверждения мобильного номера для аккаунта. После подтверждения с помощью SMS система Youtube проверит репутацию вашего аккаунта и только потом выдаст права для организации стримов.
Для вас доступны два способа организации прямых трансляций — быстрый (с помощью функционала Youtube Gaming) и запланированные трансляции. При любом способе запись трансляции будет преобразована в Youtube-видео с заданными настройками (название, тэги, категория, монетизация и так далее), поэтому с точки зрения всей платформы Youtube быстрый способ настройки подходит для ежедневных стримов, а «запланированные трансляции» — для проведения авторских трансляций, требующих отдельной подготовки (к примеру, комментирование турнира, прохождение новой игры и так далее).
Быстрый способ
Перейдите на страницу с настройкой прямой трансляции. Сделать это можно так: кликните на аватар вашего аккаунта, который находится в верхнем правом углу страницы -> Творческая студия -> Прямые трансляции -> Начать эфир. Либо вы можете просто перейти по этой ссылке:
http://www.youtube.com/live_dashboard
. Перед вами откроется следующая страница:
Основные элементы:
- Информация о состоянии текущей трансляции;
- Плеер-превью;
- Основная информация о трансляции;
- Настройки для видеокодера (rtmp-ссылки);
- Краткое руководство;
- Чат;
- Онлайн-статистика трансляции;
- Постоянная ссылка на трансляцию.
Чтобы запустить трансляцию, вам нужно сделать следующее:
1) Заполнить поля «Название трансляции» и «Описание трансляции». Данные поля будут автоматически сохранены и будут использоваться во время повторной трансляции.
2) Выбрать категорию и ввести название игры в соответствующее поле.
3) Затем при необходимости перейдите на вкладку «Параметры». Здесь вы можете настроить ряд функций:
- Включить видеомагнитофон — ваши зрители смогут перемотать трансляцию на максимум 4 часа назад;
- Сделать запись доступной только по ссылке — по окончании трансляции ее запись будет доступна только по ссылке;
- Подстройка трансляции
- Стандартная задержка — подходит для большинства трансляций;
- Малая задержка — подходит для прямых трансляций с минимальным временем буферизации;
- Наименьшая задержка — Подходит для эфира в режиме реального времени, однако, если выбрать этот вариант, то запись видео, субтитры, а также разрешения 1440p и 4K станут недоступны.
- Задержка — вы можете выставить задержку в следующем всплывающем списке (можно выставить 30 и 60 секунд)
4) Во вкладке «Монетизация» при установке «галки» около параметра «Монетизировать за счет показа рекламы» вы можете монетизировать вашу трансляцию, однако, это увеличивает шанс того, что при нарушении авторских прав ваш канал могут заблокировать.
5) Во вкладке «Подсказки» вы можете всплывающие подсказки, которые будут появляться во время трансляции.
6) Перейдите к пункту «Настройка видеокодера». Там вы увидите «URL-адрес сервера» и «Название/ключ трансляции», которые вы должны вставить в ваш видеокодер.
Open Broadcaster Software:
Настройки (Settings) -> Трансляция (Stream) -> Сервис вещания (Stream Type): Custom -> Ссылку из поля «URL-адрес сервера» вставляйте в поле «URL» -> Текст из поля «Название/ключ трансляции» вставляйте в поле «Stream key».
XSplit Broadcaster:
Трансляция -> Добавить канал -> Custom RTMP -> Ссылку из поля «URL-адрес сервера» вставляйте в поле «RTMP URL» -> Текст из поля «Название/ключ трансляции» вставляйте в поле «Stream Name»
*Вы можете воспользоваться встроенными плагинами (Xsplit) и предустановками (OBS), но лучше использовать ручное заполнение для Youtube.
6) После этого вы должны настроить ваш видеокодер в соответствии с требованиями для трансляций на Youtube. Об требованиях вы можете прочитать в пунктах — «Настройки видеокодера, битрейт и разрешение прямой трансляции» и «Сообщения об ошибках на панели управления трансляциями». Завершив настройку видеокодера, вы можете запускать трансляцию.
7) В пункте «Поделиться», который находится внизу страницы настройки трансляции, вы можете получить постоянную ссылку на плеер вашего стима. Однако ваша трансляция также имеет адрес будущей Youtube-записи. Для этого кликните на превью-плеере правой кнопкой мыши и нажмите на «Копировать URL видео».
Важно! Сохранить можно до 12 часов эфира.

Стоит помнить, что на момент написания статьи вы не сможете разбанить пользователя, если забанили его. Пока данный функционал для нового чата не добавили.
9) Во время трансляции вы также можете создать видео с лучшим моментом. Для этого вы должны нажать на кнопку «Создать ролик с лучшими моментами» и откроется следующее меню:
Вводите время начала лучшего момента в ручную или с помощью кнопку «Get player time». Таким же образом введите время окончания. Затем выбираете тип доступа к новому видео и нажимаете на кнопку «Загрузить». Видео с лучшим моментом появится в Менеджере видео.
С данным функционалом ролики с лучшими моментами можно создавать только когда идет трансляция и тогда, когда стрим идет на постоянный адрес (то есть при использовании быстрого способа организации трансляции).
Чтобы запись ролик с лучшим моментов для запланированной трансляции, нужно сделать следующее. Для начала создайте запланированную трансляцию (об это ниже), запустите стрима в видеокодере, дождитесь, когда станет активна кнопка «Предварительный просмотр». Когда кнопка станет активна, нажмите на нее и установите галку около «Синхронизация с проигрывателем трансляций».
После этого нажмите на кнопку «Начать потоковую передачу». Как только вам понадобится записать ролик с лучшим моментом, зайдите в панель управления трансляцией, запустите превью-плеер, который у вас находится ниже, и у вас станут доступны кнопки «Начало» и «Окончание».
Нажмите на кнопку «Начало», чтобы отметить начало ролика с лучшим моментом. Для отметки окончания ролика нажмите на кнопку «Окончание». С помощью кнопку «Загрузить видео» ваше видео будет сохранено в Менеджере видео.
Запланированная трансляция
Чтобы запланировать трансляцию, нужно сделать следующее: кликните на аватар вашего аккаунта, который находится в верхнем правом углу страницы -> Творческая студия -> Прямые трансляции -> Запланировать трансляцию. Либо вы можете просто перейти по этой ссылке:
http://www.youtube.com/my_live_events
.
Стоит помнить, что в данном случае ваша трансляция будет находится по адресу Youtube-видео, который присвоит система сайта. Постоянный адрес трансляции не будет использован.
Нажмите на ссылку «Запланировать трансляцию». Перед вами откроется следующая страница:
Заполните поле «Название трансляции», затем введите время начала трансляции (вы можете выбрать время из списка или вручную изменить текущее), ввести теги, описание трансляции автоматически заполняется тем текстом, который вы указали в настройках вашего канала (
http://www.youtube.com/upload_defaults
). Описание трансляции вы можете изменить, как захотите.
Выставите тип доступа для вашей трансляции. Существует три вида доступа:
- Ограниченный доступ — вашу трансляцию может увидеть только владелец аккаунта;
- Доступ по ссылке — вашу трансляцию смогут увидеть только те пользователи, которые имеют ссылку на нее;
- Открытый доступ — вашу трансляцию видят все пользователи.
В случае необходимости зайдите во вкладку «Расширенные настройки» и измените те пункты, которые вам необходимо изменить (в этой же вкладке настраивается задержка для трансляции). После этого нажмите на кнопку «Создать мероприятие». Ваша трансляция создана и к ней присвоен адрес Youtube-видео. Следующим шагом будет настройка камер для вашего стрима. Перед вами появится следующая страница:
Загрузите значок для вашего стрима. Трансляцию могут встраивать и на другие сайты, поэтому имеет смысл подобрать картинку побольше (рекомендуется 1280×720 пикселей). Поддерживаются файлы форматов JPG, GIF, BMP и PNG размером не более 2 МБ.
Выберите один из предложенных параметров для видео-потока — одноразовый или многоразовый. При использовании одноразового потока у вас будет постоянно меняться ключ трансляции, однако, вам не нужно настраивать разрешение трансляции и частоту кадров — данные настройки будут выставляться в автоматическом режиме при получении видео-потока.
При использовании многоразового потока вы выбираете один из созданных вами ранее профилей с настройками потока (при этом необходимо указывать разрешение и частоту кадров), но ключ трансляции будет одинаковым для конкретного профиля. К примеру, вы для первой трансляции создали профиль «Тестовый поток 1» с разрешением в 720р и частотой в 30 fps и этот профиль будет иметь «стрим-ключ» key1-key1. Для второй вашей трансляции вы можете выбрать данный профиль «Тестовый поток 1» и «стрим-ключ» у вас будет одинаковым — key1-key1.
При выборе многоразового потока у вас будет отображаться специальное меню, где вы можете выбрать уже созданный раннее профиль потока или же создать новый. Не забывайте при создании потока указывать «Включить режим 60 кадров/с», если хотите, чтобы стрим был с частотой кадров 60.
После настройки профиля потока нажмите на кнопку «Сохранить изменения». Изменить настройки камеры вы можете до начала трансляции. При желании вы можете добавить несколько камер в вашей трансляции. Сделать это можно через вкладку «Добавить камеру». Полученные rtmp-ссылки (URL и ключ трансляции) вы должны вставить в ваш видеокодер.
Open Broadcaster Software:
Настройки (Settings) -> Трансляция (Stream) -> Сервис вещания (Stream Type): Custom -> Ссылку из поля «URL-адрес сервера» вставляйте в поле «URL» -> Текст из поля «Название/ключ трансляции» вставляйте в поле «Stream key».
XSplit Broadcaster:
Трансляция -> Добавить канал -> Custom RTMP -> Ссылку из поля «URL-адрес сервера» вставляйте в поле «RTMP URL» -> Текст из поля «Название/ключ трансляции» вставляйте в поле «Stream Name»
*Вы можете воспользоваться встроенными плагинами (Xsplit) и предустановками (OBS), но лучше использовать ручное заполнение для Youtube.
После этого вы должны настроить ваш видеокодер в соответствии с требованиями для трансляций на Youtube. Об требованиях вы можете прочитать в пунктах — «Настройки видеокодера, битрейт и разрешение прямой трансляции» и «Сообщения об ошибках на панели управления трансляциями».
За 15 минут до начала трансляции нажмите в вашем видеокодере на кнопку начала трансляции. Затем переходите на страницу «Панель управления трансляциями».
Красная надпись показывает, что вы еще не запустили непосредственно сам стрим у себя в программе (т.е. видеопоток к серверу трансляций не идет от вас). Подождите немного, пока сервер Youtube «поймет», что вы запустили трансляцию.
Меньше чем через минуту после запуска стрима в программе на странице «Панель управления трансляциями» у вас должна поменять цвет кнопка «Предварительный просмотр».
Нажмите на кнопку «Предварительный просмотр», когда она станет активной. Если кнопка не стала активной, перезагрузите страницу и снова подождите минуту. Если и это не помогло — значит дело в вашем интернете (или в настройках) и поток к серверу не идет.
После нажатия на кнопку «Предварительный просмотр» снова нужно немного подождать пока данная кнопка не смениться на «Начать потоковую передачу». До этого в окне предварительного просмотра, которое находиться немного ниже панели управления, вы можете посмотреть как будет выглядеть ваш стрим в эфире. В предварительном просмотреть увидеть стрим сможет только владелец канала. Чтобы стрим увидели зрители, нужно нажать на кнопку «Начать потоковую передачу».
После нажатия на кнопку «Начать потоковую передачу» система «подумает» около минуты и ваш стрим увидят ваши зрители. Чтобы выключить трансляцию, зайдите снова в «Панель управления трансляциями», нажмите на кнопку «Остановить потоковую передачу», а уже после этого останавливаете стрим в своей программе. После этого ваша трансляция встанет в очередь на конвертацию и появится в вашем списке видео как обычное видео. Стоит учесть, что по той же ссылке, по которой шла трансляция, будет доступна и запись вашего стрима.
Настройки видеокодера, битрейт и разрешение прямой трансляции
Разработчики Youtube рекомендуют использовать следующие настройки битрейта в видеокодере для трансляций.
Учтите, что для видео в формате 4K / 2160p настроить малую задержку нельзя. Для таких трансляций будет автоматически установлена стандартная задержка.
4K / 2160p (60 кадров в секунду)
- Планируя трансляцию, не забудьте поставить флажок в поле «Включить режим 60 кадров/с» на вкладке «Настройки трансляции». Если вы создали трансляцию в разделе «Начать эфир», то частота кадров и разрешение будут выбраны автоматически.
- Разрешение: 3840 x 2160
- Диапазон битрейта видеопотока: 20 000–51 000 кбит/с
4K / 2160p (30 кадров в секунду)
- Разрешение: 3840 x 2160
- Диапазон битрейта видеопотока: 13 000–34 000 кбит/с
1440p (60 кадров в секунду)
- Планируя трансляцию, не забудьте поставить флажок в поле «Включить режим 60 кадров/с» на вкладке «Настройки трансляции». Если вы создали трансляцию в разделе «Начать эфир», то частота кадров и разрешение будут выбраны автоматически.
- Разрешение: 2560 x 1440
- Диапазон битрейта видеопотока: 9000–18 000 кбит/с
1440p (30 кадров в секунду)
- Разрешение: 2560 x 1440
- Диапазон битрейта видеопотока: 6000–13 000 кбит/с
1080p (60 кадров в секунду)
- Планируя трансляцию, не забудьте поставить флажок в поле «Включить режим 60 кадров/с» на вкладке «Настройки трансляции». Если вы создали трансляцию в разделе «Начать эфир», то частота кадров и разрешение будут выбраны автоматически.
- Разрешение: 1920 x 1080
- Диапазон битрейта видеопотока: 4500–9000 кбит/с
1080p
- Разрешение: 1920 x 1080
- Диапазон битрейта видеопотока: 3000–6000 кбит/с
720p (60 кадров в секунду)
- Планируя трансляцию, не забудьте поставить флажок в поле «Включить режим 60 кадров/с» на вкладке «Настройки трансляции». Если вы создали трансляцию в разделе «Начать эфир», то частота кадров и разрешение будут выбраны автоматически.
- Разрешение: 1280 x 720
- Диапазон битрейта видеопотока: 2250–6000 кбит/с
720p
- Разрешение: 1280 x 720
- Диапазон битрейта видеопотока: 1500–4000 кбит/с
480p
- Разрешение: 854 x 480
- Диапазон битрейта видеопотока: 500–2000 кбит/с
360p
- Разрешение: 640 x 360
- Диапазон битрейта видеопотока: 400–1000 кбит/с
240p
- Разрешение: 426 x 240
- Диапазон битрейта видеопотока: 300–700 кбит/с
Настройки видеокодера
- Протокол: RTMP Streaming
- Видеокодек и профиль:
- H.264, 4.1 – не выше 1080p, не более 30 кадров/сек.
- H.264, 4.2 – 1080p, 60 кадров/сек.
- H.264, 5.0 – 1440p, 30 кадров/сек.
- H.264, 5.1 – 1440p, 60 кадров/сек.
- H.264, 5.1 – 2160p, 30 кадров/сек.
- H.264, 5.2 – 2160p, 60 кадров/сек.
- Частота кадров: до 60 кадров в секунду
- Частота ключевых кадров:
- Рекомендуемая: 2 секунды
- Максимальная: 4 секунды
- Аудиокодек: AAC или MP3
- Кодирование потока: CBR
Рекомендуемые дополнительные настройки
- Соотношение сторон пикселя: Квадрат
- Тип кадров: Прогрессивная развертка, 2 B-кадра, 1 опорный кадр
- Энтропийное кодирование: CABAC (контекстно-адаптивное двоичное арифметическое кодирование)
- Частота дискретизации аудио: 44,1 кГц
- Битрейт аудиопотока: 128 Кбит/с, стерео
Источник
Сообщения об ошибках на панели управления трансляциями
На панели управления трансляциями есть функция проверки видеопотока, передаваемого на YouTube. Ошибки отображаются рядом с индикатором состояния в верхней части панели.
Для каждой ошибки отображается метка времени. Если ошибка не устранена, она будет периодически появляться во всплывающем окне. Ошибки, отмеченные красным цветом, являются критическими и могут помешать запуску трансляции или вызвать проблемы с просмотром у зрителей. Ошибки, отмеченные желтым цветом, – средней важности и могут ухудшить качество трансляции.
Полный список ошибок приведен ниже.
Неверный формат видеопотока
Для правильной передачи данных при настройке видеокодера нужно указать формат H.264 для видео и формат AAC для аудио.
- Измените формат контейнера для видео. Текущий формат контейнера не подходит для этой конфигурации.
- Текущий кодек не поддерживается. Используйте аудиокодек AAC или MP3.
- Выберите видеокодек H.264. Текущий кодек не поддерживается.
- Выберите правильный профиль видеокодека. Текущий профиль кодека не поддерживается.
Неверный битрейт
Используйте битрейт, который указан для выбранного разрешения на странице «Настройки трансляции». Если пропускной способности недостаточно, уменьшите разрешение. Битрейты, соответствующие определенному разрешению, указаны в разделе настроек видеокодера. Чтобы обеспечить правильную перекодировку и передачу видео, следуйте инструкциям в этих сообщениях об ошибках.
- Рекомендуемый битрейт для аудиопотока составляет 128 кбит/с. Текущий битрейт выше этого значения.
- Рекомендуемый битрейт для аудиопотока составляет 128 кбит/с. Текущий битрейт ниже этого значения.
- Установите для частоты дискретизации аудио значение 44,1 кГц. В настоящее время ее значение указано неверно.
- Рекомендуемый битрейт для аудиопотока составляет X. Текущий битрейт выше этого значения.
- Рекомендуемый битрейт для аудиопотока составляет X. Текущий битрейт ниже этого значения.
Неверные настройки аудио
Видеокодер передает неверные настройки аудио. Чтобы обеспечить правильную передачу аудио, следуйте инструкциям в этих сообщениях об ошибках.
- Добавьте аудиопоток. В трансляция нет аудиопотока.
- Видеокодер не отправляет аудиоданные. В некоторых видеокодерах необходимо вручную включить аудио, установив соответствующий флажок. Стандарт YouTube требует наличия аудиопотока для всех видео.
- Добавьте только один аудиопоток. Трансляция содержит несколько аудиопотоков.
- Наличие нескольких аудиопотоков вызовет сбой трансляции. Если вы хотите добавить несколько аудиопотоков (например, для нескольких языков), попробуйте создать прямую трансляцию с несколькими камерами.
- Исправьте количество аудиоканалов. Сейчас выбрано более 2 каналов. Поддерживается только 1 или 2 канала (моно и стерео).
Неверные настройки видео
Видеокодер передает неверные настройки видео. Чтобы обеспечить правильную передачу видео, следуйте инструкциям в этих сообщениях об ошибках.
- Добавьте видеопоток. Трансляция не содержит видеопотока.
- Добавьте только один видеопоток. Трансляция содержит несколько видеопотоков.
- Видео с чересстрочной разверткой не поддерживаются.
- Видео должно иметь прогрессивную развертку. В противном случае видео будет передаваться с сильным искажением.
- Слишком высокая частота кадров. Максимальная частота: X.
- Частота кадров связана с частотой ключевых кадров. При изменении первого значения также нужно изменить и второе, чтобы интервал отправки ключевых кадров составлял 2 секунды.
Неверная частота ключевых кадров видео
Частота ключевых кадров, отправляемых видеокодером, слишком высокая или слишком низкая. Установите для отправки ключевых кадров интервал 2 секунды. При частоте 30 кадров в секунду он будет равняться 60 кадрам.
- Сейчас ключевые кадры отправляются недостаточно часто – с разрывом в ACTUAL_GOP с. Из-за этого просмотр может идти с буферизацией. Следите, чтобы интервал между ключевыми кадрами составлял не более 4 секунд. Помните: если при передаче данных возникают ошибки, размер группы изображений может быть определен неверно. Слишком низкая частота ключевых кадров может вызвать буферизацию. Текущая периодичность ключевых кадров составляет X секунд. Обратите внимание: размеры групп изображений могут определяться неправильно, если при передаче данных возникают ошибки.
- Установите для частоты ключевых кадров интервал 4 секунды или менее. Слишком низкая частота ключевых кадров может вызвать буферизацию. Текущая периодичность ключевых кадров составляет X секунд. Обратите внимание: размеры групп изображений могут определяться неправильно, если при передаче данных возникают ошибки.
- Размер группы изображений слишком мал. Это может привести к снижению качества изображения. Рекомендуемый интервал частоты ключевых кадров составляет 4 секунды. Текущая периодичность ключевых кадров составляет X секунд. Обратите внимание: размеры групп изображений могут определяться неправильно, если при передаче данных возникают ошибки.
- Некоторые видеокодеры позволяют выбрать для группы изображения тип «Открытая» (переменное значение) или «Закрытая» (фиксированное значение). Для оптимального качества перекодировки стандарт YouTube требует использования закрытой группы изображений.
Неверное соотношение сторон видео (разрешение)
Соотношение высоты и ширины должно соответствовать разрешению видео, установленному на странице «Настройки трансляции». Правильное соотношение для каждого разрешения указано в разделе настроек («ширина х высота»).
- Проверьте разрешение видео. Текущее разрешение X использовать не рекомендуется
- Измените разрешение видео. В этой конфигурации текущее разрешение X не поддерживается. Рекомендуется выбрать значение Х.
Основной и резервный потоки не совпадают
Для основного и резервного потока должны быть установлены идентичные настройки восстановления после отказа. Чтобы обеспечить совпадение основного и резервного потоков, следуйте инструкциям в этих сообщениях об ошибках.
- Установите для основного и резервного потока одинаковое разрешение. В текущей конфигурации потоки имеют разное разрешение.
- Настройте для основного и резервного потоков одинаковые видеокодеки. В текущей конфигурации для потоков используются разные кодеки.
- Настройте для основного и резервного потоков одинаковый тип развертки. В текущей конфигурации для потоков выбрана разная развертка.
- Настройте для основного и резервного потоков одинаковый профиль. В текущей конфигурации для потоков установлены разные профили.
- Настройте для основного и резервного потоков одинаковый битрейт. В текущей конфигурации для потоков установлен разный битрейт.
- Настройте для основного и резервного потоков видео одинаковую частоту кадров. В текущей конфигурации для потоков установлена разная частота кадров.
- Настройте для основного и резервного потоков видео одинаковую частоту ключевых кадров. В текущей конфигурации для потоков установлена разная частота.
- Настройте для основного и резервного потоков видео одинаковую частоту дискретизации аудио. В текущей конфигурации для потоков установлена разная частота дискретизации.
- Настройте для основного и резервного потоков должен одинаковый аудиоканал.
- Настройте для основного и резервного потоков видео одинаковые аудиокодеки. В текущей конфигурации для потоков используются разные аудиокодеки.
- Правильно настройте основной и резервный потоки видео. При сравнении потоков возникла ошибка, так как один из них имеет неправильную конфигурацию.
Источник
(с) Martti Syber (Chimera-Syber)
Последнее время в качестве хобби снимаю на видео лекции знакомого психолога. Отснятый материал монтирую и публикую на своём сайте. Месяц назад я загорелся идеей организовать круглосуточную трансляцию этих лекций на YouTube в режиме 24/7. Этакий тематический «телеканал», посвященный личностному росту.
Как сделать обычную трансляцию я знаю. А вот как сделать так, чтобы это была трансляция именно видео-файлов? Чтобы она шла 24/7, была гибкой, максимально автономной и при этом никак не зависела от моего домашнего компьютера. Это мне и предстояло выяснить.
На поиск решения ушло несколько дней. Я изучил множество форумов и различных мануалов без которых моя трансляция просто бы не получилась. И теперь, когда шалость удалась, я чувствую потребность поделиться своим решением. Так появилась эта статья.
Если коротко, то итоговое решение получилось следующим: VPS + ffmeg + bash-скрипт. Под катом я описываю проделанные шаги и рассказываю про «подводные камни», которые обнаружились при организации трансляции.
Шаг 1 – откуда будет идти трансляция?
В самом начале нужно было определиться откуда будет вестись трансляция, где будет её источник. Самое первое, что приходило в голову – с домашнего компьютера. Собрать видео в плейлист и запустить их воспроизведение в любом видеоплеере. Затем захватить изображение с экрана и транслировать его на YouTube. Но я почти сразу отмёл этот вариант т.к. для его реализации нужно держать домашний компьютер постоянно включенным, а это шум от кулеров даже ночью и увеличенное потребление электроэнергии (+100-150 кВт*ч каждый месяц). И получается, что домашним компьютером на время трансляции пользоваться будет нельзя т.к. любое шевеление мышкой будет видно в трансляции.
Дальше я стал смотреть в сторону облачных сервисов. Искал готовый сервис, куда бы можно было загрузить свои видео или, например, вставить ссылки на видео с YouTube и это бы все упаковывалось в одну нон-стоп трансляцию. Но ничего подходящего не нашел. Возможно плохо искал. Единственное что-то ± подходящее под функционал – это restream.io, сервис, который помогает вести одновременную трансляцию на несколько платформ. У них вроде можно загружать свои видео. Но этот сервис создавался совсем для других целей и они рассчитывают, что трансляция будет длиться всего пару часов. Думаю, что если через этот сервис получилось бы организовать круглосуточную трансляцию, то это бы выстрелило в десятки, а то и сотни долларов в месяц. А трансляцию все же хотелось организовать либо бесплатно, либо с минимальными финансовыми вложениями.
Стало понятно, что под трансляцию нужно или отдельное устройство или вообще отдельный компьютер. Думал в сторону чего-нибудь вроде Raspberri Pi. А чего? Кулера у него нет. Записал видео на флешку, воткнул Ethernet-кабель и пускай лежит себе где-нибудь в укромном месте, трансляцию ведёт. Вариант. Но ни самой платы, ни опыта работы с ней у меня не было, поэтому от этого варианта я тоже отказался.
В итоге я наткнулся на некое обсуждение, где обсуждали создание собственного сервера трансляции. Это было не совсем то, что я искал, но основную мысль я уловил – можно же использовать сервер! В том обсуждении предлагали использовать связку VPS + nginx + OBS. Стало понятно, что эта связка может подойти и мне. Смущало лишь то, что я никогда не администрировал сервера и мне казалось, что свой выделенный сервер – это заморочено и дорого. Решил узнать сколько будет стоить арендовать сервер в минимальной комплектации и был приятно удивлен.
Цены указаны в белорусских рублях и это просто крохи. Для понимания, 8 белорусских рублей – это где-то 3.5 доллара или 240 российских рублей. За месяц использования полноценного компьютера, который включен 24/7 и имеет быстрый доступ в Интернет. Почему-то это открытие стало очень радостным для меня и я несколько дней ходил жутко довольный словно ребенок, который открыл для себя космические ракеты 
К слову, я воспользовался предложением первого же сайта, который выдал мне Google по запросу «аренда VPS». Возможно есть ещё более бюджетные решения, но эта цена меня устроила и дальше я не искал.
При создании сервера можно выбрать операционную систему, под управлением которой он будет работать. На любой из перечисленных систем можно организовать трансляцию и делать выбор стоит исходя из ваших предпочтений и финансовых возможностей (за сервер с Windows просят дополнительную плату). Я выбрал CentOS. Просто потому что у меня раньше был небольшой опыт работы с ней.
Шаг 2 – настройка сервера
Первое, что нужно после создания сервера – это подключиться к нему по SSH. По-началу я использовал PuTTy, но потом стал использовать приложение Secure Shell App, которое запускается в Google Chrome. Так мне оказалось удобнее.
Дальше я изменил имя хоста, настроил синхронизацию времени на сервере, обновил систему, возился с iptables… и сделал еще куча вещей, но не потому что это было необходимо. Просто мне интересно было настраивать сервер и у меня это получалось. Люблю когда получается 
А вот те шаги, которые нужно сделать:
- Подключить репозиторий EPEL.
- Поднять FTP-сервер (я выбрал vsftp).
- Установить ffmpeg.
Детально команды приводить не буду, эта инструкция скорее концептуальная, чтобы донести общий план действий. Если у вас по какому-либо из шагов возникнут затруднения, то они быстро решаются запросом в поисковике вида «CentOS подключить EPEL» или «CentOS установка FTP-сервера». И по первым ссылкам вы сможете найти детальные пошаговые инструкции.
Итак, как я уже писал раньше, мне нужна была связка VPS + nginx + OBS. VPS – готово. Но вот по остальным пунктам стали возникать вопросы. OBS – это программа для проведения трансляций, Open Broadcaster Software. И оно работает только с потоками т.е. например, берет изображение с веб-камеры и его транслирует. Или запись экрана. Или уже идущую трансляцию перенаправляет на другой сайт. А у меня нет потока, у меня есть только набор видео-файлов, который нужно сделать потоком.
Стал копать в эту сторону и наткнулся на ffmpeg. FFmpeg – это набор свободных библиотек с открытым исходным кодом, которые позволяют записывать, конвертировать и передавать цифровые аудио- и видеозаписи в различных форматах.
И я очень удивился сколько всего ffmpeg может. Хочешь – вытянет звук из видео. Хочешь – вырежет фрагмент видео без перекодирования. Хочешь – сконвертирует из одного формата в другой. И много-много чего ещё. Вплоть до того, что ему можно указать файл, он его преобразует в поток и сам передаст на YouTube. Всё, цепочка собрана. Осталось только доработать нюансы.
Шаг 3 – настройка трансляции
Создаём трансляцию на YouTube. На этом этапе нам нужна только ссылка и ключ трансляции. На скриншоте ниже они выделены красным.
Далее загружаем на сервер видео-файлы, которые планируем транслировать. Собственно, FTP только для этого этапа и нужен. Если у вас есть другой удобный способ загрузки файлов на сервер, то FTP-сервер можно не поднимать.
Передаём поток на YouTube. Для старта вещания необходимо запустить ffmpeg c несколькими атрибутами. Вот так выглядит самая короткая команда, которая у меня получилась:
ffmpeg -re -i lecture1.mp4 -f flv rtmp://a.rtmp.youtube.com/live2/%КЛЮЧ_ТРАНСЛЯЦИИ%
Расшифровка атрибутов
-re – указывает, что файл необходимо конвертировать в поток.
-i – указывает, какой файл необходимо воспроизводить. Важно, чтобы команда запускалась из того же каталога, где расположен сам видео-файл. Иначе стоит указывать абсолютную ссылку на файл, вроде /usr/media/lecture1.mp4.
-f – задает формат выходного файла. В моём случае получается, что ffmpeg «на лету» конвертирует мой файл из mp4 в flv.
И в конце указываем данные, которые мы взяли на YouTube на странице настройки трансляции т.е. адрес, на который нужно передавать данные, и ключ трансляции, чтобы трансляция отобразилась именно на вашем канале.
Если вы всё сделали правильно, то после запуска этой команды, YouTube увидит передаваемый поток. Для запуска трансляции вам останется нажать кнопку «Начать трансляцию» в самом YouTube.
Шаг 4 – добавляем автономность
Поздравляю! Теперь вы знаете как запустить трансляцию из видео-файла. Но этого недостаточно для круглосуточной трансляции. Важно, чтобы после окончания воспроизведения первого видео, сразу же запускалось следующее, а когда покажутся все видео, воспроизведение начиналось сначала.
Я придумал следующий вариант: создать .sh-файл, в котором прописал по команде на каждый видео-файл и в самом конце указал команду на повторный запуск этого же скрипта. Получилась этакая рекурсия:
Команда 1... (запуск трансляции файла lecture1.mp4)
Команда 2... (запуск трансляции файла lecture2.mp4)
Команда 3... (запуск трансляции файла lecture3.mp4)
bash start.sh
И, да, это сработало. Я, довольный собой, запустил тестовую трансляцию и пошёл спать.
Утром меня ожидал неприятный сюрприз. Оказалось, что трансляция шла всего пару минут и закончилась практически сразу как я выключил свой компьютер. Расследование показало, что команды, запущенные таким образом, выполняются пока пользователь авторизован на сервере. Как только я отключился, выполнение запущенных мной команд прервалось. Чтобы такого не происходило, достаточно перед командой bash дописать команду nohup. Это позволит запущенному процессу выполняться независимо от вашего присутствия.
Итоговая минимальная версия скрипта выглядит так:
ffmpeg -re -i lecture1.mp4 -f flv rtmp://a.rtmp.youtube.com/live2/%КЛЮЧ_ТРАНСЛЯЦИИ%
ffmpeg -re -i lecture2.mp4 -f flv rtmp://a.rtmp.youtube.com/live2/%КЛЮЧ_ТРАНСЛЯЦИИ%
ffmpeg -re -i lecture3.mp4 -f flv rtmp://a.rtmp.youtube.com/live2/%КЛЮЧ_ТРАНСЛЯЦИИ%
nohup bash start.sh $
Где start.sh – это файл, в котором записан этот скрипт. И этот файл должен располагаться в одном каталоге с видео-файлами.
Добавление знака доллара в конце позволяет запускать процесс в фоновом режиме, чтобы можно было дальше пользоваться консолью не прерывая вещание.
Из бонусов получились следующие плюшки:
- Можно вручную переключать воспроизведение файлов. Для этого нужно «убить» выполняющийся в текущий момент процесс ffmpeg. После этого автоматически запустится воспроизведение следующего файла из списка.
- Новые видео можно добавлять в трансляцию без остановки вещания. Просто загружаете видео на сервер, дописываете в скрипте команду на запуск этого файла, сохраняете. И всё. На следующем круге воспроизведения новый файл уже будет транслироваться наравне со старыми файлами.
Шаг 5 – донастраиваем ffmpeg
На этом, в принципе, можно было остановиться. Но мне хотелось сделать трансляцию чуть более дружелюбной для зрителей.
Допустим, человек зашел на трансляцию, начал смотреть, ему понравилось и он захотел посмотреть эту лекцию с начала, а трансляция не предусматривает перемотку. Для просмотра лекции с начала человеку нужно будет перейти на мой сайт и получить запись интересующей лекции. А как понять какая лекция его интересует? На сайте уже 16 лекций и каждую неделю их становится только больше. Думаю, что даже я, кто снимал и монтировал все эти лекции, не смогу по случайному фрагменту определить какая это лекция. Поэтому нужно, чтобы каждая лекция была как-то обозначена.
Вариант добавить надписи в исходные видео-файлы в программе для монтажа меня не устраивал. Нужно было сделать так, чтобы использовались оригинальные файлы. Чтобы поддержка трансляции требовала от меня как можно меньше телодвижений.
Оказалось, что и в этом мне сможет помочь ffmpeg. У него есть специальный атрибут -vf, который позволяет наносить текст поверх видео. Чтобы добавить текст на видео, необходимо в команду добавить следующий фрагмент:
-vf drawtext="fontfile=OpenSans.ttf:text='Лекция 13: Психология эмоций. Как создавать радость?':fontsize=26:fontcolor=white:borderw=1:bordercolor=black:x=40:y=670"
Расшифровка параметров
fontfile= – ссылка на файл шрифта. Без этого надпись на видео не добавляется. Проще всего файл шрифта положить в одну папку с видео. Или нужно будет указать полный путь к файлу.
text= – собственно, сам текст, который необходимо разместить поверх видео.
fontsize= – размер шрифта в пикселях.
fontcolor= – цвет шрифта.
borderw= – толщина контура вокруг текста в пикселях (у меня белый текст с черным контуром толщиной в 1 пиксель).
bordercolor= – цвет контура.
x= и y= – координаты текста. Точка 0;0 находится в левом верхнем углу. У меня координаты подобраны таким образом, чтобы текст размещался в левом нижнем углу при разрешении видео 1280х720 пикселей.
Выглядит это вот так:
Шаг 6 – определяемся с качеством трансляции
Всё, трансляция готова. FFmpeg вещает, файлы воспроизводятся, моё присутствие для трансляции не нужно. Даже каждая лекция подписана. Вроде всё.
Но всплыл ещё один нюанс – я выбрал минимальную конфигурацию сервера и он не вытягивал трансляцию. Конфигурация сервера: 1 ядро (вроде 2.2 ГГц), 1 гигабайт оперативной памяти, SSD на 25 Гб. Оперативной памяти хватало, а вот процессор практически наглухо уходил в загрузку на 100% (а временами даже в 102-103% 
Можно было просто взять более дорогую конфигурацию с двумя ядрами, благо, что с облачными технологиями смена конфигурации сервера происходит нажатием пары кнопок. Но мне хотелось уместиться на мощностях минимальной конфигурации. Стал изучать документацию ffmpeg и да, там также есть настройки, которые позволяют регулировать нагрузку на систему.
Высокое качество изображения может быть достигнуто двумя путями: либо высокой нагрузкой на процессор, либо большим исходящим трафиком. Получается, чем больше нагрузку на себя может взять процессор, тем меньше нужна будет пропускная способность канала. Или можно сильно не нагружать процессор, но тогда нужен будет широкий канал с большим запасом по трафику. Если же есть ограничения и по процессору, и по размеру исходящего канала/трафику, то придется снижать качество картинки, чтобы трансляция шла без рывков.
Моему серверу доступен канал шириной в 10 Мбит/с. Такой ширины прям с запасом. Но есть ограничение по трафику – 1 ТБ в месяц. Поэтому, чтобы уложиться в ограничения по трафику, мой исходящий поток не должен превышать ~300 Кб в секунду т.е. битрейт исходящего потока должен быть не более 2,5 Мбит/с. YouTube, кстати, как раз и рекомендует вести трансляции в таком битрейте.
Для регуляции нагрузки на систему ffmpeg использует разные подходы. Хорошо об этом расписано здесь. Я в итоге использовал два атрибута: -crf и -preset.
Constant Rate Factor (CRF) – это коэффициент, благодаря которому можно регулировать качество картинки. CRF может иметь значения от 0 до 51, где 0 – качество исходного файла, 51 – наихудшее возможное качество. Рекомендуется использовать значения от 17 до 28, по умолчанию стоит 23. При коэффициенте 17 видео визуально будет идентично исходному, но технически таким являться не будет. Также в документации указано, что размер итогового видео в зависимости от указанного CRF меняется экспоненциально т.е. увеличение коэффициента на 6 пунктов приведет к удвоению битрейта исходящего видео.
Если с помощью CRF можно подобрать «вес» исходящей картинки, то с помощью пресетов (-preset) можно определить насколько сильно будет загружен процессор. Параметры у этого атрибута есть следующие:
ultrafastsuperfastveryfastfasterfastmedium– значение по умолчаниюslowslowerveryslow
Чем «быстрее» параметр указан, тем выше будет нагрузка на процессор.
Я сначала подобрал пресет, который был в принципе «по зубам» моему процессору, а затем более тонко подобрал нагрузку с помощью CRF. В моём случае подошел пресет fast, а для crf я остановился на значении 24.
Заключение
На этом всё. Итоговая команда для запуска трансляции у меня получилась такой:
ffmpeg -re -i lecture1.mp4 -vf drawtext="fontfile=OpenSans.ttf:text='Лекция 1: Жонглирование картинами мира':fontsize=26:fontcolor=white:borderw=1:bordercolor=black:x=40:y=670" -c:v libx264 -preset fast -crf 24 -g 3 -f flv rtmp://a.rtmp.youtube.com/live2/%КЛЮЧ_ТРАНСЛЯЦИИ%
Здесь осталось только два неописанных момента:
1) -c:v libx264 – указание конкретного кодека для работы с исходным файлом.
2) -g 3 – явное указание количества ключевых кадров. В этом случае указано, что каждый третий кадр должен быть ключевым. Стандартное значение то ли на 5, то ли на 8, но YouTube ругается, просит не менее 3.
Какого качества получилась трансляция можно посмотреть здесь.
Нагрузка на сервер получилась следующая:
Исходя из данных мониторинга, видно, что нагрузка на процессор колеблется в рамках от 70% до 95% и за неделю трансляция ни разу не уперлась в 100%. Значит, с такими настройками процессора хватает.
По загрузке диска могу сказать, что он почти не нагружен и для трансляции вполне должно хватить и обычного HDD.
А вот количество исходящего трафика меня беспокоит. Получается, что мой исходящий поток колеблется от 450 до 650 Кбайт в секунду. За месяц это составит порядка 1,8 терабайт. Возможно придется докупать трафик или все же перейти на конфигурацию с двумя ядрами т.к. качество картинки не хотелось бы снижать.
***
Как итог, скажу, что настройка такой трансляции с нуля занимает порядка 1-2 часов. Причем большую часть времени займёт загрузка видео на сервер.
Как маркетинговый инструмент запуск такой трансляции себя не оправдал. Возможно, если накрутить просмотры, чтобы алгоритмы YouTube подхватили эту трансляцию и стали активно показывать её в рекомендациях, тогда что-то бы и получилось. В моём же случае за 16 дней непрерывной трансляции её посмотрели 58 раз.
Ну ничего. Трансляция гармонично вписалась на главной странице моего сайта. Получилась этакая возможность быстро составить своё мнение о лекторе и самих лекциях.
И ещё один момент. Важно, чтобы трансляция не нарушала ничьих авторских прав иначе её заблокируют. Я за свою трансляцию спокоен т.к. музыкальные вставки я специально выбирал со свободным использованием, а автор контента сидит за соседним компьютером и весьма не против того, чтобы я использовал её контент 
Но если у вас в трансляции где-то фоном играет радио, или вы при монтаже использовали любимый трек, или взяли видеоряд из популярного музыкального клипа, сериала или фильма – тогда ваша трансляция в зоне риска. Также важно, чтобы трансляция несла хотя бы минимальную смысловую нагрузку, иначе её могут заблокировать как спамерскую.
***
На этом у меня всё. Надеюсь этот мануал сослужит кому-нибудь хорошую службу. Ну а если вам есть что добавить – пишите, с удовольствием почитаю дополнения и уточнения к статье.
Что такое стрим на Ютубе
Стрим — это непрерывная подача видео- и аудио данных в онлайн-режиме от провайдера к пользователю. Фактически это полноценный прямой эфир, который похож телевизионные трансляции. Разница только в том, что стрим на Ютубе проводят через интернет. Стримы бывают двух видов:
Для YouTube-блогеров
Лучший курс — обучение блогингу на YouTube c 0 за 3 месяца. От создания видео и монтажа до продвижения канала. Продюсирование каналов.
Если у вас уже есть канал, прокачайте его подписчиками, лайками и просмотрами с помощью TapLike
- записанные заранее;
- живые трансляции в режиме реального времени.
Для просмотра видеопродукта на любых гаджетах нет необходимости в установке дополнительных приложений или драйверов — достаточно наличия Youtube. На видеоролике в нижней части экрана отображается «Эфир» или «В эфире» — это и есть стрим.
Требования для проведения трансляций
Прямая трансляция на Ютубе состоит из определённых процессов:
- съёмка;
- обработка;
- кодирование;
- отправка;
- воспроизведение.
Разработчиками приложения установлены общие правила и технические рекомендации для проведения стримов.
Общие правила:
- Канал должен иметь не менее 1000 подписчиков. Но, данное ограничение не действует на стримы, проводимые с помощью видеодекодера или веб-камеры.
- Подлинность ютуб канала должна быть подтверждена. Это можно сделать с помощью подтверждения телефонного номера.
- В течение последних 90 дней к каналу не были применены ограничения, в том числе и для осуществления трансляций.
- Должна быть активирована функция проведения стримов. Если её нет — нужно подключить, и, желательно, это сделать за сутки до начала трансляций.
Технические рекомендации поясняют нюансы проведения трансляций через Xsplit Broadcaster (или OBS), на относительно мощных компьютерах и с помощью мобильных устройств.
На заметку! Рекомендации рассмотрены на примере компьютеров с Windows. Для MacOS требования аналогичны.
Через Xsplit:
- Наличие процессора не ниже Intel Core i3.
- Оперативная память — от 4 ГБ.
- Наличие поддержки 3D-ускорения.
- Наличие ОС Windows 7 или Windows XP SP3.
- Скорость интернета — не менее 3 Мб/сек.
Важно! Трансляции через Xsplit получаются в очень низком качестве.
Более мощный компьютер:
- Наличие процессора Intel Core i7.
- Оперативная память — 8 ГБ и современная видеокарта.
- Скорость интернета — не менее 3 Мб/сек.
На мобильных устройствах:
- Бесперебойный стабильный интернет.
- Полная зарядка аккумулятора.
- Оперативная память — не ниже 4 ГБ.
- Качественные аудио- и видео характеристики устройства.
Как активировать функцию проведения стримов
Для всех мобильных устройств — войдите в приложение YouTube, нажмите на значок «+» в нижней части экрана и дальше делайте всё по подсказкам на экране.
Для компьютеров — войдите в раздел «Настройки» на своём канале и кликните на строку «Статус канала и доступные функции».
Для проведения трансляций должны быть активированы Функции, для доступа к которым нужно подтвердить номер телефона. Подтвердите номер, зайдите в «Расширенные настройки» и по подсказкам активируйте нужный функционал.
Завершение активации, которая осуществляется в течение суток, можно проверить нажатием кнопки «Включены» в разделе «Доступность функций».
Пошаговое руководство настройки, запуска и ведения прямых трансляций
Вести прямые трансляции на Ютубе можно с помощью компьютеров с ОС Windows, MacOS и мобильных устройств на Android и iOS.
Общие рекомендации для настройки
Сеть. Учитывайте общий битрейт и пропускную способность при загрузке. Рекомендуемый резерв — 20%. Например, минимальная скорость интернета, необходимая для запуска стрима, составляет 3 мегабита в секунду. Соответственно, для нормальной бесперебойной передачи данных битрейт должен быть не менее 3,6.
Видеокодер. Если вы используете видеокодер — настройте его заранее, примерно за 2 часа до трансляции. Для проверки качества трансляции подключите его за 15 минут до начала эфира и убедитесь в корректном воспроизведении видео на панели управления трансляциями.
Веб-камера. Проверьте необходимые базовые настройки до начала трансляции.
На компьютере с ОС Windows
Проверьте, включена ли функция ведения стримов на вашем канале. Обязательно наличие браузеров последних версий — например, Chrome 60 и выше или Firefox 53 и выше. И, желательна версия Windows не ниже 7.
Если функция активирована, и это отображается на сайте — можно приступать к следующим настройкам.
Кликните на кнопку с изображением в верхнем левом углу трёх горизонтальных линий.
В открывшемся окне войдите в «Настройки».
Нажмите на значок с изображением камеры в правом верхнем углу.
В открывшемся окне кликните на «Начать трансляцию».
В открывшемся окне выбирайте нужный режим. Можно создать трансляцию с отсрочкой при помощи установки таймера или начать в режиме онлайн.
После выбора режима система выдаст пошаговую инструкцию с уточнениями — знаете ли вы правила трансляций, активна ли функция для их проведения и запросит название, описание, настройки камеры и микрофона. После этого вы вернётесь снова в окно с выбором режима, где нужно кликнуть на «Выбрать». После этого вы выходите прямой эфир.
Важно! Если вы активировали функцию проведения стримов меньше суток назад — скорее всего, провести трансляцию не получится, придётся подождать.
На компьютере MacOS
Настройка и проведение стримов на MacOS идентичны для ОС Windows, отличия ощутимы только в интерфейсах.
Пошаговый алгоритм:
- Войдите в свой аккаунт YouTube и кликните «Мой канал».
- Нажмите на значок с изображением камеры в верхнем правом углу и «Создать».
- Кликните на «Начать трансляцию».
- В разделе меню слева введите название, описание и параметры доступа.
- Перепроверьте настройки — камеру и микрофон.
- Нажмите «Начать эфир».
- Для завершения стрима нажмите в нижней части страницы на «Завершить трансляцию».
На Андроиде
Войдите в свой аккаунт YouTube и нажмите на круглую кнопку в верхнем правом углу.
Кликните на строку «Мой канал» в открывшемся окне настроек.
Нажмите на значок «+» в нижней части экрана.
На появившейся панели нажмите на строку «Начать трансляцию».
Для завершения нужно нажать на соответствующую кнопку в нижней части экрана для завершения.
Важно! Перед началом проведения стрима проверьте настройки смартфона — корректность работы камеры, микрофона и т.д. Для лучшего качества видео рекомендуется воспользоваться основной камерой, которая расположена на задней панели телефона. Фронтальная камера не очень подходит из-за некачественного воспроизведения видео.
На iOS
Алгоритм идентичен проведению стримов на Ютубе для Android.
- Войдите в свой профиль на Ютубе.
- Откройте свой канал и нажмите на «+» в нижней части экрана.
- В появившейся вкладке кликните на «Начать трансляцию».
- Для завершения нажмите кнопку «Конец».
Как продвигать прямые эфиры
Для того чтобы о вашем стриме узнало как можно больше пользователей, необходимо предусмотреть меры по продвижению канала и конкретного эфира.
- Сделайте рекламный ролик предстоящего стрима и запустите платную рекламу на Ютубе.
- Свяжите свой канал с аккаунтами в социальных сетях и делитесь там информацией о предстоящей трансляции.
- Закажите рекламу предстоящего эфира на сторонних ресурсах — у блогеров в социальных сетях и на сайтах.
- Наращивайте подписчиков канала и делайте анонсы предстоящих эфиров. Подписчики увидят эту информацию у себя в рекомендациях.
Как монетизировать стримы
Для стримов на Ютубе предусмотрено три варианта монетизации:
- реклама;
- суперчат;
- спонсорство;
- YouTube Premium
Реклама — это рекламные видеоролики, которые видят зрители стрима в начале, середине или в конце трансляции. Рекламодателями могут быть совершеннолетние пользователи или несовершеннолетние с согласия опекуна.
Суперчат — платная услуга, с помощью которой пользователи имеют возможность размещения во время трансляции анимированных надписей, стикеров и т.д. Актуально для совершеннолетних зрителей и поддерживается не во всех регионах.
Спонсорство — подписчики канала активируют эту услугу и регулярно перечисляют вам деньги взамен на разные бонусы. Доступно совершеннолетним пользователям, у которых на канале не менее 1000 подписчиков.
YouTube Premium — получение денег за просмотр контента Premuim. Это платная подписка, и доход будет получен от таких же Premium подписчиков при участии в ваших стримах.
Примечание. Например, как выглядит реклама в стримах. Она может отображаться в нижнем правом углу экрана.
Либо несколько рекламных роликов подряд будут видны на весь экран. Рекламу можно вставить в начале трансляции, в середине и в конце.
Настройка рекламы осуществляется согласно разным тонкостям таргетинга — нужно выбирать целевую аудиторию с указанием региона, пола, возраста, интересов и т.д.
На заметку! YouTube Premium — это не только монетизация, но и возможность смотреть стримы других пользователей и видеоролики без рекламы.
Как модерировать чат
Модерировать стрим можно перед началом, во время проведения и после завершения.
Перед началом:
- Назначьте модераторов, которые будет следить за комментариями во время стрима.
- Создайте фильтры неприемлемых для вас слов — они будут автоматически удаляться из комментариев.
- В настройках можно ограничить частоту отправки сообщений либо совсем закрыть комментарии.
Во время проведения:
Вы либо модератор может удалять комментарии в чате во время проведения стрима. Кроме того, можно ограничивать действия или блокировать пользователей.
После проведения:
Аналогично модерации во время проведения — можно удалять комментарии и блокировать пользователей.
Ограничения на прямые трансляции
Основные ограничения для проведения стримов на YouTube:
- Для трансляций с помощью мобильных устройств канал должен иметь не менее 1000 подписчиков.
- Ваш стрим нарушает авторские права.
- Вы превысили дневной лимит проведения трансляций.
- Контент для детей или несовершеннолетних — ограничения часто обновляются. Например, в стримах для детей недоступны суперчаты и комментарии, для несовершеннолетних — на трансляции должен присутствовать взрослый опекун или родитель.
- Вы ограничены в создании любого контента на Ютубе из-за нарушения правил в отношении контента, подходящего для монетизации, либо ограничены в размещении продакт-плейсмента и прямой рекламы.
Как вести прямую трансляцию с камеры GoPro на YouTube
Для трансляции с камеры GoPro нужно установить приложение GoPro App. Аккаунт YouTube должен быть привязан к Facebook.
Пошаговый алгоритм:
- Нужно зайти в приложение GoPro App.
- В приложении и нажмите на строку «live».
- Нажмите на значок «Facebook» и выберите «YouTube».
- Войдите в «Set Up Live».
- Пройдите авторизацию.
- Подтвердите соединение с интернетом.
- Настройте разрешение камеры и другие базовые функции.
- Нажмите «Go Live».
Видеообзор: https://youtu.be/Hrgbis-tZHw
Шаг 1 — Включить функцию прямых трансляций
Для этого заходим: Творческая студия → Настройки → Канал → Доступность функций → Статус и функции → Прямые трансляции.
Важно! Проводить прямые трансляции могут только авторы, набравшие тысячу подписчиков.
Шаг 2 — Придумать тему эфира
Каким бы мастером импровизации вы не были, к эфиру нужно готовиться. Общение со зрителями пройдет интереснее и проще, если будет задана тема. Так вы сможете набросать себе заготовок ответов и полезной информации. И зрители придут более заинтересованные, а не просто зеваки.
Шаг 3 — Настроить трансляцию на YouTube-канале
Вариант 1 — трансляция с телефона
Идеальный вариант для любителей «быстро и просто».
Все, что тут нужно:
— зайти с телефона в приложение YouTube;
— разрешить доступ к микрофону, камере и карте памяти;
— нажать “Начать трансляцию”.
Но! Будьте добры обеспечить стабильную картинку и звук.
Зафиксируйте телефон любым доступным для вас способом. Лучше всего установить его на штатив.
Включите в телефоне «Режим полета», чтобы избежать лишних звуков от уведомлений и звонков во время эфира.
Можно стримить и с обычной гарнитурой для телефона. Но лучше бы прикупить беспроводной петличный микрофон. Например, Comica — хороший по качеству и недорогой по цене.
Вариант 2 — трансляция с ноутбука
Чтобы создать трансляцию с ноутбука заходим в Творческую студию, нажимаем на кнопку «Создать» и выбираем «Начать трансляцию».
Далее пишем название и описание трансляции, выбираем тип доступа. Если нужно, трансляцию можно запланировать на определенную дату и время.
В разделе «Оборудование» выбираем камеру и микрофон ноутбука.
В Расширенных настройках тоже много интересного:
* Чат
В режиме автоматического модерирования в комментариях нельзя будет указывать URL-адреса и использовать специальные символы и HTML-теги.
* Другие настройки
Решите, можно ли будет встраивать трансляцию и при желании включите уведомления для подписчиков.
* Запись
Если трансляция длится более восьми часов, она может не сохраниться, поэтому лучше записать ее на компьютер.
* Цифровой видеорекордер
Включите эту функцию, чтобы зрители могли приостанавливать просмотр и возвращаться к интересным моментам трансляции. При частоте 30 кадров в секунду вернуться можно на четыре часа назад, а при частоте 60 кадров в секунду — на два.
* Задержка
Трансляцию можно вести с задержкой в 30 или 60 секунд. Даже если вы не настроите этот параметр, отставание видео от потока может составлять до 15 секунд.
* Рекомендованный контент
Если вы хотите рассказать о трансляции своим подписчикам, воспользуйтесь этой функцией.
Нажимаем далее и улыбаемся, потому что камера автоматически создаст значок трансляции.
Когда будете готовы, нажимаете «Запустить прямой эфир».
Во время стрима будет доступен чат, вы сможете видеть время записи и состояние микрофона.
Важно! До начала эфира проведите тестовую трансляцию с доступом по ссылке.
После того, как вы нажмете «Завершить эфир» запись сохраниться в Менеджере видео.
Важно! Автоматически сохраняются только эфиры длительностью менее 12 часов.
Больше деталей в этой статье Справки.
Вариант 3 — трансляция через OBS
Скачиваем OBS Studio на официальном сайте https://obsproject.com/ru.
Устанавливайте последнюю версию программы. В ней больше функционала, чем в классической версии.
Создаем сцену (то, что будут видеть зрители) и добавляем источники (окна, в которых будут отображаться веб-камера, интерфейс игры, текст, изображения и прочее). Источники можно сделать разных размеров и выстроить в удобном для вас порядке.
Настраиваем трансляцию в Творческой студии. Копируем URL потока для вещания. Далее переходим на вкладку «Вещание» OBS Studio и вставляем его в строку «Ключ потока».
В OBS много разных функций и возможностей по созданию красивой картинки для эфиров. До конца их все еще не изучила. Как разберусь, обязательно напишу отдельную статью.
Какой бы вариант настройки прямой трансляции вы не выбрали, будет удобнее проводить эфир с двумя мониторами и модератором чата.
P.S. Вопросы, пожелания по темам и найденные опечатки, как всегда, пишите в комментариях.🙂









































