Chromecast - запуск мультимедиа через CastMessageBus

Я занимаюсь разработкой приложения Chromecast Receiver. Можно ли запускать мультимедиа через Cast Message Bus? Я знаю, что это не лучшая практика, и уже есть механизм для запуска СМИ через GCKMediaControlChannel

Я использую https://github.com/googlecast/CastReferencePlayer в качестве отправной точки.

Я отправляю текстовое сообщение (содержащее JSON Media Info) через моего отправителя следующим образом:

[_castServiceChannel sendTextMessage:mediaInfoJSON];

JSON принимается на приемнике, и я пытаюсь запустить медиаплеер, например, так:

sampleplayer.CastPlayer.prototype.loadVideo_(message);

Но я не инициализирую медиаплеер должным образом. У кого-нибудь есть какие-либо идеи?

1 ответ

Решение

Проблема для меня заключалась в том, что я не мог запустить видео, потому что:

  1. loadVideo_() был неправильный метод, я должен использовать load()
  2. Плеер никогда не инициализировался должным образом при получении кастовых сообщений.

Мое решение состояло в том, чтобы отделить cast message bus сообщения от игрока. Так по моему player.htmlЯ начинаю cast message bus, Когда я receive JSON средств массовой информации, которые я хочу играть, я инициирую player.js от player.html вот так:

//receive message to play -> pass media through
var player = document.getElementById('player');
new sampleplayer.CastPlayer(player).start();

затем в

sampleplayer.CastPlayer.prototype.start = function() {
  this.load(JSON.parse(message));
};

Единственная проблема в том, что Media Manager никогда не инициализируется должным образом в Cast Receiver app, Так что это означает, что я не могу правильно записывать события RCU. Есть идеи, почему это может происходить?

Другие вопросы по тегам