Приемник Chromecast session_error LOAD_CANCEELLED

Я получаю session_error LOAD_CANCELLED при попытке отправить второе видео на приемник Chromecast.

Я пытаюсь реализовать собственный приемник для трансляции видео с моего сайта. На данный момент приложение работает нормально, все сообщения обмениваются, как и ожидалось, за исключением того, что если у меня есть видеотрансляция, я не могу загрузить второе видео на приемник из-за вышеуказанной ошибки.

Согласно документации, это ожидаемое поведение (https://developers.google.com/cast/docs/reference/receiver/cast.receiver.media.ErrorType#.LOAD_CANCELED).

статический cast.receiver.media.ErrorType.LOAD_CANCELED

Возвращается, когда запрос LOAD отменяется вторым входящим запросом LOAD.

Однако я проверил ряд других более простых приложений, и все они воспроизводили одно и то же при воспроизведении 2-го видео: вызовите Load еще раз от отправителя, и он работает так, как ожидалось.

Это мой onLoad перезаписан:

/* Start onLoad event processing */
Receiver.prototype.mediaOnLoadEvent_ = function(event) {
  console.debug('Receiver.js: mediaOnLoadEvent_()');

  var playListener = function(e) {
    document.removeEventListener('video-READY', playListener);

    // BUILDING MEDIAINFO and METADATA HERE
    // .....
    // .....


    console.debug('Receiver.js: sending load complete');
    this.mediaManager_.setMediaInformation(mediaInformation, true, {});
    this.mediaManager_['mediaOrigOnLoad'](event);
  }.bind(this);

  document.addEventListener('video-READY', playListener);
  window.CustomPlayer.loadVideo(event.data.media.contentId,
                                event.data.currentTime, function({});
};

это сообщения, которые я получаю в консоли для получателя, когда отправляю второй запрос LOAD:

[ 86.580s] [cast.receiver.IpcChannel] Received message: {"data":"{\"type\":\"LOAD\",\"requestId\":54589218,\"sessionId\":\"1B476387-AE78-4F07-BD06-A8CFEF4509A0\",\"media\":{\"contentId\":\"2365405980\",\"streamType\":\"BUFFERED\",\"contentType\":\"\"},\"autoplay\":true,\"currentTime\":0}","namespace":"urn:x-cast:com.google.cast.media","senderId":"243:client-50611"} cast_receiver.js:13
[ 86.585s] [cast.receiver.CastMessageBus] Dispatching CastMessageBus message cast_receiver.js:13
[ 86.591s] [cast.receiver.MediaManager] MediaManager message received cast_receiver.js:13
[ 86.595s] [cast.receiver.MediaManager] Dispatching MediaManager load event cast_receiver.js:13
[ 86.602s] [cast.receiver.MediaManager] Sending error message to 243:client-50611 cast_receiver.js:13
[ 86.606s] [cast.receiver.IpcChannel] IPC message sent: {"namespace":"urn:x-cast:com.google.cast.media","senderId":"243:client-50611","data":"{\"requestId\":54589182,\"type\":\"LOAD_CANCELLED\"}"} receiver.js?v=0.2:117
Receiver.js: mediaOnLoadEvent_()

Как видите, мой mediaOnLoadEvent вызывается после отправки события load_cancelled, так что я ничего не могу с этим поделать.

Спасибо.


person w3bMaster    schedule 13.02.2015    source источник


Ответы (1)


Это ВАИ.

В вашем запросе LOAD у вас есть это. ID запроса: 54589218

В ответе LOAD_CANCEELLED у вас есть это. идентификатор запроса: 54589182

Идентификаторы запросов разные.

Ваша вторая ЗАГРУЗКА прошла успешно. Это предыдущий LOAD, который LOAD_CANCEELLED.

person justhecuke    schedule 23.04.2015