比特率

本页介绍​ Bitrate ​变量的数据收集。 查看相应报表变量的平均比特率(维度)平均比特率(量度)

bitrate变量是当前播放比特率(以千位/秒为单位)。 每当播放器协商比特率时,在QoE对象中设置它,并在比特率发生更改时更新QoE对象。 后端使用比特率值来计算平均比特率、每比特率存储桶维度和比特率更改量度。

属性
上下文数据变量
a.media.qoe.bitrateAverageBucket
XDM集合字段
xdm.mediaCollection.qoeDataDetails.bitrate
Audience Manager特征
c_contextdata.a.media.qoe.bitrateAverageBucket
必需
发送条件
质量事件(比特率更改缓冲开始错误),会话关闭

建议的实施类型

Web SDK

调用sendEvent时,在media.bitrateChange(或任何与质量相关的事件)的xdm.mediaCollection.qoeDataDetails中设置bitrate

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

将比特率作为第一个参数传递给createQoEObject。 在触发任何质量事件之前更新跟踪器上的QoE对象。

code language-swift
let qoeObject = Media.createQoEObjectWith(bitrate: 3200,
                                       startupTime: 0,
                                               fps: 24,
                                     droppedFrames: 0)

tracker.updateQoEObject(qoe: qoeObject)
Android

将比特率作为第一个参数传递给createQoEObject。 在触发任何质量事件之前更新跟踪器上的QoE对象。

code language-kotlin
val qoeObject = Media.createQoEObject(3200L,
                                      0.0,
                                      24.0,
                                      0L)

tracker.updateQoEObject(qoeObject)
Roku

为质量事件(如media.bitrateChange)调用sendMediaEvent时,在xdm.mediaCollection.qoeDataDetails中设置bitrate

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

调用xdm.mediaCollection.qoeDataDetails中包含bitratebitrateChange终结点:

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

旧版实施类型(仅限Analytics)

Media SDK JS 3.x

将比特率作为第一个参数传递给ADB.Media.createQoEObject并更新跟踪器:

code language-javascript
var qoeObject = ADB.Media.createQoEObject(
  3200,  // bitrate (kbps)
  0,     // startup time (ms)
  24,    // fps
  0      // dropped frames
);

tracker.updateQoEObject(qoeObject);
Chromecast

将以kbps为单位的比特率作为第一个参数传递给ADBMobile.media.createQoSObject并更新跟踪器:

code language-javascript
var qosInfo = ADBMobile.media.createQoSObject(
  3200,  // bitrate (kbps)
  0,     // startupTime
  24,    // fps
  0      // droppedFrames
);
ADBMobile.media.updateQoSObject(qosInfo);
媒体收集API

bitrateChange POST请求的params对象中包括media.qoe.bitrate

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

有关完整请求结构,请参阅媒体收集API事件引用

recommendation-more-help
media-analytics-help