در video_player.js ، یک کلاس wrapper برای پخشکنندهی ویدیو تعریف کنید تا پخشکنندهی dash.js را راهاندازی و کنترل کند.
پخشکننده پهنای باند را تنظیم کنید
با ایجاد تگهای video و wrapper، محل قرارگیری پخشکنندهی پهنای باند را در برنامهی خود مشخص کنید:
پخش کننده ویدیو را ایجاد کنید
کلاس پخشکننده ویدیو را با متغیرهایی برای عناصر HTML، پخشکننده dash.js و فراخوانیهایی که سایر متدهای کلاس میتوانند از آنها استفاده کنند، مقداردهی اولیه کنید.
تعریف توابع کنترل پخش
برای نمایش پخشکنندهی تبلیغات و پیوست کردن نمای ویدیو، متد VideoPlayer.play() را ایجاد کنید. پس از آن، متد create VideoPlayer.stop() را برای مدیریت پاکسازی پس از اتمام غلافهای تبلیغاتی ایجاد کنید.
مانیفست جریان تبلیغات را از قبل بارگذاری کنید
برای تأیید اینکه تبلیغات به اندازه کافی در طول پخش محتوا و قبل از شروع نمایش تبلیغات بارگذاری شدهاند، از VideoPlayer.preload() و VideoPlayer.isPreloaded() استفاده کنید.
۱. پیش بارگذاری جریان تبلیغات
متد VideoPlayer.preload() را برای پیشبارگذاری مانیفست پخش تبلیغات و ایجاد یک بافر تبلیغاتی قبل از وقفه تبلیغاتی ایجاد کنید. شما باید تنظیمات پخش پخشکننده 'cacheInitSegments' به true بهروزرسانی کنید. با بهروزرسانی تنظیمات، ذخیرهسازی بخشهای اولیه را فعال میکنید که از تأخیر هنگام تغییر به تبلیغات جلوگیری میکند.
۲. بافر تبلیغاتی از پیش بارگذاری شده را بررسی کنید
متد VideoPlayer.isPreloaded() را ایجاد کنید تا بررسی کنید که آیا بافر تبلیغاتی به اندازه کافی در مقایسه با آستانه بافر تنظیم شده در برنامه، از قبل بارگذاری شده است یا خیر:
شنوندههای پخشکننده را ضمیمه کنید
برای افزودن شنوندههای رویداد برای رویداد player در dash.js، متد VideoPlayer.attachPlayerListener() را ایجاد کنید: PLAYBACK_PLAYING ، PLAYBACK_ENDED ، LOG و ERROR . این متد علاوه بر تنظیم تابع پاکسازی برای حذف این شنوندهها، رویدادهای مربوط به طرح ID URI را نیز مدیریت میکند.
تنظیم فراخوانیهای رویداد بازیکن
برای مدیریت پخش پاد تبلیغات بر اساس رویدادهای پخشکننده، متدهای VideoPlayer.onAdPodPlaying() ، VideoPlayer.onAdPodEnded() و VideoPlayer.onAdPodError() را ایجاد کنید:
تنظیمکننده (setter) رویداد onAdPodEnded را ایجاد کنید.
با ایجاد متد VideoPlayer.setOnAdPodEnded() یک تابع فراخوانی تنظیم کنید که هنگام پایان یک پاد تبلیغاتی اجرا شود. کلاس app از این متد برای از سرگیری پخش محتوا پس از وقفههای تبلیغاتی استفاده میکند.
مدیریت رویدادهای فراداده جریان
با ایجاد متد VideoPlayer.setEmsgEventHandler() یک تابع فراخوانی تنظیم کنید که بر اساس رویدادهای emsg اجرا شود. برای این راهنما، هنگام فراخوانی setEmsgEventHandler() خارج از video_player.js ، پارامتر scope را نیز اضافه کنید.
نمایش و پنهان کردن پخشکننده ویدیو برای نمایش تبلیغات
برای نمایش پخشکننده ویدیو در طول نمایش تبلیغات و پنهان کردن پخشکننده پس از پایان نمایش تبلیغات، متدهای VideoPlayer.show() و VideoPlayer.hide() را ایجاد کنید:
در مرحله بعد، یک کلاس مدیریت تبلیغات ایجاد کنید تا از IMA SDK برای ایجاد درخواست پخش جریان، دریافت مانیفست یک پاد تبلیغات، گوش دادن به رویدادهای پخش جریان IMA و ارسال رویدادهای emsg به IMA SDK استفاده کند.