ใน video_player.js ให้กำหนดคลาส Wrapper ของวิดีโอเพลเยอร์เพื่อเริ่มต้นและควบคุมเพลเยอร์ dash.js
ตั้งค่าเพลเยอร์บรอดแบนด์
กำหนดตำแหน่งที่จะวางเพลเยอร์บรอดแบนด์ในแอปโดยสร้างแท็กวิดีโอและ Wrapper ดังนี้
สร้างวิดีโอเพลเยอร์
เริ่มต้นคลาสวิดีโอเพลเยอร์ด้วยตัวแปรสำหรับองค์ประกอบ HTML, เพลเยอร์ dash.js และ Callback ที่เมธอดคลาสอื่นๆ ใช้ได้
กำหนดฟังก์ชันควบคุมการเล่น
หากต้องการแสดงเพลเยอร์โฆษณาและแนบมุมมองวิดีโอ ให้สร้างเมธอด VideoPlayer.play() จากนั้นสร้างเมธอด VideoPlayer.stop() เพื่อจัดการการล้างข้อมูลหลังจากพ็อดโฆษณาเล่นจบ
โหลด Manifest ของสตรีมโฆษณาล่วงหน้า
หากต้องการตรวจสอบว่าโฆษณาโหลดเพียงพอระหว่างสตรีมเนื้อหาและก่อนที่ช่วงพักโฆษณาจะเริ่มขึ้น ให้ใช้ VideoPlayer.preload() และ VideoPlayer.isPreloaded()
1. โหลดสตรีมโฆษณาล่วงหน้า
สร้างเมธอด VideoPlayer.preload() เพื่อโหลดไฟล์ Manifest ของสตรีมโฆษณาล่วงหน้าและสร้างบัฟเฟอร์โฆษณาก่อนช่วงพักโฆษณา คุณต้องอัปเดตการตั้งค่าการสตรีมของเพลเยอร์
'cacheInitSegments' เป็น true การอัปเดตการตั้งค่าจะช่วยให้แคชส่วนเริ่มต้นได้ ซึ่งจะช่วยหลีกเลี่ยงความล่าช้าเมื่อเปลี่ยนไปแสดงโฆษณา
2. ตรวจสอบบัฟเฟอร์โฆษณาที่โหลดล่วงหน้า
สร้างเมธอด VideoPlayer.isPreloaded() เพื่อตรวจสอบว่าบัฟเฟอร์โฆษณาโหลดล่วงหน้าเพียงพอเมื่อเทียบกับเกณฑ์บัฟเฟอร์ที่ตั้งไว้ในแอปหรือไม่ โดยทำดังนี้
แนบ Listener ของเพลเยอร์
หากต้องการเพิ่ม Listener เหตุการณ์สำหรับเหตุการณ์ของเพลเยอร์ dash.js ให้สร้างเมธอด VideoPlayer.attachPlayerListener(): PLAYBACK_PLAYING, PLAYBACK_ENDED, LOG และ ERROR เมธอดนี้ยังจัดการเหตุการณ์สำหรับ URI ของรหัส Scheme นอกเหนือจากการตั้งค่าฟังก์ชันการล้างข้อมูลเพื่อนำ Listener เหล่านี้ออก
ตั้งค่า Callback ของเหตุการณ์เพลเยอร์
หากต้องการจัดการการเล่นพ็อดโฆษณาตามเหตุการณ์ของเพลเยอร์ ให้สร้างเมธอด VideoPlayer.onAdPodPlaying(), VideoPlayer.onAdPodEnded() และ VideoPlayer.onAdPodError() ดังนี้
สร้าง Setter สำหรับเหตุการณ์ onAdPodEnded
ตั้งค่าฟังก์ชัน Callback ที่ทำงานเมื่อพ็อดโฆษณาเล่นจบโดยสร้างเมธอด VideoPlayer.setOnAdPodEnded() คลาสแอปใช้เมธอดนี้เพื่อเล่นเนื้อหาที่ออกอากาศต่อหลังจากช่วงพักโฆษณา
จัดการเหตุการณ์ข้อมูลเมตาของสตรีม
ตั้งค่าฟังก์ชัน Callback ที่ทำงานตามเหตุการณ์ emsg โดยสร้างเมธอด VideoPlayer.setEmsgEventHandler() สำหรับคู่มือนี้ ให้ใส่พารามิเตอร์ scope เนื่องจากคุณเรียกใช้ setEmsgEventHandler() นอก video_player.js
แสดงและซ่อนวิดีโอเพลเยอร์สำหรับช่วงพักโฆษณา
หากต้องการแสดงวิดีโอเพลเยอร์ระหว่างช่วงพักโฆษณา และซ่อนเพลเยอร์หลังจากช่วงพักโฆษณาจบลง ให้สร้างเมธอด VideoPlayer.show() และ VideoPlayer.hide() ดังนี้
จากนั้นสร้างคลาสตัวจัดการโฆษณาเพื่อใช้ IMA SDK ในการส่งคำขอสตรีม รับ Manifest ของพ็อดโฆษณา ฟังเหตุการณ์สตรีม IMA และส่งเหตุการณ์ emsg ไปยัง IMA SDK