हाल ही में मैं ब्राउज़र में MP4s स्ट्रीमिंग के लिए विभिन्न विधियों का शोध कर रहा हूं। फ्लैश मीडिया सर्वर यहां एक स्पष्ट विकल्प है (क्लाउडफ़्रंट का उपयोग करके), और मैंने देखा है कि अधिकांश समाधान आरटीएमपी प्रोटोकॉल का उपयोग करते हैं।यूट्यूब के एचडी वीडियो स्ट्रीमिंग सर्वर प्रौद्योगिकी?
हालांकि, मैं Firebug और क्रोम डिबगर के साथ यूट्यूब पर कुछ समय बिताया पता लगाना कैसे अपने स्ट्रीमिंग का काम किया है और मैं अपने वीडियो और गुणवत्ता के कुछ के बीच में कुछ दिलचस्प मतभेद की खोज की।
मेरे दो नमूना वीडियो एक और B हैं। ए 480 पी तक उपलब्ध है और बी 1080p तक उपलब्ध है। दोनों वीडियो के लिए, HTTP पर एच 2264 वीडियो और एएसी ऑडियो के साथ एक एफएलवी कंटेनर में 480 पी तक की सभी दरें प्रदान की जाती हैं। यहां दिलचस्प बात यह है कि यदि आपने अभी तक पूरे वीडियो को डाउनलोड नहीं किया है (कैश किया गया है), और आप वीडियो के एक अनिश्चित हिस्से में आगे बढ़ने का प्रयास करते हैं, तो लक्ष्य ऑफ़सेट के बराबर 'प्रारंभ' पैरामीटर के साथ एक नया अनुरोध किया जाएगा मिलीसेकेंड। 480p पर वीडियो एक से उदाहरण:
http://v11.lscache8.c.youtube.com/videoplayback?ip=0.0.0.0&sparams=id%2Cexpire%2Cip%2Cipbits%2Citag%2Calgorithm%2Cburst%2Cfactor%2Coc%3AU0dWTldQVF9FSkNNNl9PSlhJ&fexp=904806%2C902906%2C903711&algorithm=throttle-factor&itag=35&ipbits=0&burst=40&sver=3&expire=1279756800&key=yt1&signature=D2D704D63C242CF187CAA5B5D5BAFB8DFACAC5FF.39180C01559C976717B651A7EB1D0C6249231EB7&factor=1.25&id=8568eb3135971f6f&begin=111863
Response Headers:
Cache-Control:public,max-age=23472
Connection:close
Content-Length:14320637
Content-Type:video/x-flv
Date:Wed, 21 Jul 2010 17:23:48 GMT
Expires:Wed, 21 Jul 2010 23:55:00 GMT
Last-Modified:Wed, 19 May 2010 12:31:41 GMT
Server:gvs 1.0
X-Content-Type-Options:nosniff
फ़ाइल इस URL द्वारा लौटाए गए एक पूरी तरह से वैध वीडियो का केवल भाग युक्त के बाद ऑफसेट अनुरोध किया FLV है।
मैंने वीडियो बी के उच्च रिज़ॉल्यूशन संस्करणों पर 720 पी और 1080 पी पर एक ही तरह का परीक्षण किया, यूट्यूब एक एमपी 4 कंटेनर में एक वीडियो वापस करेगा, एच 2264 वीडियो और एएसी ऑडियो के साथ भी। मेरे लिए क्या प्रभावशाली है कि उनका सर्वर एमपी 4 वीडियो ('स्टार्ट' पैरामीटर के माध्यम से) के लिए एक ही प्रकार का ऑफ़सेट लेता है और एक वैध, स्ट्रीम करने योग्य एमपी 4 (सही ऑफसेट के साथ फ़ाइल के सामने मूव परमाणु) देता है जिसमें केवल इसमें शामिल होता है वीडियो के अनुरोधित हिस्से।
तो, यूट्यूब इस करता है? वे सही हेडर के साथ फ्लाई पर एफएलवी या एमपी 4 कंटेनर कैसे उत्पन्न करते हैं और केवल अनुरोधित वीडियो के वांछित सेगमेंट को कैसे उत्पन्न करते हैं? मुझे पता है कि यह वांछित प्रारंभ बिंदु और क्यूटी-फास्टस्टार्ट स्क्रिप्ट को स्ट्रीम के मोर्चे पर मूव परमाणु को स्थानांतरित करने के लिए एफएफएमपीईजी का उपयोग करके पूरा किया जा सकता है, लेकिन ऐसा लगता है कि लाखों लोगों के लिए मांग को संभालने में बहुत धीमी गति होगी यूट्यूब दर्शक
विचार?
अग्रिम धन्यवाद!
पाद-टिप्पणी: मैं इस बिंदु पर 1 से अधिक लिंक शामिल करने की अनुमति नहीं कर रहा हूँ, इसलिए यहाँ वीडियो एक का यूआरएल है: http: // www.youtube .com/घड़ी वी = hWjrMTWXH28 "वीडियो उपलब्ध 480p अप करने के लिए"
?
एक साइड नोट के रूप में .. Vimeo किसी भी समान तकनीक का उपयोग नहीं करता है। जब आप Vimeo पर एक वीडियो देखते हैं, तो संपूर्ण एमपी 4 को क्रमशः डाउनलोड किया जाता है और आप पहले से ही बफर किए गए हिस्से के पीछे साफ़ नहीं कर सकते हैं। – bgentry