비트율 변경

비트율 변경 이벤트는 플레이어가 새 재생 비트율을 협상했음을 알립니다. 재생 중에 비트율이 변경될 때마다 전송합니다. 백엔드가 평균 비트율 및 비트율 버킷당 차원을 계산할 수 있도록 QoE 데이터에 새 비트율 값을 포함하십시오.

권장 구현 유형

웹 SDK

eventType: "media.bitrateChange"qoeDataDetails의 새 비트 전송률로 sendEvent을(를) 호출합니다.

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

새 비트율로 QoE 개체를 만들고 비트율 변경 이벤트가 실행되기 전에 추적기를 업데이트합니다.

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

tracker.updateQoEObject(qoe: qoeObject)
tracker.trackEvent(event: MediaEvent.BitrateChange, info: nil, metadata: nil)
Android

새 비트율로 QoE 개체를 만들고 비트율 변경 이벤트가 실행되기 전에 추적기를 업데이트합니다.

code language-kotlin
val qoeObject = Media.createQoEObject(3200, 0, 24, 0)

tracker.updateQoEObject(qoeObject)
tracker.trackEvent(Media.Event.BitrateChange, null, null)
Roku

eventType: "media.bitrateChange"qoeDataDetails의 새 비트율로 sendMediaEvent을(를) 호출합니다.

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

qoeDataDetails에서 새 비트율을 사용하여 bitrateChange 끝점을 호출합니다.

code language-sh
curl -X POST "https://edge.adobedc.net/ee/va/v1/bitrateChange?configId={datastreamID}" \
--header 'Content-Type: application/json' \
--data '{
  "events": [{
    "xdm": {
      "eventType": "media.bitrateChange",
      "mediaCollection": {
        "qoeDataDetails": {
          "bitrate": 3200
        },
        "sessionID": "{sid}",
        "playhead": 90
      },
      "timestamp": "YYYY-08-20T22:41:40+00:00"
    }
  }]
}'

이전 구현 유형(Analytics 전용)

Media SDK JS 3.x

새 비트율로 QoE 개체를 만들고 추적기를 업데이트합니다.

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

tracker.updateQoEObject(qoeObject);
tracker.trackEvent(ADB.Media.Event.BitrateChange);
Chromecast

getQoSObject 대리자가 반환한 QoS 개체를 업데이트한 다음 이벤트를 추적합니다.

code language-javascript
// Update QoS data via the delegate
this._qosInfo = ADBMobile.media.createQoSObject(
  3200,  // bitrate (kbps)
  0,     // dropped frames
  24,    // fps
  0      // startup time
);

ADBMobile.media.trackEvent(ADBMobile.media.Event.BitrateChange);
미디어 컬렉션 API

qoeData에서 새 비트율을 사용하여 이벤트 끝점bitrateChange POST를 보냅니다.

code language-json
{
  "playerTime": { "playhead": 90, "ts": 1699523820000 },
  "eventType": "bitrateChange",
  "qoeData": {
    "media.qoe.bitrate": 3200
  }
}
recommendation-more-help
media-analytics-help