2017-09-13 8 views
0

Après l'initialisation de la distribution, l'expéditeur fait une demande de charger un média sur le récepteur en cours d'exécutionChromecast - Expéditeur Chrome - Comment mettre à jour la session média sur l'expéditeur?

var session = window.cast.framework.CastContext.getInstance().getCurrentSession(); 
... 
session.loadMedia(loadRequest); 

Ensuite, les charges de récepteur média suivant en utilisant MediaManager

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

Je dois mettre à jour la session de médias sur le côté de l'expéditeur. Comment puis-je y parvenir?

Répondre

0

J'ai été en mesure de mettre à jour la session de média sur l'expéditeur après que le récepteur ait chargé le support suivant de la façon suivante. Par exemple, dans un contenu épisodique, passer d'un épisode à un autre.

Sur Auteur:

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 
    }); 

sur le récepteur

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 

Sur Auteur:

Ajoutez les lignes suivantes où il est dit [mise à jour prochaine session de médias ici] ci-dessus.

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

Vous pouvez utiliser session.stop et addUpdateListener pour mettre fin au support actuel lorsqu'un autre démarre.

Pour arrêter, vous pouvez utiliser cet extrait de code fourni dans la documentation:

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

Vous pouvez également vérifier SO post connexes pour référence. J'espère que cela aide.