Bithastighetsändring

Den här sidan beskriver hur du implementerar bithastighetsändringshändelser. Se Bitrate changes (dimension) och Bitrate changes (mått) för motsvarande rapportvariabler.

Bithastighetsändringshändelsen signalerar att spelaren har växlat till en annan bithastighet. Uppdatera värdet Bithastighet för QoE-objektet först och utlös sedan bithastighetsändringshändelsen. I serverdelen används antalet av dessa händelser för att beräkna måtten Bitrate changes och Bitrate changes samt de resulterande bithastighetsvärdena i feed Average bitrate.

Egenskap
Värde
Kontextdatavariabel
(ingen - räknas av serverdelen)
XDM-händelsetyp
media.bitrateChange
Audience Manager trait
c_contextdata.a.media.qoe.bitrateChangeCount
Krävs
Nej
Skickat med
Bithastighetsändring

Rekommenderade implementeringstyper

SDK för webben

Använd sendEvent för att skicka en media.bitrateChange-händelse med den nya bithastigheten:

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

Uppdatera QoE-objektet med den nya bithastigheten och utlös sedan bithastighetsändringshändelsen.

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

Uppdatera QoE-objektet med den nya bithastigheten och utlös sedan bithastighetsändringshändelsen.

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

Använd sendMediaEvent med media.bitrateChange för att signalera en bithastighetsändring. Inkludera den nya bithastigheten i qoeDataDetails:

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

Anropa slutpunkten bitrateChange med den uppdaterade qoeDataDetails:

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

Äldre implementeringstyper (endast analys)

Media SDK JS 3.x

Uppdatera QoE-objektet och utlösa händelsen:

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

Uppdatera QoS-objektet med den nya bithastigheten och utlösa sedan bithastighetsändringshändelsen:

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);
Media Collection API

Skicka en bitrateChange POST-begäran med den nya bithastigheten:

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

Se API-händelseferensen för mediainsamling för den fullständiga strukturen för begäran.

recommendation-more-help
media-analytics-help