2017-09-13 4 views
0

Nach Besetzung der Initialisierung machen Sender eine Anforderung, ein Medium zu laden aufChromecast - Chrome-Absender - Wie aktualisieren Sie die Mediensitzung des Absenders?

Empfänger läuft
var session = window.cast.framework.CastContext.getInstance().getCurrentSession(); 
... 
session.loadMedia(loadRequest); 

Dann Empfänger Lasten nächste Medien MediaManager-

var mediaManager = new cast.receiver.MediaManager(mediaElement); 
    ... 
    mediaManager.load(loadRequestData); // "Loads a media session on the receiver without involvement of a sender" 

Ich brauche die Mediensitzung auf Senderseite zu aktualisieren. Wie erreiche ich das?

Antwort

0

Ich war in der Lage, Mediensitzung auf Absender zu aktualisieren, nachdem Empfänger nächste Medien auf die folgende Weise lädt. Zum Beispiel in einem episodischen Inhalt, Wechsel von einer Episode zu einer anderen.

Am Sender:

var session = window.cast.framework.CastContext.getInstance().getCurrentSession(); 
    ... 
    session.loadMedia(loadRequest).then(function() { 
     ... 
     // this is a media session of the first episodic content 
     mediaSession = session.getMediaSession(); // returns instance of chrome.cast.media.Media 
     mediaSession.addUpdateListener(function(isAlive) { 
      // invoked when the status of the media has changed 
      // [update next media session here] 
     }); 
     ... 
    }, function() { 
     //errorHandler 
    }); 

Auf Receiver

var mediaManager = new cast.receiver.MediaManager(video); 
... 
// the first episode is loaded from sender to receiver 
... 
// after the first episode is complete, loads second episode 
mediaManager.load(loadRequestData); // loadRequestData contains media request data and its metadata 

Am Sender:

Fügen Sie den folgenden, wo es heißt [Update nächste Medien-Sitzung hier] oben.

var nextMediaSession = session.getSessionObj().media; //returns instance of chrome.cast.media.Media which is the updated media session of the second episode 
0

Sie können session.stop und addUpdateListener verwenden, um das aktuelle Medium zu beenden, wenn ein anderes gestartet wird.

zu stoppen, können Sie diesen Code-Schnipsel in der Dokumentation zur Verfügung gestellt verwenden:

function stopApp() { 
    session.stop(onSuccess, onError); 
} 

Sie können auch diese verwandten SO post Referenz überprüfen. Hoffe, das hilft.

Verwandte Themen