Changement de débit

Cette page explique comment implémenter des événements de changement de débit. Voir Modifications de débit (dimension) et Modifications de débit (mesure) pour les variables de rapport correspondantes.

L’événement de changement de débit indique que le lecteur est passé à un autre débit. Mettez d’abord à jour la valeur Bitrate sur l’objet QoE, puis déclenchez l’événement de changement de débit. Le serveur principal utilise le nombre de ces événements pour calculer la mesure Changements de débit de dimension et Changements de débit, ainsi que les valeurs de débit qui en résultent pour alimenter Débit moyen.

Propriété
Valeur
Variable de données contextuelles
(aucun : comptabilisé par le serveur principal)
Type d’événement XDM
media.bitrateChange
Caractéristique
c_contextdata.a.media.qoe.bitrateChangeCount
Obligatoire
Non
Envoyé avec
Changement de débit

Types d’implémentation recommandés

SDK Web

Utilisez sendEvent pour envoyer un événement media.bitrateChange avec le nouveau débit :

code language-javascript
alloy("sendEvent", {
  xdm: {
    eventType: "media.bitrateChange",
    mediaCollection: {
      qoeDataDetails: {
        bitrate: 4500,
        droppedFrames: 0,
        framesPerSecond: 24,
        timeToStart: 0
      },
      sessionID: "{sid}",
      playhead: 120
    }
  }
});
iOS

Mettez à jour l’objet QoE avec le nouveau débit, puis déclenchez l’événement de changement de débit.

code language-swift
let qoeObject = Media.createQoEObjectWith(bitrate: 4500,
                                       startupTime: 0,
                                               fps: 24,
                                     droppedFrames: 0)
tracker.updateQoEObject(qoe: qoeObject)
tracker.trackEvent(event: MediaEvent.BitrateChange, info: nil, metadata: nil)
Android

Mettez à jour l’objet QoE avec le nouveau débit, puis déclenchez l’événement de changement de débit.

code language-kotlin
val qoeObject = Media.createQoEObject(4500L, 0.0, 24.0, 0L)
tracker.updateQoEObject(qoeObject)
tracker.trackEvent(Media.Event.BitrateChange, null, null)
Roku

Utilisez sendMediaEvent avec media.bitrateChange pour signaler un changement de débit. Inclure le nouveau débit dans qoeDataDetails :

code language-brightscript
m.aepSdk.sendMediaEvent({
    "xdm": {
        "eventType": "media.bitrateChange",
        "mediaCollection": {
            "qoeDataDetails": {
                "bitrate": 4500,
                "droppedFrames": 0,
                "framesPerSecond": 24,
                "timeToStart": 0
            },
            "playhead": 120
        }
    }
})
API Media Edge

Appelez le point d’entrée bitrateChange avec le qoeDataDetails mis à jour :

code language-json
{
  "events": [{
    "xdm": {
      "eventType": "media.bitrateChange",
      "mediaCollection": {
        "qoeDataDetails": {
          "bitrate": 4500
        },
        "sessionID": "{sid}",
        "playhead": 120
      }
    }
  }]
}

Types d’implémentation hérités (Analytics uniquement)

Media SDK JS 3.x

Mettez à jour l’objet QoE et déclenchez l’événement :

code language-javascript
var qoeObject = ADB.Media.createQoEObject(4500, 0, 24, 0);
tracker.updateQoEObject(qoeObject);
tracker.trackEvent(ADB.Media.Event.BitrateChange);
Chromecast

Mettez à jour l’objet QoS avec le nouveau débit, puis déclenchez l’événement de changement de débit :

code language-javascript
var qosInfo = ADBMobile.media.createQoSObject(
  4500,  // bitrate (kbps)
  0,     // startupTime
  24,    // fps
  0      // droppedFrames
);
ADBMobile.media.updateQoSObject(qosInfo);
ADBMobile.media.trackEvent(ADBMobile.media.Event.BitrateChange);
API Media Collection

Envoyez une bitrateChange requête POST avec le nouveau débit :

code language-json
{
  "playerTime": { "playhead": 120, "ts": 1699523820000 },
  "eventType": "bitrateChange",
  "params": {
    "media.qoe.bitrate": 4500
  }
}

Consultez la référence des événements de l’API Media Collection pour obtenir la structure complète des requêtes.

recommendation-more-help
media-analytics-help