2017-04-17 14 views
6

जावास्क्रिप्ट में एक MPEG-डैश खिलाड़ी बनाने के लिए गैर-क्रमिक रूप से। हालांकि, मैं एक मुद्दा तलाश को लागू हो रही हैं और वहाँ कैसे एमएसई और इसी स्रोत बफर वस्तु के साथ इसे संभाल करने के लिए बहुत संदर्भ सामग्री होने के लिए प्रकट नहीं होता।लोड एमपीईजी डैश सेगमेंट की तलाश

जहां तक ​​मैं कह सकता हूं, बशर्ते सेगमेंट ठीक से एन्कोड किए गए हों (मैं अलग-अलग एम 4 एस फाइलों को सेगमेंट टेम्पलेट के माध्यम से उपयोग कर रहा हूं, बाइट रेंज नहीं), किसी को केवल वांछित, मनमानी बिंदु के लिए सेगमेंट जोड़ना होगा 10 सेकंड चिह्न), और फिर वीडियो एलीमेंट के वर्तमान समय पैरामीटर को चिह्न पर भी सेट करें। यह सब काम करता है, मैं बिना किसी त्रुटि के सेगमेंट बफर की पुष्टि कर सकता हूं, और सेगमेंट का पहला फ्रेम भी वीडियो एलीमेंट के भीतर दृश्यमान रूप से लोड होगा। हालांकि, यह नहीं खेलेंगे, और स्क्रबिंग संभव नहीं है। कोई त्रुटि नहीं, या तो। यह केवल अधिक डेटा के लिए इंतजार कर रहा है जैसे कार्य करता है।

यह मनमाने ढंग से बिंदु तक सभी पिछले खंडों जोड़कर उपचार है, लेकिन यह सिर्फ व्यावहारिक नहीं है। उदाहरण के लिए, dash.js ऐसा नहीं करता है (लेकिन मैं उचित रूप से मांगने के लिए अलग-अलग क्या कर रहा हूं ठीक से पिन नहीं कर सकता)। मैं मैं गतिशील क्रम विश्वास मैं खंडों क्रमिक रूप से लोड हो रहा है कर रहा हूँ में ब्राउज़र चाल करने के लिए में, किसी भी तरह sidx, mfhd, और/या tfdt बक्से को संशोधित करने के लिए है अनुमान लगा रहा हूँ - लेकिन यह है कि से शीर्ष पर इस तरह के एक मानक के लिए लगता है।

किसी को भी कैसे एक मनमाना बिंदु पर जाने और प्लेबैक जारी रखने के लिए पता है, जब एमएसई स्रोत बफर को खंडित MP4 क्षेत्रों खिला?

उत्तर

0

हल।

बाहर कर देता है यह स्वचालित रूप से इतने लंबे समय के रूप में काम करेंगे:

ए)-फ्रेम ठीक से संरेखित कर रहे हैं। (वे थे, लेकिन कभी-कभी यह बताने की चुनौती है कि, इस मामले में, अगर किसी के एन्कोडिंग या उनके कार्यान्वयन के कारण कोई त्रुटि शुरू की जाती है।)

बी) सेगमेंट (और निम्नलिखित) खोज बिंदु पर लोड किए गए हैं। इसलिए, यदि 10 के निशान की तलाश है, तो सेगमेंट लोडिंग 10 के निशान से शुरू होनी चाहिए और आगे बढ़ना चाहिए।

आश्चर्यजनक रूप से, मेरे पास कई बार पहले (काफी स्पष्ट) सेटअप था, लेकिन यह ठीक से खेलने में विफल रहा या कई प्रतिपादन हिचकी पेश किए। जहां तक ​​मैं कह सकता हूं, हालांकि, वे सेगमेंट आयात/बफर रूटीन में मामूली कार्यान्वयन त्रुटि के कारण थे।

संबंधित मुद्दे