[JWPlayer] Events - Buffer, Captions
[JWPlayer] Events - Buffer, Captions
BUFFER Events
이 API 호출은 플레이어에 버퍼링된 파일의 퍼센티지(%) 정보를 클라이언트에 업데이트하는 데 사용됩니다.
이 기능은 VOD(주문형 비디오) 미디어에만 적용됩니다.
실시간 스트리밍 미디어(HLS/DASH)에서는 이 동작이 노출되지 않습니다.
.on(‘bufferChange’)
현재 재생 중인 항목이 버퍼에 추가 데이터를 로드할 때 트리거됩니다.
1
2
3
4
5
6
7
8
9
10
11
12
{
"bufferPercent": 2.7706319444444443,
"position": 7.90229,
"duration": 648,
"currentTime": 7.90229,
"seekRange": {
"start": 0,
"end": 648
},
"absolutePosition": null,
"type": "bufferChange"
}
- absolutePosition (number | null)
- 미디어 파일 내에서 시청자의 절대 위치를 나타냅니다. 이는 영상의 현재 재생 시간(
currentTime)과 스트림의startDateTime값(날짜 형식)을 합한 값입니다.
- 미디어 파일 내에서 시청자의 절대 위치를 나타냅니다. 이는 영상의 현재 재생 시간(
- bufferPercent (number)
- 현재 미디어에서 버퍼링된 비율(%)을 0~100 사이의 값으로 표시합니다.
- currentTime (number) v8.19.0+
- 플레이어가 탐색(seek)을 수행하기 전의 스트림 위치(초 단위)
- duration (number) v8.19.0+
- 미디어의 현재 전체 재생 길이(초 단위)
- position (number)
- 미디어 파일의 현재 재생 위치(초 단위)
- seekRange (object)
- DVR 스트림의 탐색 가능 범위 또는 라이브 스트림의 버퍼링 가능 구간을 나타내는 시간 범위 객체
참조:seekRange - seekRange[]
- seekRange.end (number)
- 스트림의 현재 시간(
currentTime)을 기준으로 한 범위의 종료 시점(초 단위)
- 스트림의 현재 시간(
- seekRange.start (number)
- 스트림의 현재 시간(
currentTime)을 기준으로 한 범위의 시작 시점(초 단위)
- 스트림의 현재 시간(
- seekRange.end (number)
- DVR 스트림의 탐색 가능 범위 또는 라이브 스트림의 버퍼링 가능 구간을 나타내는 시간 범위 객체
- type (string)
- 플레이어 이벤트의 카테고리 (이 이벤트의 경우 항상
"bufferChange")
- 플레이어 이벤트의 카테고리 (이 이벤트의 경우 항상
CAPTIONS Events
이 API 호출은 비디오에 하나 이상의 클로즈드 캡션(Closed Captions) 트랙이 제공될 때, 활성 자막 트랙을 감지하거나 업데이트하는 데 사용됩니다.
JavaScript API를 사용하여 자막 사용 내역을 기록하거나, JW Player 외부에 독자적인 CC(자막) 메뉴를 구성할 수 있습니다.
또한 setCaptions()을 사용하면 플레이어를 다시 로드하지 않고 자막 스타일을 동적으로 설정할 수도 있습니다.
인덱스 값이
0이면 자막이 꺼져(off) 있음을 의미합니다.
.on(‘captionsList’)
사용 가능한 자막 트랙 목록이 변경될 때 트리거됩니다.
이 이벤트는 API를 사용하여 기본 자막을 설정하기에 이상적인 시점입니다.
captionsList는 항상 최소 1개의 항목(off)을 반환하지만, 자막이 완전히 로드되면 한 번 더 트리거됩니다.
따라서tracks배열의 길이가 1을 초과할 때만 자막을 변경하는 것이 좋습니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
{
"tracks": [
{
"id": "off",
"label": "Off"
},
{
"id": "//playertest-cdn.longtailvideo.com/assets/os/captions/bunny-en.srt",
"label": "English",
"language": "en"
}
],
"track": 0,
"type": "captionsList"
}
- track (number)
- 활성화된 자막 트랙의 인덱스
- tracks (array)
- 포함된 모든 자막 트랙 목록
- tracks[]
- tracks.id (string | number)
- (외부 자막: .srt, .vtt) 외부 자막 파일의 URL
- (내장 자막: .vtt, CEA-608, CEA-708) 자막의 인덱스
- 첫 번째
tracks[]객체의id값은 항상"off"이며, 첫 번째 트랙은 자막이 꺼져 있음을 나타냅니다.
- tracks.label (string)
- (외부 자막) 플레이어 설정에서 구성된 라벨
- (내장 자막) 내장된 자막 내부에 지정된 라벨
- 첫 번째
tracks[]객체의label값은 항상"Off"이며, 첫 번째 트랙은 자막이 꺼져 있음을 나타냅니다.
- tracks.language (string)
- 자막 트랙의 두 글자 언어 약어 (예:
"en","ko")
- 자막 트랙의 두 글자 언어 약어 (예:
- tracks.id (string | number)
- type (string)
- 플레이어 이벤트의 카테고리 (이 이벤트의 경우 항상
captionsList)
- 플레이어 이벤트의 카테고리 (이 이벤트의 경우 항상
.on(‘captionsChanged’)
활성 자막 트랙이 수동으로 또는 API를 통해 변경될 때마다 트리거됩니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
{
"tracks": [
{
"id": "off",
"label": "Off"
},
{
"id": "//playertest-cdn.longtailvideo.com/assets/os/captions/bunny-en.srt",
"label": "English",
"language": "en"
}
],
"track": 0,
"type": "captionsChanged"
}
- track (number)
- 새로 활성화된 자막 트랙의 인덱스
- tracks (array)
- 포함된 모든 자막 트랙 목록
- tracks[]
- tracks.id (string | number)
- (외부 자막: .srt, .vtt) 외부 자막 파일의 URL
- (내장 자막: .vtt, CEA-608, CEA-708) 자막의 인덱스
- 첫 번째
tracks[]객체의id값은 항상"off"이며, 첫 번째 트랙은 자막이 꺼져 있음을 나타냅니다.
- tracks.label (string)
- (외부 자막) 플레이어 설정에서 구성된 라벨
- (내장 자막) 내장된 자막 내부에서 지정된 라벨
- 첫 번째
tracks[]객체의label값은 항상"Off"이며, 첫 번째 트랙은 자막이 꺼져 있음을 나타냅니다.
- tracks.language (string)
- 자막 트랙의 두 글자 언어 약어 (예:
"en","ko")
- 자막 트랙의 두 글자 언어 약어 (예:
- tracks.id (string | number)
- type (string)
- 플레이어 이벤트의 카테고리
- 이 이벤트의 경우 항상
"captionsChanged"
This post is licensed under CC BY 4.0 by the author.