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 ответ
Проблема для меня заключалась в том, что я не мог запустить видео, потому что:
loadVideo_()
был неправильный метод, я должен использоватьload()
- Плеер никогда не инициализировался должным образом при получении кастовых сообщений.
Мое решение состояло в том, чтобы отделить 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. Есть идеи, почему это может происходить?