Steam ट्रेलर HLS हैं: MP4 आपके ब्राउज़र में जुड़ता है
Steam ट्रेलर कोई पकड़ने लायक फ़ाइल नहीं है — यह फ़्रैगमेंट की प्लेलिस्ट है। डाउनलोडर प्लेलिस्ट की क्वालिटी पढ़ता है, और आपका ब्राउज़र उन्हें जोड़कर एक MP4 बनाता है।
Steam पहले ट्रेलर सादी MP4 और WebM फ़ाइलों के रूप में प्रकाशित करता था, और वे फ़ील्ड अब भी उसकी स्टोर API में मौजूद हैं। अब वे हमेशा खाली रहते हैं। इसके बजाय Steam जो प्रकाशित करता है वह एक HLS मास्टर प्लेलिस्ट है: एक छोटी टेक्स्ट फ़ाइल जो ट्रेलर के रेंडिशन बताती है और कुछ-कुछ सेकंड के फ़्रैगमेंट की ओर इशारा करती है।
पहले प्लेलिस्ट, फिर फ़्रैगमेंट
यहाँ रिज़ॉल्वर का काम जल्दी खत्म हो जाता है। यह स्टोर पेज का मेटाडेटा पढ़ता है, ट्रेलर की मास्टर प्लेलिस्ट URL लेता है, उसे पढ़ता है, और हर रेंडिशन के लिए एक पंक्ति लौटाता है — उसके रेज़ोल्यूशन, बिटरेट और फ़्रेम रेट के साथ। यह कभी वीडियो फ़्रैगमेंट नहीं लाता और कभी कुछ जोड़ता नहीं — वरना पूरा वीडियो बेवजह किसी सर्वर से गुज़रता।
| रिज़ॉल्वर क्या पढ़ता है | फिर ब्राउज़र क्या करता है |
|---|---|
| मास्टर प्लेलिस्ट: रेंडिशन, रेज़ोल्यूशन, बिटरेट, ऑडियो ग्रुप | आपका चुना रेंडिशन उठाता है |
| प्लेलिस्ट के अंदर का सेगमेंट टेम्पलेट | उस रेंडिशन के फ़्रैगमेंट Steam के CDN से लाता है और जोड़ता है |
| मास्टर जिस ऑडियो ग्रुप का नाम लेता है | वीडियो और AAC ऑडियो ट्रैक को एक MP4 में जोड़ता है |
जोड़ने का काम उसी खुले टैब में होता है, Steam के खुद के CDN (video.akamai.steamstatic.com) से। दो मिनट का ट्रेलर लगभग नब्बे फ़्रैगमेंट का होता है, इसलिए सामान्य कनेक्शन पर प्रोग्रेस बार कुछ ही सेकंड में भर जाता है।
क्वालिटी सूची पढ़ना
- हर पंक्ति एक रेंडिशन है जो ट्रेलर में वाक़ई है, सबसे ऊँचे रेज़ोल्यूशन से शुरू।
- पंक्तियों में रेज़ोल्यूशन और बिटरेट दिखते हैं, क्योंकि दो रेंडिशन का रेज़ोल्यूशन एक हो सकता है और उनके पीछे का डेटा अलग।
- Steam के ट्रेलर अक्सर 1920×1080 तक पहुँचते हैं, पर किसी छोटे इंडी ट्रेलर की सीमा बहुत नीचे हो सकती है।
- ट्रेलर और गेमप्ले क्लिप एक साथ सूचीबद्ध होते हैं; हर एक के साथ पोस्टर इमेज होती है ताकि डाउनलोड से पहले फ़र्क़ पता चले।
फ़्रैगमेंट बाइट-दर-बाइट तैयार MP4 में कॉपी होते हैं। तस्वीर और आवाज़ बिल्कुल वही है जो Steam का खुद का क्लाइंट उस रेज़ोल्यूशन पर चलाता है — जोड़ना कंटेनर का बदलाव है, री-एनकोड नहीं, इसलिए रास्ते में कुछ कुंद नहीं होता।
क्या गड़बड़ हो सकती है
दो चीज़ें, दोनों वीडियो की नहीं, नेटवर्क की। अगर Steam का स्टोर मेटाडेटा जवाब न दे, तो रिज़ॉल्वर विफलता बताने से पहले एक बार फिर कोशिश करता है। अगर प्लेलिस्ट खुद पढ़ी न जा सके, तो वही दोबारा कोशिश होती है — और फिर भी न चले, तो पेज वैसा ही बता देता है, ऐसा डाउनलोड देने के बजाय जो पूरा न हो।
बिना वीडियो वाला गेम पेज no_video लौटाता है। इसमें वे पेज भी हैं जहाँ इकलौता मीडिया स्क्रीनशॉट गैलरी है, जो बिना रिलीज़ हुए गेम के लिए आम है।
छोटी बात
- Steam अब सादी ट्रेलर फ़ाइलें नहीं देता; HLS ही इकलौता रास्ता है।
- रिज़ॉल्वर प्लेलिस्ट पढ़ता है; फ़्रैगमेंट आपका ब्राउज़र लाता है और जोड़ता है।
- तैयार MP4 स्ट्रीम की कॉपी है, री-एनकोड नहीं।
- कुछ भी इस साइट से होकर नहीं गुज़रता, और कुछ सेव नहीं होता।
सवाल
क्या डाउनलोड किया ट्रेलर Steam के चलाए ट्रेलर से कम क्वालिटी का है?
नहीं। फ़्रैगमेंट बाइट-दर-बाइट MP4 में कॉपी होते हैं, इसलिए तस्वीर और आवाज़ आपके चुने रेंडिशन से मेल खाती है — वही स्ट्रीम जो Steam का खुद का क्लाइंट उस रेज़ोल्यूशन पर चलाता है।
Steam डाउनलोड में प्रोग्रेस बार दिखता है और Pinterest के डाउनलोड में नहीं, क्यों?
क्योंकि Steam का CDN ब्राउज़र को फ़्रैगमेंट पढ़ने देता है, इसलिए पेज वाक़ई फ़ाइल डाउनलोड कर रहा होता है और प्रोग्रेस बता सकता है। Pinterest का CDN नहीं देता, इसलिए वह डाउनलोड सादा नेविगेशन ही होता है।
किसी गेम पेज पर वीडियो नहीं दिखते — क्यों?
उस पेज पर कोई ट्रेलर या गेमप्ले क्लिप लगा ही नहीं है। स्क्रीनशॉट गैलरी वीडियो नहीं हैं, और बिना रिलीज़ गेम में अक्सर लॉन्च के करीब आने तक कुछ नहीं होता।