Überblick overview
Mit den folgenden Anweisungen können Sie die Implementierung der 2.x-SDKs vornehmen.
Das Tracking der Erlebnisqualität (QoE) beinhaltet Servicequalität (QoS) und Fehler-Tracking. Diese beiden Elemente sind optional und nicht für die Implementierung des Core-Medien-Tracking erforderlich. Sie können die Medienplayer-API verwenden, um die Variablen für QoS- und Fehler-Tracking zu ermitteln. Das Tracking der Erlebnisqualität umfasst folgende wichtige Elemente:
Player-Ereignisse player-events
Bei allen QoS-Metrikänderungen:
Erstellen oder aktualisieren Sie die QoS-Objektinstanz für die Wiedergabe. QoS-API-Referenz
Bei allen Ereignissen zu Bitratenänderungen
Aufruf trackEvent(Media.Heartbeat.Event.BitrateChange);
Implementieren von QOS
-
Erkennen Sie, wann sich eine der QoS-Metriken während der Medienwiedergabe ändert, erstellen Sie
MediaObject
anhand der QoS-Informationen und aktualisieren Sie die neuen QoS-Informationen.QoSObject-Variablen:
note tip TIP Diese Variablen sind nur erforderlich, wenn Sie die Servicequalität (QoS) verfolgen möchten. 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 Beschreibung erforderlich bitrate
Aktuelle Bitrate Ja startupTime
Startzeit Ja fps
FPS-Wert Ja droppedFrames
Anzahl der Dropped Frames Ja -
Stellen Sie sicher, dass die
getQoSObject()
-Methode die neuesten QoS-Informationen zurückgibt. -
Wenn sich die Bitrate der Wiedergabe ändert, rufen Sie das
BitrateChange
-Ereignis in der Media Heartbeat-Instanz auf.note important IMPORTANT Aktualisieren Sie das QoS-Objekt und rufen Sie das Ereignis zur Bitratenänderung bei jeder Bitratenänderung auf. So erhalten Sie möglichst präzise Daten.
Der folgende Beispielcode nutzt das JavaScript 2.x-SDK für einen HTML5-Medienplayer. Sie sollten diesen Code mit dem Code zur Core-Medienwiedergabe verwenden.
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);
};