इस गाइड में IMA डीएआई SDK टूल का इस्तेमाल करके बुकमार्क करने का तरीका बताया गया है मांग पर वीडियो (वीओडी) स्ट्रीम के लिए डाइनैमिक ऐड इंसर्शन (डीएआई) का इस्तेमाल करते समय. इसमें मान लिया गया है कि IMA डीएआई सही तरीके से लागू हो रहा है, जैसा कि यहां दिखाया गया है शुरू करें.
बुकमार्क करना क्या है?
बुकमार्क करना सेव करने और फिर किसी खास पॉइंट पर वापस जाने की सुविधा है का इस्तेमाल किया जा सकता है. मान लीजिए कोई उपयोगकर्ता पांच मिनट का कॉन्टेंट देखता है, वीडियो स्ट्रीम से बाहर निकलकर, इस पर वापस आ जाता है. बुकमार्क करने से स्ट्रीम में उपयोगकर्ता की स्थिति की जानकारी दे सकती है, ताकि स्ट्रीम को वहीं से सुना जा सके जहां से उसे चलाया जा सकता है इससे दर्शकों को बेहतरीन अनुभव मिलता है.
बेहतर सुविधाओं के साथ डीएआई बुकमार्क
डीएआई स्ट्रीम को बुकमार्क करते समय, आपको स्ट्रीम आईडी और समय रिकॉर्ड करना होगा जब उपयोगकर्ता वीडियो छोड़ता है. जब उपयोगकर्ता वापस आता है, तो स्ट्रीम और समय बचाने के लिए किया जा सकता है. अनुरोध किए गए हर इंस्टेंस के बाद से लाइव स्ट्रीम में अलग-अलग अवधि में विज्ञापन के लिए ब्रेक हो सकते हैं. इससे स्ट्रीम को सेव किया जा सकता है समय काम नहीं करेगा. आप असल में उसी से जारी रखना चाहते हैं कॉन्टेंट का समय देखें.
बचाव के लिए रूपांतरण के तरीके
IMA डीएआई SDK टूल, कॉन्टेंट टाइम का अनुरोध करने के लिए कई तरीके उपलब्ध कराता है दिए गए स्ट्रीम टाइम और स्ट्रीम के समय के लिए दिए गए कॉन्टेंट के लिए समय. इन रूपांतरण विधियों का उपयोग करके आप बुकमार्क किए गए स्ट्रीमिंग टाइम सेट किया हो और फिर स्ट्रीम में लगने वाले समय को देखें . यहां इसका तरीका बताया गया है. साथ ही, इसका लिंक भी दिया गया है को एक सैंपल ऐप्लिकेशन में जोड़ना होगा, जिसमें काम करता हुआ बुकमार्क करने की सुविधा दिखाई गई है.
बुकमार्क सेव किए जा रहे हैं
कॉन्टेंट प्लेयर के रुकने पर, बुकमार्क सेव करें.
onPause() {
var bookmarkTime = Math.floor(
streamManager.contentTimeForStreamTime(videoElement.currentTime));
}
बुकमार्क लोड हो रहे हैं
स्ट्रीम के लिए फिर से अनुरोध करने पर बुकमार्क लोड करें.
function loadUrl(url) {
hls.on(Hls.Events.MANIFEST_PARSED, () => {
var startTime = 0;
if (bookmarkTime) {
var startTime = streamManager.streamTimeForContentTime(bookmarkTime);
// Seeking on load triggers the onSeekEnd event, so treat this seek as
// if it's snapback. Without this, resuming at a bookmark kicks you
// back to the ad before the bookmark.
isSnapback = true;
}
hls.startLoad(startTime);
videoElement.addEventListener('loadedmetadata', () => { videoElement.play(); });
});
hls.loadSource(url);
hls.attachMedia(videoElement);
}
सैंपल ऐप्लिकेशन
सैंपल ऐप्लिकेशन डाउनलोड करना ताकि बुकमार्क लागू किया जा सके.