如何获取YouTube Live"Stream Now"服务的流名称/密钥

rhb*_*c73 2 youtube-api youtube-livestreaming-api

YouTube在去年7月添加了"Stream now(beta)"服务,这使得直播更容易.

使用Youtube验证的程序,如"XSplit Broadcaster",您可以在授权后流式传输到"现在流式传输".

我也在做流媒体应用程序,我正在寻找的是获取默认"Stream now"流的流名称的API.通过流名称,我可以将内容流式传输到YouTube.

YouTube文档https://developers.google.com/youtube/v3/live/docs/未提及任何相关内容,默认广播未包含在youtube.liveBroadcasts.list的结果中.

如果XSplit Broadcaster可以做到这一点,我认为必须有一个API.谁知道呢?

====================================更新:

在此处形成文档https://developers.google.com/youtube/v3/live/docs/liveBroadcasts 广播中应该有一个isDefault字段(snippet.isDefaultBroadcast).并且应该有默认广播和默认直播.

但当我运行livebroadcasts.list获取所有广播时,我得到了

{
 "kind": "youtube#liveBroadcastListResponse",
 "etag": "\"abQHWywil_AkNqdqji7_FqiK-u4/z2Ncj_KliOCAGV1jEVPYCsHbZn0\"",
 "pageInfo": {
  "totalResults": 4,
  "resultsPerPage": 50
 },
 "items": [
 ]
}
Run Code Online (Sandbox Code Playgroud)

虽然totalResults = 4,但返回的项目中没有任何内容.

rhb*_*c73 6

解决了,可以通过在livebrocasts.list中将broadcastType设置为"persistent"来检索默认广播.

GET https://www.googleapis.com/youtube/v3/liveBroadcasts?part=+id%2C+snippet%2C+contentDetails%2C+status&broadcastType=persistent&mine=true&key={YOUR_API_KEY}
Run Code Online (Sandbox Code Playgroud)

并且可以通过带有boundstreamid的livestreams.list检索默认流.