이 섹션의 지침은 레거시 2.x Media SDK에 적용됩니다.
Media SDK의 1.x 버전의 구현에 대한 내용은 1.x Media SDK 설명서를 참조하십시오.
Primetime 통합 업체의 경우, Primetime Media SDK 설명서를 참조하십시오.
2021년 8월 31일에 버전 4 Mobile SDK에 대한 지원이 종료됨에 따라 Adobe는 iOS 및 Android용 Media Analytics SDK에 대한 지원도 종료할 예정입니다. 자세한 내용은 Media Analytics SDK 지원 종료 FAQ를 참조하십시오.
다음 표에서는 2019년 2월 19일부터 각 SDK에 대해 지원되는 최소 플랫폼 버전에 대해 설명합니다.
OS/브라우저 | 필요한 최소 버전 |
---|---|
iOS | iOS 6+ |
Android | Android 5.0+ - Lollipop |
Chrome | v22+ |
Mozilla | v27+ |
Safari | v7+ |
IE | v11+ |
다음과 같이 미디어 추적에 관련된 세 가지 기본 SDK 구성 요소가 있습니다.
다음 구현 단계를 완료합니다.
매개 변수 값을 설정하고 MediaHeartbeatConfig
인스턴스를 작성합니다.
변수 이름 | 설명 | 필수 여부 | 기본값 |
---|---|---|---|
trackingServer |
미디어 분석을 위한 추적 서버입니다. 분석 추적 서버와 다릅니다. | 예 | 빈 문자열 |
channel |
채널 이름 | 아니요 | 빈 문자열 |
ovp |
콘텐츠가 배포되는 온라인 미디어 플랫폼의 이름입니다. | 아니요 | 빈 문자열 |
appVersion |
미디어 플레이어 앱/SDK의 버전입니다. | 아니요 | 빈 문자열 |
playerName |
사용 중인 미디어 플레이어의 이름입니다. 예: "AVPlayer", "HTML5 Player", "My Custom Player" | 아니요 | 빈 문자열 |
ssl |
호출이 HTTPS를 통해 수행되야 하는지 여부를 나타냅니다. | 아니요 | false |
debugLogging |
디버그 로깅이 사용되는지 여부를 나타냅니다. | 아니요 | false |
MediaHeartbeatDelegate
를 구현합니다.
메서드 이름 | 설명 | 필수 여부 |
---|---|---|
getQoSObject() |
현재 QoS 정보가 포함된 MediaObject 인스턴스를 반환합니다. 이 메서드는 재생 세션 중에 여러 번 호출됩니다. 플레이어 구현은 항상 최근에 사용 가능한 QoS 데이터를 반환해야 합니다. |
예 |
getCurrentPlaybackTime() |
플레이헤드의 현재 위치를 반환합니다. VOD 추적의 경우 이 값은 미디어 항목이 시작된 후 현재까지의 시간(초)으로 지정됩니다. 라이브 스트리밍의 경우 플레이어가 콘텐츠 지속 시간에 대한 정보를 제공하지 않으면 해당 날짜의 자정(UTC) 이후 경과된 시간(초 수)으로 값을 지정할 수 있습니다. 참고: 진행률 마커를 사용할 경우 콘텐츠 지속 시간이 필요하며 플레이헤드는 0부터 시작하여 미디어 항목의 시작부터 초 단위로 업데이트해야 합니다. |
예 |
QoS(서비스 품질) 개체는 선택 사항입니다. 플레이어에 대해 QoS 데이터를 사용할 수 있고 해당 데이터를 추적하려는 경우 다음 변수가 필요합니다.
변수 이름 | 설명 | 필수 여부 |
---|---|---|
bitrate |
초당 비트 수 단위의 미디어 비트율. | 예 |
startupTime |
밀리초 단위의 미디어 시작 시간. | 예 |
fps |
초당 표시되는 프레임 수. | 예 |
droppedFrames |
지금까지 드롭된 프레임 수. | 예 |
MediaHeartbeat
인스턴스를 생성합니다.
MediaHertbeatConfig
및 MediaHertbeatDelegate
를 사용하여 MediaHeartbeat
인스턴스를 생성합니다.
세션이 끝날 때까지 이 인스턴스에 대한 할당이 취소되지 않는지 그리고 MediaHeartbeat
인스턴스가 액세스할 수 있는지 확인하십시오. 이 인스턴스는 다음의 모든 미디어 추적 이벤트에 사용됩니다.
Adobe Analytics에 대한 호출을 전송하려면 MediaHeartbeat
에 AppMeasurement
의 인스턴스가 필요합니다.
모든 조각을 결합합니다.
다음 샘플 코드는 HTML5 비디오 플레이어에 Adobe의 JavaScript 2.x SDK를 사용합니다.
// Create local references to the heartbeat classes
var MediaHeartbeat = ADB.va.MediaHeartbeat;
var MediaHeartbeatConfig = ADB.va.MediaHeartbeatConfig;
var MediaHeartbeatDelegate = ADB.va.MediaHeartbeatDelegate;
//Media Heartbeat Config
var mediaConfig = new MediaHeartbeatConfig();
mediaConfig.trackingServer = "[your_namespace].hb.omtrdc.net";
mediaConfig.playerName = "HTML5 Basic";
mediaConfig.channel = "Video Channel";
mediaConfig.debugLogging = true;
mediaConfig.appVersion = "2.0";
mediaConfig.ssl = false;
mediaConfig.ovp = "";
// Media Heartbeat Delegate
var mediaDelegate = new MediaHeartbeatDelegate();
// Set mediaDelegate CurrentPlaybackTime
mediaDelegate.getCurrentPlaybackTime = function() {
return video.currentTime;
};
// Set mediaDelegate QoSObject - OPTIONAL
mediaDelegate.getQoSObject = function() {
return MediaHeartbeat.createQoSObject(video.bitrate,
video.startuptime,
video.fps,
video.droppedframes);
}
// Create mediaHeartbeat instance
this.mediaHeartbeat =
new MediaHeartbeat(mediaDelegate, mediaConfig, appMeasurementInstance);
Media Analytics 추적 구현에서는 다음 두 가지 유형의 추적 호출을 생성합니다.
미디어 및 광고 시작 호출은 Adobe Analytics(AppMeasurement) 서버에 직접 전송됩니다.
하트비트 호출은 Media Analytics(하트비트) 추적 서버로 전송되어 처리되고, Adobe Analytics 서버로 전달됩니다.
Adobe Analytics(AppMeasurement) 서버
추적 서버 옵션에 대한 자세한 내용은 trackingServer 및 trackingServerSecure 변수를 올바르게 채우기를 참조하십시오.
RDC 서버로 확인되는 RDC 추적 서버 또는 CNAME은 Experience Cloud 방문자 ID 서비스에 필요합니다.
Analytics 추적 서버는 ".sc.omtrdc.net
"으로 끝나야 하거나 CNAME이어야 합니다.
** Media Analytics(하트비트) 서버**
항상 "[your_namespace].hb.omtrdc.net
" 형식입니다. 다음 "[your_namespace]
"의 값은 회사를 지정하며, Adobe에서 제공합니다.
미디어 추적은 모든 플랫폼, 데스크탑 및 모바일에서 동일하게 작동합니다. 오디오 추적은 현재 모바일 플랫폼에서 작동합니다. 모든 추적 호출에 대해 확인해야 하는 몇 가지 주요 범용 변수가 있습니다.
Video Analytics 1.x SDKs | 개발자 안내서(PDF만 해당) |
---|---|
Android | Android에 대한 구성 |
Apple TV | Apple TV에 대한 구성 |
Chromecast | Chromecast에 대한 구성 |
iOS | iOS에 대한 구성 |
JavaScript | JavaScript에 대한 구성 |
Primetime |
|
TVML | TVML에 대한 구성 |