StreamManager 클래스


동적 광고 삽입 스트림을 처리합니다. 이 클래스는 DAI 서버와의 상호작용을 관리하고, 추적 핑을 처리하며, 스트림 및 광고 이벤트를 내보냅니다.
생성자
constructor
메서드
addEventListener
지정된 이벤트 유형의 리스너를 추가합니다.
contentTimeForStreamTime
지정된 스트림 시간의 광고가 없는 콘텐츠 시간을 반환합니다.
focus
건너뛰기 버튼이 있는 경우 건너뛰기 버튼에 포커스를 둡니다.
getAdSkippableState
사용자가 현재 광고를 건너뛸 수 있으면 true 값을 반환합니다.
loadStreamMetadata
DAI SDK에 광고 메타데이터를 로드하도록 요청하고 LOADED 스트림 이벤트를 내보냅니다.
onTimedMetadata
처리된 메타데이터의 사전을 전달합니다.
previousCuePointForStreamTime
지정된 스트림 시간의 이전 cuepoint를 반환합니다.
processMetadata
스트림의 시간 제한 메타데이터를 처리합니다.
removeEventListener
지정된 StreamEvent 이벤트 유형의 리스너를 삭제합니다.
replaceAdTagParameters
라이브 스트림의 게재 예정 광고 요청에 사용되는 모든 광고 태그 매개변수를 대체합니다.
requestStream
제공된 스트림 매개변수를 사용하여 로드할 IMA DAI 스트림을 요청합니다.
reset
스트림 관리자를 재설정하고 연속 폴링을 삭제합니다.
streamTimeForContentTime
특정 콘텐츠 시간에 광고가 포함된 총 스트림 시간을 반환합니다.

생성자


constructor

new StreamManager(videoElement: HTMLVideoElement, adUiElement?: HTMLElement, uiSettings?: UiSettings): StreamManager
매개변수
videoElement: HTMLVideoElement 재생이 발생하는 HTML 동영상 요소입니다.
Optional adUiElement: HTMLElement 광고 UI가 렌더링되는 요소입니다.
Optional uiSettings: UiSettings 이 스트림에 사용할 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: {
  [key: string]: string;
}
메타데이터 사전입니다.

previousCuePointForStreamTime

previousCuePointForStreamTime(streamTime: number): CuePoint
지정된 스트림 시간의 이전 cuepoint를 반환합니다. 이전 cuepoint가 없으면 null를 반환합니다. 사용자가 광고 시점으로 돌아가려고 할 때 이 메서드를 호출하여 스냅백과 같은 기능을 구현합니다.
매개변수
streamTime: number 사용자가 탐색하려는 스트림 시간입니다.
반환 값
CuePoint 지정된 스트림 시간의 이전 큐 포인트입니다.

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: {
  [key: string]: string;
}
대체 광고 태그 매개변수입니다. 문자열 값이 있어야 합니다.

requestStream

requestStream(streamRequest: StreamRequest): void
제공된 스트림 매개변수를 사용하여 로드할 IMA DAI 스트림을 요청합니다.
매개변수
streamRequest: StreamRequest 스트림 메타데이터를 로드하는 파라미터를 포함합니다.

reset

reset(): void
스트림 관리자를 재설정하고 연속 폴링을 삭제합니다.

streamTimeForContentTime

streamTimeForContentTime(contentTime: number): number
특정 콘텐츠 시간에 광고가 포함된 총 스트림 시간을 반환합니다. 라이브 스트림의 지정된 콘텐츠 시간을 반환합니다.
매개변수
contentTime: number 광고가 없는 콘텐츠 시간(초)입니다.
반환 값
number DAI가 광고를 삽입한 후 지정된 콘텐츠 시간에 해당하는 총 스트림 시간입니다.