동적 광고 삽입 스트림을 처리합니다. 이 클래스는 DAI 서버와의 상호작용을 관리하고, 추적 핑을 처리하며, 스트림 및 광고 이벤트를 내보냅니다.
| 생성자 | |
|---|---|
constructor
|
|
| 메서드 | |
|---|---|
add
|
지정된 이벤트 유형의 리스너를 추가합니다. |
content
|
지정된 스트림 시간의 광고가 없는 콘텐츠 시간을 반환합니다. |
focus
|
건너뛰기 버튼이 있는 경우 건너뛰기 버튼에 포커스를 둡니다. |
get
|
사용자가 현재 광고를 건너뛸 수 있으면
true 값을 반환합니다. |
load
|
DAI SDK에 광고 메타데이터를 로드하도록 요청하고
LOADED 스트림 이벤트를 내보냅니다.
|
on
|
처리된 메타데이터의 사전을 전달합니다. |
previous
|
지정된 스트림 시간의 이전 cuepoint를 반환합니다. |
process
|
스트림의 시간 제한 메타데이터를 처리합니다. |
remove
|
지정된 StreamEvent 이벤트 유형의 리스너를 삭제합니다.
|
replace
|
라이브 스트림의 게재 예정 광고 요청에 사용되는 모든 광고 태그 매개변수를 대체합니다.
|
request
|
제공된 스트림 매개변수를 사용하여 로드할 IMA DAI 스트림을 요청합니다.
|
reset
|
스트림 관리자를 재설정하고 연속 폴링을 삭제합니다. |
stream
|
특정 콘텐츠 시간에 광고가 포함된 총 스트림 시간을 반환합니다. |
생성자
constructor
new StreamManager(videoElement: HTMLVideoElement, adUiElement?: HTMLElement, uiSettings?: UiSettings): StreamManager
| 매개변수 | |
|---|---|
videoElement: HTMLVideoElement
|
재생이 발생하는 HTML 동영상 요소입니다. |
|
광고 UI가 렌더링되는 요소입니다. |
|
이 스트림에 사용할 UI 설정입니다. |
| 반환 값 | |
|---|---|
StreamManager
|
|
메서드
addEventListener
addEventListener(type: Type | Type[], listener: ((event: StreamEvent) => void)): void
지정된 이벤트 유형의 리스너를 추가합니다.
| 매개변수 | |
|---|---|
type:
Type | Type[]
|
광고 이벤트 유형 또는 이벤트 유형 배열입니다. |
listener: ((event: StreamEvent) => void)
|
광고 리스너의 콜백 함수입니다. |
contentTimeForStreamTime
contentTimeForStreamTime(streamTime: number): number
지정된 스트림 시간의 광고가 없는 콘텐츠 시간을 반환합니다. 라이브 스트림의 지정된 스트림 시간을 반환합니다.
| 매개변수 | |
|---|---|
streamTime: number
|
콘텐츠와 광고를 합한 스트림 시간(초)입니다. |
| 반환 값 | |
|---|---|
number
|
광고를 제외한 지정된 스트림 시간의 콘텐츠 시간입니다. |
focus
focus(): void
건너뛰기 버튼이 있는 경우 건너뛰기 버튼에 포커스를 둡니다. 없으면 포커스가 대화형 요소로 다시 이동합니다.
getAdSkippableState
getAdSkippableState(): boolean
사용자가 현재 광고를 건너뛸 수 있으면
true 값을 반환합니다. 이 값이 변경되면 StreamManager 클래스가 SKIPPABLE_STATE_CHANGED 스트림 이벤트를 내보냅니다.
| 반환 값 | |
|---|---|
boolean
|
true(사용자가 현재 광고를 건너뛸 수 있는 경우)
false(그렇지 않은 경우)
|
loadStreamMetadata
loadStreamMetadata(): void
DAI SDK에 광고 메타데이터를 로드하도록 요청하고
LOADED 스트림 이벤트를 내보냅니다.
서드 파티 동영상 스티처에서 스트림 매니페스트를 가져올 때 이 메서드를 수동으로 호출합니다. 이 방법은 서드 파티 동영상 스티처를 사용하여 광고 모음 게재 VOD 스트림에만 적용됩니다.
onTimedMetadata
onTimedMetadata(metadata: {
[key: string]: string;
}): void
처리된 메타데이터의 사전을 전달합니다. 사전에서는 사용자 정의 메타데이터 문자열을 값으로 사용하는 정확한 키
"TXXX"를 예상합니다. 플레이어가 원시 메타데이터를 제공하는 경우 대신 StreamManager.processMetadata 메서드를 호출하세요.
| 매개변수 | |
|---|---|
metadata: {
|
메타데이터 사전입니다. |
previousCuePointForStreamTime
processMetadata
processMetadata(type: string, data: string | Uint8Array, timestamp: number): void
스트림의 시간 제한 메타데이터를 처리합니다. 동영상 플레이어가 타임스탬프가 포함된 파싱되지 않은 메타데이터를 제공하는 경우 이 메서드를 사용하세요. 그렇지 않으면 StreamManager.onTimedMetadata를 호출합니다.
| 매개변수 | |
|---|---|
type: string
|
메타데이터 유형입니다. HLS의 경우 'ID3' 문자열이어야 하고 DASH의 경우 이벤트 메시지 스키마 ID URI여야 합니다.
|
data: string | Uint8Array
|
원시 태그 데이터입니다. ID3의 경우 전체 원시 태그 데이터여야 합니다. DASH 이벤트 메시지의 경우 메시지 데이터 문자열입니다. |
timestamp: number
|
데이터를 처리할 시간(초)입니다. DASH의 경우 이 매개변수는 이벤트 메시지 시작 시간입니다. |
removeEventListener
removeEventListener(type: Type, listener: ((event: StreamEvent) => void)): void
지정된 StreamEvent 이벤트 유형의 리스너를 삭제합니다. 리스너를 성공적으로 삭제하려면 이 메서드에 전달하는 리스너 매개변수가 이전에
addEventListener 메서드에 전달된 리스너 매개변수와 참조로 동일해야 합니다.
| 매개변수 | |
|---|---|
type:
Type
|
리스너를 삭제할 이벤트의 유형입니다. |
listener: ((event: StreamEvent) => void)
|
리스너로 삭제할 함수입니다. |
replaceAdTagParameters
replaceAdTagParameters(adTagParameters: {
[key:
string]: string;
}): void
실시간 스트림의 경우 게재 예정 광고 요청에 사용하는 모든 광고 태그 매개변수를 대체합니다.
| 매개변수 | |
|---|---|
adTagParameters: {
|
대체 광고 태그 매개변수입니다. 문자열 값이 있어야 합니다. |
requestStream
requestStream(streamRequest: StreamRequest): void
제공된 스트림 매개변수를 사용하여 로드할 IMA DAI 스트림을 요청합니다.
| 매개변수 | |
|---|---|
streamRequest:
StreamRequest
|
스트림 메타데이터를 로드하는 파라미터를 포함합니다. |
reset
reset(): void
스트림 관리자를 재설정하고 연속 폴링을 삭제합니다.
streamTimeForContentTime
streamTimeForContentTime(contentTime: number): number
특정 콘텐츠 시간에 광고가 포함된 총 스트림 시간을 반환합니다. 라이브 스트림의 지정된 콘텐츠 시간을 반환합니다.
| 매개변수 | |
|---|---|
contentTime: number
|
광고가 없는 콘텐츠 시간(초)입니다. |
| 반환 값 | |
|---|---|
number
|
DAI가 광고를 삽입한 후 지정된 콘텐츠 시간에 해당하는 총 스트림 시간입니다. |