# JavaScript API Reference
เอกสารการใช้งาน JavaScript API สำหรับ ByteArk Player ประกอบด้วยรายชื่อ Methods และ รายชื่อ Events พื้นฐานต่างๆ ที่ทางทีมงานคาดว่านักพัฒนาจะใช้งานเป็นประจำไว้ในเอกสารนี้
Note
เนืองจาก ByteArk Player พัฒนาโดยมีพื้นฐานมาจาก Video.js ทำให้สามารถใช้งาน methods และ Events ต่างๆของ Video.js ได้ ซึ่ง สามารถดูรายละเอียดทั้งหมดได้จากเอกสารของ Video.js (opens new window)
- JavaScript API Reference - Methods - player.play()
- player.pause()
- player.paused()
- player.src(source)
- player.duration()
- player.currentTime(seconds)
- player.volume(volume)
- player.muted(muted)
- player.dispose()
- player.error()
- player.playbackRate(rate)
- player.qualityLevels()
- player.qualityLevel(level)
- player.hasQualityLevels()
- player.on(type, fn)
- player.one(type, fn)
- player.off(type, fn)
 
- Events
 
- Methods 
# Methods
# player.play()
เริ่มเล่นวิดีโอ
# player.pause()
หยุดเล่นวิดีโอชั่วคราว
# player.paused()
เช็คว่าวิดีโอหยุดเล่นชั่วคราวหรือไม่
Returns
| Description | Type | 
|---|---|
| trueหากวิดีโอหยุดเล่นfalseหากวิดีโอกำลังเล่นอยู่ | Boolean | 
# player.src(source)
เปลี่ยน source ของวิดีโอ
Parameters
| Attribute | Description | Type | 
|---|---|---|
| source | Source object สำหรับใช้ในการเล่นวิดีโอ | Object | 
# player.duration()
ความยาวของวิดีโอที่กำลังเล่นอยู่ ขึ้นอยู่กับชนิดของวิดีโอที่เล่น ตามตารางด้านล่าง
Returns
| Media Type | Description | Type | 
|---|---|---|
| VOD | ความยาวของวิดีโอ หน่วยเป็นวินาที | Number | 
| Live | สำหรับ live stream ความยาวของวิดีโอจะเป็น Inifinity | Number | 
# player.currentTime(seconds)
ดึงค่า หรือ ตั้งค่า เวลาในการเล่นวิดีโอ
Parameters
| Attribute | Description | Type | 
|---|---|---|
| seconds | ตั้งค่า เวลาในการเล่นวิดีโอ หน่วยเป็นวินาที | Number | 
Returns
| Description | Type | 
|---|---|
| เวลาขณะเล่นวิดีโออยู่ หน่วยเป็นวินาที | Number | 
# player.volume(volume)
ดึงค่า หรือ ตั้งค่า ความดังของเสียงขณะเล่นวิดีโอ
Parameters
| Attribute | Description | Type | 
|---|---|---|
| volume | ตั้งค่าความดังของเสียงขณะเล่นวิดีโอ มีค่าระหว่าง 0-1 | Number | 
Returns
| Description | Type | 
|---|---|
| ค่าความดังของเสียงขณะเล่นวิดีโอ มีค่าระหว่าง 0-1 | Number | 
# player.muted(muted)
ดึงค่า หรือ ตั้งค่า เปิด/ปิด เสียงขณะเล่นวิดีโอ
Parameters
| Attribute | Description | Type | 
|---|---|---|
| muted | trueตั้งค่าเล่นวิดีโอแบบปิดเสียงfalseตั้งค่าเล่นวิดีโอแบบเปิดเสียง | Boolean | 
Returns
| Description | Type | 
|---|---|
| trueหากเล่นวิดีโอปิดเสียงfalseหากเล่นวิดีโอแบบเปิดเสียง | Boolean | 
# player.dispose()
หยุดการทำงาน และ ทำลาย video player ทิ้ง
# player.error()
ดึงค่า error object ที่มีข้อมูลตามตารางด้านล่างจาก video player
Returns
| Name | Type | Description | 
|---|---|---|
| code | Number | รหัสของ error ที่เกิดขึ้น | 
| message | String | คำอธิบายของ error ที่เกิดขึ้น | 
# player.playbackRate(rate)
Parameters
| Attribute | Description | Type | 
|---|---|---|
| rate | ความเร็วในการเล่นวิดีโอ ค่าปกติคือ 1.0 | Number | 
Returns
| Description | Type | 
|---|---|
| ความเร็วในการเล่นวิดีโอ | Number | 
# player.qualityLevels()
ดึงค่าลิสของความละเอียดที่วิดีโอนั้นมี
Returns
| Description | Type | 
|---|---|
| ลิสของความละเอียดที่วิดีโอมี (Quality Object) | Array | 
Quality Object
| Name | Type | Description | 
|---|---|---|
| name | String | ชื่อของความละเอียด (Quality) เช่น 720p, 480p เป็นต้น | 
| level | Number | เลขแสดง index ของความละเอียด | 
| url | Array | ลิส url ของ ความละเอียด | 
# player.qualityLevel(level)
ดึงค่า หรือ ตั้งค่า ความละเอียดของวิดีโอ
Parameters
| Attribute | Description | Type | 
|---|---|---|
| level | ตั้งค่าความละเอียดของวิดีโอขณะกำลังเล่นอยู่ | Number | 
Returns
| Name | Type | Description | 
|---|---|---|
| name | String | ชื่อของความละเอียด (Quality) เช่น 720p, 480p เป็นต้น | 
| level | Number | เลขแสดง index ของความละเอียด | 
| url | Array | ลิส url ของ ความละเอียด | 
# player.hasQualityLevels()
เช็คว่าวิดีโอที่กำลังเล่นอยู่มีหลายความละเอียดหรือไม่
Returns
| Description | Type | 
|---|---|
| trueหากวิดีโอที่กำลังเล่นอยู่มีหลายความละเอียดfalseหากวิดีโอกำลังเล่นอยู่ไม่ได้มีหลายความละเอียด | Boolean | 
# player.on(type, fn)
เพิ่ม event listener ที่จะทำงานทุกครั้งเมื่อมี event ที่ subscribed ไว้เกิดขึ้น
สามารถดูรายชื่อ events ได้ที่ด้านล่าง
Parameters
| Attribute | Description | Type | 
|---|---|---|
| type | ชนิของ event ที่ต้องการ subscribe | String | 
| fn | Function ที่จะถูกเรียกเมื่อมี event เกิดขึ้น | Function | 
# player.one(type, fn)
เพิ่ม event listener ที่จะทำงานครั้งเดียวเมื่อมี event ที่ subscribed ไว้เกิดขึ้น
สามารถดูรายชื่อ events ได้ที่ด้านล่าง
Parameters
| Attribute | Description | Type | 
|---|---|---|
| type | ชนิของ event ที่ต้องการ subscribe | String | 
| fn | Function ที่จะถูกเรียกเมื่อมี event เกิดขึ้น | Function | 
# player.off(type, fn)
ลบ event listener ที่ถูกเพิ่มโดย player.on หรือ player.one
สามารถดูรายชื่อ events ได้ที่ด้านล่าง
Parameters
| Attribute | Description | Type | 
|---|---|---|
| type | ชนิของ event ที่ต้องการ unsubscribe | String | 
| fn | Function ที่จะถูกเรียกเมื่อมี event เกิดขึ้น | Function | 
# Events
# ready
เกิดขึ้นเมื่อ video player พร้อมที่จะใช้งาน
# firstplay
เกิดขึ้นเมื่อ มีการเล่นวิดีโอครั้งแรก
# play
เกิดขึ้นเมื่อ มีการเริ่มเล่นวิดีโอ
# pause
เกิดขึ้นเมื่อ มีการหยุดเล่นวิดีโอชั่วคราว
# ended
เกิดขึ้นเมื่อ มีการเล่นวิดีโอจนจบ
# timeupdate
เกิดขึ้นเมื่อ มีการเปลี่ยนตำแหน่งปัจจุบันของการเล่นวิดีโอ (current playback position)
# seeking
เกิดขึ้นเมื่อ ผู้ใช้งานทำการ seek วิดีโอ
# waiting
เกิดขึ้นเมื่อ video player รอโหลดข้อมูล
# fullscreenchange
เกิดขึ้นเมื่อ มีการ เข้า หรือ ออก fullscreen mode
# volumechange
เกิดขึ้นเมื่อ มีการปรับระดับเสียงในการเล่นวิดีโอ
# ratechange
เกิดขึ้นเมื่อ มีการปรับความเร็วในการเล่นวิดีโอ
# enterpictureinpicture
เกิดขึ้นเมื่อ มีการเข้าใช้งาน Picture-in-Picture mode
# leavepictureinpicture
เกิดขึ้นเมื่อ ออกจากการใช้งาน Picture-in-Picture mode
# error
เกิดขึ้นเมื่อ มี error เกิดขึ้น
