liveBroadcast теперь содержит свойство, которое идентифицирует статус прямой трансляции как «сделанные для детей». Условия обслуживания API YouTube и Политики разработчиков также были обновлены 10 января 2020 года. Для получения дополнительной информации см. историю изменений для API-сервиса YouTube Live Streaming и Условия обслуживания API YouTube . Ресурс liveBroadcast представляет собой событие, которое будет транслироваться в прямом эфире на YouTube.
Методы
API поддерживает следующие методы для ресурсов liveBroadcasts :
- list
- Возвращает список трансляций YouTube, соответствующих параметрам запроса API. Попробуйте сейчас .
- insert
- Создает трансляцию. Попробуйте сейчас .
- update
- Обновляет трансляцию. Например, вы можете изменить настройки трансляции, определенные в объекте
contentDetailsресурсаliveBroadcast. Попробуйте сейчас . - delete
- Удаляет трансляцию. Попробуйте сейчас .
- bind
- Привязывает трансляцию YouTube к потоку или удаляет существующую привязку между трансляцией и потоком. Трансляция может быть привязана только к одному видеопотоку, хотя видеопоток может быть привязан к нескольким трансляциям. Попробуйте сейчас .
- transition
- Изменяет статус прямой трансляции YouTube и инициирует все процессы, связанные с новым статусом. Например, при переводе статуса трансляции в
testing, YouTube начинает передавать видео в поток монитора этой трансляции. Перед вызовом этого метода следует подтвердить, что значение свойстваstatus.streamStatusдля потока, привязанного к вашей трансляции, равноactive. Попробуйте сейчас . - cuepoint
- Вставляет контрольную точку в прямую трансляцию. Контрольная точка может вызвать рекламную паузу.
Представление ресурсов
Следующая структура JSON показывает формат ресурса liveBroadcasts :
{
"kind": "youtube#liveBroadcast",
"etag": etag,
"id": string,
"snippet": {
"publishedAt": datetime,
"channelId": string,
"title": string,
"description": string,
"thumbnails": {
(key): {
"url": string,
"width": unsigned integer,
"height": unsigned integer
}
},
"scheduledStartTime": datetime,
"scheduledEndTime": datetime,
"actualStartTime": datetime,
"actualEndTime": datetime,
"isDefaultBroadcast": boolean,
"liveChatId": string
},
"status": {
"lifeCycleStatus": string,
"privacyStatus": string,
"recordingStatus": string,
"madeForKids": string,
"selfDeclaredMadeForKids": string,
},
"contentDetails": {
"boundStreamId": string,
"boundStreamLastUpdateTimeMs": datetime,
"monitorStream": {
"enableMonitorStream": boolean,
"broadcastStreamDelayMs": unsigned integer,
"embedHtml": string
},
"enableEmbed": boolean,
"enableDvr": boolean,
"recordFromStart": boolean,
"enableClosedCaptions": boolean,
"closedCaptionsType": string,
"projection": string,
"enableLowLatency": boolean,
"latencyPreference": boolean,
"enableAutoStart": boolean,
"enableAutoStop": boolean
},
"statistics": {
"totalChatCount": unsigned long
},
"monetizationDetails": {
"cuepointSchedule": {
"enabled": boolean,
"pauseAdsUntil": datetime,
"scheduleStrategy": string,
"repeatIntervalSecs": unsigned integer,
}
}
}
}Характеристики
В следующей таблице определены свойства, которые отображаются в этом ресурсе:
| Характеристики | |
|---|---|
kind | stringОпределяет тип ресурса API. Значение будет youtube#liveBroadcast . |
etag | etagEtag этого ресурса. |
id | stringИдентификатор, который YouTube назначает для уникальной идентификации трансляции. |
snippet | objectОбъект snippet содержит основные сведения о событии, включая его название, описание, время начала и время окончания. |
snippet. publishedAt | datetimeДата и время добавления трансляции в расписание прямых трансляций YouTube. Значение указывается в формате ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ ). |
snippet. channelId | stringИдентификатор, который YouTube использует для уникальной идентификации канала, публикующего трансляцию. |
snippet. title | stringНазвание трансляции. Обратите внимание, что трансляция представляет собой ровно одно видео YouTube. Вы можете задать это поле, изменив ресурс трансляции или задав поле title соответствующего видеоресурса. |
snippet. description | stringОписание трансляции. Как и в случае с title , вы можете задать это поле, изменив ресурс трансляции или задав поле description соответствующего видеоресурса. |
snippet. thumbnails | objectКарта миниатюрных изображений, связанных с трансляцией. Для каждого вложенного объекта в этом объекте ключом является имя миниатюрного изображения, а значением — объект, содержащий другую информацию о миниатюре. |
snippet.thumbnails. (key) | objectДопустимые значения ключа:
|
snippet.thumbnails.(key). url | stringURL-адрес изображения. |
snippet.thumbnails.(key). width | unsigned integerШирина изображения. |
snippet.thumbnails.(key). height | unsigned integerВысота изображения. |
snippet. scheduledStartTime | datetimeДата и время, на которые запланировано начало трансляции. Значение указывается в формате ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ ). Creator Studio поддерживает возможность создания трансляции без планирования времени начала. В этом случае трансляция начинается всякий раз, когда владелец канала начинает потоковую передачу. Для этих трансляций значение datetime соответствует нулевому времени эпохи Unix, и это значение нельзя изменить с помощью API или в Creator Studio. |
snippet. scheduledEndTime | datetimeДата и время, на которые запланировано окончание трансляции. Значение указывается в формате ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ ). Если ресурс liveBroadcast не указывает значение для этого свойства, то трансляция запланирована на неопределенное время. Аналогично, если вы не укажете значение для этого свойства, то YouTube будет рассматривать трансляцию так, как будто она будет продолжаться неопределенное время. |
snippet. actualStartTime | datetimeДата и время фактического начала трансляции. Эта информация доступна только после того, как состояние трансляции станет live . Значение указывается в формате ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ ). |
snippet. actualEndTime | datetimeДата и время фактического окончания трансляции. Эта информация доступна только после complete трансляции. Значение указывается в формате ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ ). |
snippet. isDefaultBroadcast | boolean Это свойство будет упразднено 1 сентября 2020 года или позже. В это время YouTube прекратит создавать поток по умолчанию и трансляцию по умолчанию, когда канал будет включен для прямой трансляции. Подробнее см. в объявлении об упразднении . Это свойство указывает, является ли данная трансляция трансляцией по умолчанию.Как работают трансляции по умолчанию Когда канал YouTube включен для прямой трансляции, YouTube создает поток по умолчанию и трансляцию по умолчанию для канала. Поток определяет, как владелец канала отправляет живое видео на YouTube, а трансляция — как зрители могут видеть поток по умолчанию. Владелец канала может использовать методы liveStreams.list и liveBroadcasts.list для идентификации этих ресурсов.Когда канал начинает трансляцию видео в свой поток по умолчанию, видео отображается в трансляции канала по умолчанию. Когда поток заканчивается, YouTube преобразует завершенную трансляцию в видео YouTube и назначает видео идентификатор видео YouTube. После завершения конвертации видео добавляется в список загруженных видео канала. Видео недоступно сразу после завершения трансляции, а длительность задержки зависит от фактической длительности трансляции. |
snippet. liveChatId | stringИдентификатор чата YouTube в прямом эфире. С этим идентификатором вы можете использовать методы ресурса liveChatMessage для извлечения, вставки или удаления сообщений чата. Вы также можете добавлять или удалять модераторов чата, запрещать пользователям участвовать в чатах в прямом эфире или удалять существующие запреты. |
status | objectОбъект status содержит информацию о статусе события. |
status. lifeCycleStatus | stringСтатус трансляции. Статус можно обновить с помощью метода API liveBroadcasts.transition .Допустимые значения для этого свойства:
|
status. privacyStatus | stringСтатус конфиденциальности трансляции. Обратите внимание, что трансляция представляет собой ровно одно видео YouTube, поэтому настройки конфиденциальности идентичны поддерживаемым для видео. Кроме того, вы можете задать это поле, изменив ресурс трансляции или задав поле privacyStatus соответствующего видеоресурса.Допустимые значения для этого свойства:
|
status. recordingStatus | stringСтатус записи трансляции. Допустимые значения для этого свойства:
|
status. madeForKids | booleanЭто значение указывает, назначена ли трансляция как направленная на ребенка. Это значение свойства доступно только для чтения. |
status. selfDeclaredMadeForKids | booleanВ запросе liveBroadcasts.insert это свойство позволяет владельцу канала обозначить трансляцию как направленную на детей. В запросе liveBroadcasts.list значение свойства возвращается только в том случае, если владелец канала авторизовал запрос API. |
contentDetails | objectОбъект contentDetails содержит информацию о видеоконтенте события, например, может ли контент отображаться во встроенном видеоплеере или он будет заархивирован и, следовательно, доступен для просмотра после завершения события. |
contentDetails. boundStreamId | stringЭто значение однозначно идентифицирует live stream , привязанную к трансляции. |
contentDetails. boundStreamLastUpdateTimeMs | datetimeДата и время последнего обновления прямой трансляции, на которую ссылается boundStreamId . |
contentDetails. monitorStream | objectОбъект monitorStream содержит информацию о потоке мониторинга, которую вещатель может использовать для просмотра содержимого события перед тем, как поток вещания будет показан публично. |
contentDetails.monitorStream. enableMonitorStream | booleanЭто значение определяет, включен ли поток монитора для трансляции. Если поток монитора включен, YouTube будет транслировать контент события в специальном потоке, предназначенном только для потребления вещателя. Вещатель может использовать поток для просмотра контента события, а также для определения оптимального времени для вставки контрольных точек. Вам необходимо установить это значение на true , если вы собираетесь использовать этап testing для вашей трансляции или хотите использовать задержку трансляции для вашего события. Кроме того, если значение этого свойства равно true , то вы должны перевести вашу трансляцию в состояние testing , прежде чем сможете перевести ее в состояние live трансляции. (Если значение свойства равно false , ваша трансляция не может иметь этап testing , поэтому вы можете перевести трансляцию непосредственно в состояние live .)При update a broadcast это свойство должно быть установлено, если ваш запрос API включает часть contentDetails в значении параметра part . Однако при insert a broadcast это свойство является необязательным и имеет значение по умолчанию true .Важно: это свойство невозможно обновить, пока трансляция находится в состоянии testing или live . |
contentDetails.monitorStream. broadcastStreamDelayMs | unsigned integerЕсли вы установили свойство enableMonitorStream в true , то это свойство определяет длительность задержки прямой трансляции.При update a broadcast это свойство должно быть установлено, если ваш запрос API включает часть contentDetails в значение параметра part . Однако при insert a broadcast это свойство является необязательным и имеет значение по умолчанию 0 Это значение указывает на то, что трансляция не имеет задержки трансляции. Примечание: это свойство не может быть обновлено, если трансляция находится в состоянии testing или live трансляции. |
contentDetails.monitorStream. embedHtml | stringHTML-код, встраивающий проигрыватель, воспроизводящий поток монитора. |
contentDetails. enableEmbed | booleanЭтот параметр указывает, может ли транслируемое видео воспроизводиться во встроенном проигрывателе. Если вы решите архивировать видео (используя свойство enableArchive ), этот параметр также будет применяться к архивированному видео.При update a broadcast это свойство должно быть установлено, если ваш запрос API включает часть contentDetails в значении параметра part . Однако при insert a broadcast это свойство является необязательным и имеет значение по умолчанию true .Примечание: это свойство невозможно обновить, пока трансляция находится в состоянии testing или live . |
contentDetails. enableDvr | booleanЭтот параметр определяет, могут ли зрители получить доступ к элементам управления DVR во время просмотра видео. Элементы управления DVR позволяют зрителю управлять воспроизведением видео, приостанавливая, перематывая или перематывая контент. Значение по умолчанию для этого свойства — true .При update a broadcast это свойство должно быть установлено, если ваш запрос API включает часть contentDetails в значении параметра part . Однако при insert a broadcast это свойство является необязательным и имеет значение по умолчанию true .Важно: необходимо установить значение true , а также установить значение свойства enableArchive на true если вы хотите, чтобы воспроизведение было доступно сразу после окончания трансляции. Кроме того, это свойство не может быть обновлено, если трансляция находится в состоянии testing или в live эфире. |
contentDetails. recordFromStart | booleanЭтот параметр указывает, будет ли YouTube автоматически начинать запись трансляции после того, как статус события изменится на прямой эфир. Значение этого свойства по умолчанию — true , и его можно установить на false только в том случае, если каналу вещания разрешено отключать записи прямых трансляций.Если у вашего канала нет разрешения на отключение записей, и вы пытаетесь вставить трансляцию со свойством recordFromStart , установленным на false , API вернет ошибку Forbidden . Кроме того, если у вашего канала нет такого разрешения, и вы пытаетесь обновить трансляцию, чтобы установить свойство recordFromStart на false , API вернет ошибку modificationNotAllowed .При update a broadcast это свойство должно быть установлено, если ваш запрос API включает часть contentDetails в значении параметра part . Однако при insert a broadcast это свойство является необязательным и имеет значение по умолчанию true .Важно: Вы также должны установить значение свойства enableDvr на true если хотите, чтобы воспроизведение было доступно сразу после окончания трансляции. Если вы установите значение этого свойства на true , но не установите также свойство enableDvr на true , может возникнуть задержка примерно в один день, прежде чем архивное видео станет доступно для воспроизведения.Примечание: это свойство невозможно обновить, пока трансляция находится в состоянии testing или live . |
contentDetails. enableClosedCaptions | booleanЭто свойство устарело с 17 декабря 2015 г. Вместо него используйте свойство contentDetails.closedCaptionsType .Этот параметр указывает, включены ли субтитры HTTP POST для этой трансляции. Для клиентов API, которые уже используют это свойство:
|
contentDetails. closedCaptionsType | stringПримечание: это свойство заменяет свойство contentDetails.enableClosedCaptions .Это свойство указывает, включены ли субтитры для вашей трансляции, и если да, то какой тип субтитров вы предоставляете:
|
contentDetails. projection | stringФормат проекции этой трансляции. Значение свойства по умолчанию — rectangular .Допустимые значения для этого свойства:
|
contentDetails. enableLowLatency | booleanУказывает, следует ли кодировать эту трансляцию для потоковой передачи с низкой задержкой. Поток с низкой задержкой может сократить время, необходимое для того, чтобы видео стало видимым для пользователей, смотрящих трансляцию, хотя он также может повлиять на разрешение для зрителей потока. |
contentDetails. latencyPreference | stringУказывает, какую настройку задержки использовать для этой трансляции. Это свойство можно использовать вместо enableLowLatency , которое не поддерживает ultraLow .Поток с низкой задержкой может сократить время, необходимое для того, чтобы видео стало видно пользователям, смотрящим трансляцию, хотя это также может повлиять на плавность воспроизведения. Поток со сверхнизкой задержкой еще больше сокращает время, необходимое для того, чтобы видео стало видно зрителям, что упрощает взаимодействие со зрителями, однако сверхнизкая задержка не поддерживает скрытые субтитры или разрешения выше 1080p. Допустимые значения для этого свойства:
|
contentDetails. enableAutoStart | booleanУказывает, должна ли эта трансляция запускаться автоматически при запуске потоковой передачи видео на привязанном live stream . |
contentDetails. enableAutoStop | booleanУказывает, должна ли эта трансляция автоматически останавливаться примерно через минуту после того, как владелец канала прекращает потоковую передачу видео на привязанном видеопотоке. |
statistics | objectОбъект statistics содержит статистику, связанную с прямой трансляцией. Значения этой статистики могут меняться во время трансляции и могут быть получены только во время трансляции. |
statistics. totalChatCount | unsigned longОбщее количество сообщений чата в реальном времени, связанных с трансляцией. Свойство и его значение присутствуют, если трансляция видна пользователю, имеет включенную функцию чата в реальном времени и содержит хотя бы одно сообщение. Обратите внимание, что это свойство не будет указывать значение после окончания трансляции. Таким образом, это свойство не будет определять количество сообщений чата для архивного видео завершенной трансляции в реальном времени. |
monetizationDetails | objectОбъект monetizationDetails содержит информацию о деталях монетизации потока, например, включен ли автоматизатор рекламы или задерживается ли вставка рекламы в середине трансляции. |
monetizationDetails. cuepointSchedule | objectОбъект cuepointSchedule определяет настройки автоматизации рекламы для трансляции. |
monetizationDetails.cuepointSchedule. enabled | booleanЭто значение определяет, будет ли реклама автоматически вставляться в трансляцию. Если значение равно true , YouTube автоматически вставит рекламу в середине трансляции. Расписание показа рекламы будет определяться значением других полей в объекте monetizationDetails.cuepointSchedule . |
monetizationDetails.cuepointSchedule. pauseAdsUntil | datetimeЭто значение указывает, что YouTube не должен вставлять рекламу в середине трансляции до указанной даты и времени. Значение указывается в формате ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ ). Значение должно быть установлено на будущую дату и время, чтобы приостановить рекламу; значение поля также может быть установлено на ближайшую будущую дату и время, чтобы возобновить рекламу по истечении времени. |
monetizationDetails.cuepointSchedule. scheduleStrategy | stringЭто значение определяет стратегию, которой должен следовать YouTube при планировании точек разметки. Допустимые значения:
|
monetizationDetails.cuepointSchedule. repeatIntervalSecs | unsigned integerЭто значение указывает интервал в секундах между автоматической вставкой рекламы во время трансляции. Например, если значение равно 300 , YouTube может вставлять контрольные точки рекламы в середине ролика с пятиминутными интервалами.Обратите внимание, что значение указывает время между началом последовательных контрольных точек. То есть интервал не измеряется от конца одной контрольной точки до начала следующей. |
liveBroadcast теперь содержит свойство, которое идентифицирует статус прямой трансляции как «сделанные для детей». Условия обслуживания API YouTube и Политики разработчиков также были обновлены 10 января 2020 года. Для получения дополнительной информации см. историю изменений для API-сервиса YouTube Live Streaming и Условия обслуживания API YouTube . Ресурс liveBroadcast представляет собой событие, которое будет транслироваться в прямом эфире на YouTube.
Методы
API поддерживает следующие методы для ресурсов liveBroadcasts :
- list
- Возвращает список трансляций YouTube, соответствующих параметрам запроса API. Попробуйте сейчас .
- insert
- Создает трансляцию. Попробуйте сейчас .
- update
- Обновляет трансляцию. Например, вы можете изменить настройки трансляции, определенные в объекте
contentDetailsресурсаliveBroadcast. Попробуйте сейчас . - delete
- Удаляет трансляцию. Попробуйте сейчас .
- bind
- Привязывает трансляцию YouTube к потоку или удаляет существующую привязку между трансляцией и потоком. Трансляция может быть привязана только к одному видеопотоку, хотя видеопоток может быть привязан к нескольким трансляциям. Попробуйте сейчас .
- transition
- Изменяет статус прямой трансляции YouTube и инициирует все процессы, связанные с новым статусом. Например, при переводе статуса трансляции в
testing, YouTube начинает передавать видео в поток монитора этой трансляции. Перед вызовом этого метода следует подтвердить, что значение свойстваstatus.streamStatusдля потока, привязанного к вашей трансляции, равноactive. Попробуйте сейчас . - cuepoint
- Вставляет контрольную точку в прямую трансляцию. Контрольная точка может вызвать рекламную паузу.
Представление ресурсов
Следующая структура JSON показывает формат ресурса liveBroadcasts :
{
"kind": "youtube#liveBroadcast",
"etag": etag,
"id": string,
"snippet": {
"publishedAt": datetime,
"channelId": string,
"title": string,
"description": string,
"thumbnails": {
(key): {
"url": string,
"width": unsigned integer,
"height": unsigned integer
}
},
"scheduledStartTime": datetime,
"scheduledEndTime": datetime,
"actualStartTime": datetime,
"actualEndTime": datetime,
"isDefaultBroadcast": boolean,
"liveChatId": string
},
"status": {
"lifeCycleStatus": string,
"privacyStatus": string,
"recordingStatus": string,
"madeForKids": string,
"selfDeclaredMadeForKids": string,
},
"contentDetails": {
"boundStreamId": string,
"boundStreamLastUpdateTimeMs": datetime,
"monitorStream": {
"enableMonitorStream": boolean,
"broadcastStreamDelayMs": unsigned integer,
"embedHtml": string
},
"enableEmbed": boolean,
"enableDvr": boolean,
"recordFromStart": boolean,
"enableClosedCaptions": boolean,
"closedCaptionsType": string,
"projection": string,
"enableLowLatency": boolean,
"latencyPreference": boolean,
"enableAutoStart": boolean,
"enableAutoStop": boolean
},
"statistics": {
"totalChatCount": unsigned long
},
"monetizationDetails": {
"cuepointSchedule": {
"enabled": boolean,
"pauseAdsUntil": datetime,
"scheduleStrategy": string,
"repeatIntervalSecs": unsigned integer,
}
}
}
}Характеристики
В следующей таблице определены свойства, которые отображаются в этом ресурсе:
| Характеристики | |
|---|---|
kind | stringОпределяет тип ресурса API. Значение будет youtube#liveBroadcast . |
etag | etagEtag этого ресурса. |
id | stringИдентификатор, который YouTube назначает для уникальной идентификации трансляции. |
snippet | objectОбъект snippet содержит основные сведения о событии, включая его название, описание, время начала и время окончания. |
snippet. publishedAt | datetimeДата и время добавления трансляции в расписание прямых трансляций YouTube. Значение указывается в формате ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ ). |
snippet. channelId | stringИдентификатор, который YouTube использует для уникальной идентификации канала, публикующего трансляцию. |
snippet. title | stringНазвание трансляции. Обратите внимание, что трансляция представляет собой ровно одно видео YouTube. Вы можете задать это поле, изменив ресурс трансляции или задав поле title соответствующего видеоресурса. |
snippet. description | stringОписание трансляции. Как и в случае с title , вы можете задать это поле, изменив ресурс трансляции или задав поле description соответствующего видеоресурса. |
snippet. thumbnails | objectКарта миниатюрных изображений, связанных с трансляцией. Для каждого вложенного объекта в этом объекте ключом является имя миниатюрного изображения, а значением — объект, содержащий другую информацию о миниатюре. |
snippet.thumbnails. (key) | objectДопустимые значения ключа:
|
snippet.thumbnails.(key). url | stringURL-адрес изображения. |
snippet.thumbnails.(key). width | unsigned integerШирина изображения. |
snippet.thumbnails.(key). height | unsigned integerВысота изображения. |
snippet. scheduledStartTime | datetimeДата и время, на которые запланировано начало трансляции. Значение указывается в формате ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ ). Creator Studio поддерживает возможность создания трансляции без планирования времени начала. В этом случае трансляция начинается всякий раз, когда владелец канала начинает потоковую передачу. Для этих трансляций значение datetime соответствует нулевому времени эпохи Unix, и это значение нельзя изменить с помощью API или в Creator Studio. |
snippet. scheduledEndTime | datetimeДата и время, на которые запланировано окончание трансляции. Значение указывается в формате ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ ). Если ресурс liveBroadcast не указывает значение для этого свойства, то трансляция запланирована на неопределенное время. Аналогично, если вы не укажете значение для этого свойства, то YouTube будет рассматривать трансляцию так, как будто она будет продолжаться неопределенное время. |
snippet. actualStartTime | datetimeДата и время фактического начала трансляции. Эта информация доступна только после того, как состояние трансляции станет live . Значение указывается в формате ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ ). |
snippet. actualEndTime | datetimeДата и время фактического окончания трансляции. Эта информация доступна только после complete трансляции. Значение указывается в формате ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ ). |
snippet. isDefaultBroadcast | boolean Это свойство будет упразднено 1 сентября 2020 года или позже. В это время YouTube прекратит создавать поток по умолчанию и трансляцию по умолчанию, когда канал будет включен для прямой трансляции. Подробнее см. в объявлении об упразднении . Это свойство указывает, является ли данная трансляция трансляцией по умолчанию.Как работают трансляции по умолчанию Когда канал YouTube включен для прямой трансляции, YouTube создает поток по умолчанию и трансляцию по умолчанию для канала. Поток определяет, как владелец канала отправляет живое видео на YouTube, а трансляция — как зрители могут видеть поток по умолчанию. Владелец канала может использовать методы liveStreams.list и liveBroadcasts.list для идентификации этих ресурсов.Когда канал начинает трансляцию видео в свой поток по умолчанию, видео отображается в трансляции канала по умолчанию. Когда поток заканчивается, YouTube преобразует завершенную трансляцию в видео YouTube и назначает видео идентификатор видео YouTube. После завершения конвертации видео добавляется в список загруженных видео канала. Видео недоступно сразу после завершения трансляции, а длительность задержки зависит от фактической длительности трансляции. |
snippet. liveChatId | stringИдентификатор чата YouTube в прямом эфире. С этим идентификатором вы можете использовать методы ресурса liveChatMessage для извлечения, вставки или удаления сообщений чата. Вы также можете добавлять или удалять модераторов чата, запрещать пользователям участвовать в чатах в прямом эфире или удалять существующие запреты. |
status | objectОбъект status содержит информацию о статусе события. |
status. lifeCycleStatus | stringСтатус трансляции. Статус можно обновить с помощью метода API liveBroadcasts.transition .Допустимые значения для этого свойства:
|
status. privacyStatus | stringСтатус конфиденциальности трансляции. Обратите внимание, что трансляция представляет собой ровно одно видео YouTube, поэтому настройки конфиденциальности идентичны поддерживаемым для видео. Кроме того, вы можете задать это поле, изменив ресурс трансляции или задав поле privacyStatus соответствующего видеоресурса.Допустимые значения для этого свойства:
|
status. recordingStatus | stringСтатус записи трансляции. Допустимые значения для этого свойства:
|
status. madeForKids | booleanЭто значение указывает, назначена ли трансляция как направленная на ребенка. Это значение свойства доступно только для чтения. |
status. selfDeclaredMadeForKids | booleanВ запросе liveBroadcasts.insert это свойство позволяет владельцу канала обозначить трансляцию как направленную на детей. В запросе liveBroadcasts.list значение свойства возвращается только в том случае, если владелец канала авторизовал запрос API. |
contentDetails | objectОбъект contentDetails содержит информацию о видеоконтенте события, например, может ли контент отображаться во встроенном видеоплеере или он будет заархивирован и, следовательно, доступен для просмотра после завершения события. |
contentDetails. boundStreamId | stringЭто значение однозначно идентифицирует live stream , привязанную к трансляции. |
contentDetails. boundStreamLastUpdateTimeMs | datetimeДата и время последнего обновления прямой трансляции, на которую ссылается boundStreamId . |
contentDetails. monitorStream | objectОбъект monitorStream содержит информацию о потоке мониторинга, которую вещатель может использовать для просмотра содержимого события перед тем, как поток вещания будет показан публично. |
contentDetails.monitorStream. enableMonitorStream | booleanЭто значение определяет, включен ли поток монитора для трансляции. Если поток монитора включен, YouTube будет транслировать контент события в специальном потоке, предназначенном только для потребления вещателя. Вещатель может использовать поток для просмотра контента события, а также для определения оптимального времени для вставки контрольных точек. Вам необходимо установить это значение на true , если вы собираетесь использовать этап testing для вашей трансляции или хотите использовать задержку трансляции для вашего события. Кроме того, если значение этого свойства равно true , то вы должны перевести вашу трансляцию в состояние testing , прежде чем сможете перевести ее в состояние live трансляции. (Если значение свойства равно false , ваша трансляция не может иметь этап testing , поэтому вы можете перевести трансляцию непосредственно в состояние live .)При update a broadcast это свойство должно быть установлено, если ваш запрос API включает часть contentDetails в значении параметра part . Однако при insert a broadcast это свойство является необязательным и имеет значение по умолчанию true .Важно: это свойство невозможно обновить, пока трансляция находится в состоянии testing или live . |
contentDetails.monitorStream. broadcastStreamDelayMs | unsigned integerЕсли вы установили свойство enableMonitorStream в true , то это свойство определяет длительность задержки прямой трансляции.При update a broadcast это свойство должно быть установлено, если ваш запрос API включает часть contentDetails в значение параметра part . Однако при insert a broadcast это свойство является необязательным и имеет значение по умолчанию 0 Это значение указывает на то, что трансляция не имеет задержки трансляции. Примечание: это свойство не может быть обновлено, если трансляция находится в состоянии testing или live трансляции. |
contentDetails.monitorStream. embedHtml | stringHTML-код, встраивающий проигрыватель, воспроизводящий поток монитора. |
contentDetails. enableEmbed | booleanЭтот параметр указывает, может ли транслируемое видео воспроизводиться во встроенном проигрывателе. Если вы решите архивировать видео (используя свойство enableArchive ), этот параметр также будет применяться к архивированному видео.При update a broadcast это свойство должно быть установлено, если ваш запрос API включает часть contentDetails в значении параметра part . Однако при insert a broadcast это свойство является необязательным и имеет значение по умолчанию true .Примечание: это свойство невозможно обновить, пока трансляция находится в состоянии testing или live . |
contentDetails. enableDvr | booleanЭтот параметр определяет, могут ли зрители получить доступ к элементам управления DVR во время просмотра видео. Элементы управления DVR позволяют зрителю управлять воспроизведением видео, приостанавливая, перематывая или перематывая контент. Значение по умолчанию для этого свойства — true .Когда вы update a broadcast , это свойство должно быть установлено, если ваш запрос API включает часть contentDetails в значении параметра part . Однако, когда вы insert a broadcast , свойство является необязательным и имеет значение по умолчанию true .ВАЖНО: Вы должны установить значение true , а также установить значение свойства enableArchive на true , если вы хотите сделать воспроизведение доступным сразу после заканчивая трансляции. Кроме того, это свойство не может быть обновлено после того, как трансляция проходит в testing или в live эфире. |
contentDetails. recordFromStart | booleanЭтот параметр указывает, будет ли YouTube автоматически начнет записывать трансляцию после изменений статуса события в прямом эфире. Значение по умолчанию этого свойства true , и оно может быть установлено на false только в том случае, если канал вещания разрешено отключить записи для живых трансляций.Если ваш канал не имеет разрешения на отключение записей, и вы пытаетесь вставить трансляцию со свойством recordFromStart установленного в false , API вернет Forbidden ошибку. Кроме того, если ваш канал не имеет такого разрешения, и вы пытаетесь обновить трансляцию, чтобы установить свойство recordFromStart в false , API вернет modificationNotAllowed .Когда вы update a broadcast , это свойство должно быть установлено, если ваш запрос API включает часть contentDetails в значении параметра part . Однако, когда вы insert a broadcast , свойство является необязательным и имеет значение по умолчанию true .ВАЖНО: Вы также должны установить значение свойства enableDvr для true , если вы хотите, чтобы воспроизведение было доступно сразу после заканчивая трансляции. Если вы установите значение этого свойства на true , но также не установите свойство enableDvr на true , может быть задержка примерно на один день, прежде чем архивированное видео будет доступно для воспроизведения.Примечание. Это свойство не может быть обновлено, как только трансляция находится в testing или в live эфире. |
contentDetails. enableClosedCaptions | booleanЭто собственность устарела по состоянию на 17 декабря 2015 года. Вместо этого используйте свойство contentDetails.closedCaptionsType .Этот параметр указывает, включена ли для этой трансляции HTTP Post. Для клиентов API, которые уже используют это свойство:
|
contentDetails. closedCaptionsType | stringПРИМЕЧАНИЕ. Это свойство заменяет свойство contentDetails.enableClosedCaptions .Это свойство указывает, включена ли закрытая подпись для вашей трансляции, и, если да, то какой тип закрытых подписей вы предоставляете:
|
contentDetails. projection | stringПроекционное формат этой трансляции. Значение свойства по умолчанию является rectangular .Допустимые значения для этого свойства:
|
contentDetails. enableLowLatency | booleanУказывает, должна ли эта трансляция быть закодирована для потоковой передачи с низкой задержкой. Поток с низкой задержкой может сократить количество времени, необходимого для видео, чтобы быть видимым пользователям, наблюдающим за трансляцией, хотя он также может повлиять на разрешение для зрителей потока. |
contentDetails. latencyPreference | stringУказывает, какую настройку задержки использовать для этой трансляции. Это свойство может использоваться вместо enableLowLatency , которое не поддерживает ultraLow .Поток с низкой задержкой может сократить количество времени, которое необходимо для видео, чтобы быть видимым пользователям, наблюдающим за трансляцией, хотя он также может повлиять на плавность воспроизведения. Поток сверхнизкой задержки еще больше уменьшает время, необходимое для того, чтобы видео было видно для зрителей, облегчая взаимодействие со зрителями, но ультра-низкая задержка не поддерживает закрытые подписи или разрешения выше 1080p. Допустимые значения для этого свойства:
|
contentDetails. enableAutoStart | booleanУказывает, должна ли эта трансляция начинаться автоматически, когда вы начинаете потоковое видео в границе live stream . |
contentDetails. enableAutoStop | booleanУказывает, должна ли эта трансляция останавливаться автоматически через одну минуту после того, как владелец канала прекратит потоковое видео в граничном видеопотоке. |
statistics | objectОбъект statistics содержит статистику, связанную с живой трансляцией. Значения для этой статистики могут измениться во время трансляции и могут быть извлечены только в то время как трансляция живой. |
statistics. totalChatCount | unsigned longОбщее количество сообщений в чате, связанных с трансляцией. Свойство и его значение присутствуют, если трансляция видна пользователю, включена функция чата и имеет хотя бы одно сообщение. Обратите внимание, что это свойство не будет указывать значение после окончания трансляции. Таким образом, это свойство не будет определять количество сообщений чата для архивного видео о завершенной прямой трансляции. |
monetizationDetails | objectОбъект monetizationDetails содержит информацию о деталях монетизации потока, например, если автомат рекламы включен или если вставка рекламы в среднем уровне отложена. |
monetizationDetails. cuepointSchedule | objectОбъект cuepointSchedule указывает настройки автоматизации рекламы для трансляции. |
monetizationDetails.cuepointSchedule. enabled | booleanЭто значение определяет, автоматически вставлено рекламу в трансляции. Если значение true , YouTube автоматически вставит рекламные объявления в среднем уровне в трансляцию. График для запуска рекламы будет определяться значением других полей в объекте monetizationDetails.cuepointSchedule . |
monetizationDetails.cuepointSchedule. pauseAdsUntil | datetimeЭто значение указывает, что YouTube не должен вводить рекламу средней сети в трансляцию до указанной даты и времени. Значение указывается в формате ISO 8601 ( Yyyy-mm-Ddthh: MM: Ss.SZ ). Значение должно быть установлено в будущем DateTime, чтобы сделать паузу; Значение поля также может быть установлено в ближайшее время DateTime, чтобы отключить рекламу при прохождении времени. |
monetizationDetails.cuepointSchedule. scheduleStrategy | stringЭто значение указывает стратегию, которой должен следовать YouTube для планирования купонтов. Допустимые значения:
|
monetizationDetails.cuepointSchedule. repeatIntervalSecs | unsigned integerЭто значение указывает интервал, в считанные секунды между автоматической вставкой AD во время трансляции. Например, если значение составляет 300 , YouTube может вставить мидлиные ad cuepoints с пятью минутными интервалами.Обратите внимание, что значение указывает время между началом последовательных купоидов. То есть интервал не измеряется от конца одной купонки до начала следующего. |