如何在youtube上传播放列表中的视频中分辨直播

时间:2015-09-04 22:21:28

标签: youtube-data-api

我调用youtube数据api(v3)来获取用户上传的列表。我专门使用oauth令牌,以便我可以获得公开和不公开的视频。一切正常。最近我看到播放列表位置0中包含一个直播流。这似乎是该频道的一般直播流,但它有一个unique_id,就像任何其他视频一样,并且是“公开的”。以下是播放列表项目的数据(标识信息已编辑)

kind: youtube#playlistItem
etag: '"XXXXX"'
id: XXXXX
snippet:
  publishedAt: '2015-08-26T17:22:10.000Z'
  channelId: XXXX
  title: XXXXX Live Stream
  description: ''
  thumbnails: <removed for brevity>
  channelTitle: XXXXX
  playlistId: UUXXXXX
  position: 0
  resourceId:
    kind: youtube#video
    videoId: XXXXX
status:
  privacyStatus: public

我需要一种方法来排除此频道直播(通常是直播),但播放列表项目中没有任何内容可以指示状态。

我尝试拉相应的视频数据,但它说该条目不是直播,也没有返回liveStreamingDetails部分

data = YoutubeApiV3.instance.video_list({ 'id' => unique_id, 'part' =>'snippet,contentDetails,statistics,status,liveStreamingDetails' })

kind: youtube#videoListResponse
etag: '"XXXXXX"'
pageInfo:
  totalResults: 1
  resultsPerPage: 1
items:
  kind: youtube#video
  etag: '"XXXXXX"'
  id: XXXXX
  snippet:
    publishedAt: '2015-08-26T17:22:10.000Z'
    channelId: XXXXXX
    title: XXXXXX Live Stream
    description: ''
    thumbnails: <removed for brevity>
    channelTitle: XXXX
    categoryId: '22'
    liveBroadcastContent: none
    localized:
      title: XXXX Live Stream
      description: ''
    contentDetails:
      duration: PT0S
      dimension: 2d
      definition: sd
      caption: 'false'
      licensedContent: false
      regionRestriction: <omitted>
  status:
    uploadStatus: uploaded
    privacyStatus: public
    license: youtube
    embeddable: true
    publicStatsViewable: true
  statistics:
    viewCount: '0'
    likeCount: '0'
    dislikeCount: '0'
    favoriteCount: '0'
    commentCount: '0'

我能在这里做些什么来弄清楚这是一个直播?还有其他一些我可以检查的部分吗?这是一个错误吗?这不应该在playlistItems列表中过滤吗?并非每个频道都有此直播,我真的不想测试视频节目,因为可以更改。

0 个答案:

没有答案