尝试创建队列时获取ChromeCast session_error

时间:2018-05-29 07:58:11

标签: javascript compiler-errors queue chromecast

我正在尝试在演员设备上恢复视频,需要设置一个项目的startTime。

我发现你需要在queueItem而不是mediaInfo上设置startTime。加载一个mediaInfo工作正常,但加载一个queueList不,它会抛出一个session_error,我不知道为什么。

  

“无法创建会话,或会话无效。”

const context = cast.framework.CastContext.getInstance();
const {SESSION_STATE_CHANGED} = cast.framework.CastContextEventType

// initiate session
cast.framework.CastContext.getInstance().requestSession()

context.addEventListener(SESSION_STATE_CHANGED, () => {
  switch (event.sessionState) {
    case cast.framework.SessionState.SESSION_STARTED:
      const castSession = cast.framework.CastContext.getInstance().getCurrentSession()
      const queueItem = new chrome.cast.media.QueueItem(createMediaInfo(source));
      queueItem.startTime = 50
      const itemsToAdd = [queueItem]
      const request = new chrome.cast.media.QueueLoadRequest(itemsToAdd);

      castSession.loadMedia(request).then(console.log, console.error)
      // Throws session_error --------^

    break
    case cast.framework.SessionState.SESSION_RESUMED:
      // update ui 
    break
    case cast.framework.SessionState.SESSION_ENDED:
      // update ui 
    break
  }
})

使用LoadRequest工作正常,但我无法设置startTime或设置播放列表。

const mediaInfo = createMediaInfo(source)
const request = new chrome.cast.media.LoadRequest(mediaInfo);
castSession.loadMedia(request).then(console.log, console.error)

1 个答案:

答案 0 :(得分:0)

在您开始使用排队API之前,您需要先激活一个媒体...?

  

Cast Receiver SDK维护队列并响应队列上的操作,只要队列中至少有一个项目当前处于活动状态(正在播放或暂停)。

所以我无法一次转移我的洞播放列表