Aperçu overview
Les instructions suivantes fournissent des conseils pour la mise en œuvre sur tous les kits SDK 2.x.
La qualité du suivi de l’expérience inclut la qualité du service (QoS) et le suivi des erreurs, ces deux éléments étant facultatifs et n’étant pas obligatoires pour les mises en œuvre de suivi multimédia principal. Vous pouvez utiliser l’API du lecteur multimédia pour identifier les variables liées à QoS et au suivi des erreurs. Voici les éléments clés du suivi de la qualité de l’expérience :
Événements du lecteur player-events
À chaque changement de mesure QoS :
Créez ou mettez à jour l’instance d’objet QoS pour la lecture. Référence de l’API QoS
À chaque événement de changement de débit binaire
L’appel trackEvent(Media.Heartbeat.Event.BitrateChange);
Mise en oeuvre de QOS
-
Identifiez le moment où une mesure QoS change lors de la lecture multimédia, créez
MediaObject
à l’aide des informations QoS et mettez à jour les nouvelles informations QoS.Variables QoSObject :
note tip TIP Ces variables ne sont nécessaires que si vous envisagez de suivre QoS. table 0-row-3 1-row-3 2-row-3 3-row-3 4-row-3 3-align-center 7-align-center 11-align-center 15-align-center 19-align-center Variable Description Obligatoire bitrate
Débit actuel Oui startupTime
Temps de démarrage Oui fps
Valeur fps Oui droppedFrames
Nombre de pertes d’images Oui -
Assurez-vous que la méthode
getQoSObject()
renvoie les informations QoS les plus récentes. -
Lorsque la lecture change de débit binaire, appelez l’événement
BitrateChange
dans l’instance Media Heartbeat.note important IMPORTANT Mettez à jour l’objet QoS et appelez l’événement de changement de débit binaire à chaque changement de débit binaire. Ceci produit les données QoS les plus précises.
L’exemple de code suivant utilise le kit SDK JavaScript 2.x pour un lecteur multimédia HTML5. Utilisez ce code avec le code de lecture multimédia principal.
var mediaDelegate = new MediaHeartbeatDelegate();
...
// This is called periodically by MediaHeartbeat instance
mediaDelegate.prototype.getQoSObject = function() {
return this.qosInfo;
};
if (e.type == "qos_update") {
var qosInfo = MediaHeartbeat.createQoSObject(<BITRATE>,<STARTUP_TIME>,<FPS>,<DROPPED_FRAMES>);
mediaDelegate.qosInfo = qosInfo;
};
if (e.type == "bitrate_change") {
this.mediaHeartbeat.trackEvent(MediaHeartbeat.Event.BitrateChange, qosObject);
};