Adaptive Bitrate (ABR) एक स्ट्रीमिंग तकनीक है जो उपयोगकर्ता के चैनल बैंडविड्थ के आधार पर वीडियो गुणवत्ता को गतिशील रूप से बदलती है। प्रोग्रेसिव डाउनलोड के विपरीत, ABR वीडियो को 2–10 सेकंड के छोटे खंडों में विभाजित करता है और चलते-फिरते उनके बीच स्विच करता है। Bitmovin वीडियो डेवलपर रिपोर्ट (2025) के अनुसार, 86% स्ट्रीमिंग सेवाएं मोबाइल उपकरणों पर सुचारू प्लेबैक सुनिश्चित करने के लिए ABR का उपयोग करती हैं।
मुख्य बिंदु
Adaptive Bitrate (ABR) मीडिया सामग्री स्ट्रीम करने की एक विधि है जिसमें वीडियो फ़ाइल को विभिन्न बिटरेट और रिज़ॉल्यूशन वाले कई वेरिएंट में एन्कोड किया जाता है, और प्लेयर वास्तविक समय में स्वचालित रूप से उपयुक्त वेरिएंट का चयन करता है। उपयोगकर्ता को उनकी वर्तमान इंटरनेट स्पीड के अनुसार बिना बफरिंग के अधिकतम संभव गुणवत्ता मिलती है।
पारंपरिक प्रोग्रेसिव डाउनलोड के विपरीत, ABR को पूरी फ़ाइल लोड करने की आवश्यकता नहीं होती — प्लेयर वांछित गुणवत्ता के छोटे सेगमेंट का अनुरोध करता है और सेगमेंट के बीच दूसरे बिटरेट पर स्विच कर सकता है। यह तकनीक को मोबाइल एप्लिकेशन के लिए अपरिहार्य बनाता है, जहां नेटवर्क स्पीड लगातार बदलती रहती है।
अनुकूली स्ट्रीमिंग तकनीक को पहली बार 2006 में Move Networks द्वारा ABC टेलीविजन चैनल के प्रसारण के लिए व्यावसायिक रूप से लागू किया गया था। 2009 में, Apple ने HTTP Live Streaming (HLS) पेश किया, जो HTTP पर आधारित पहला व्यापक रूप से अपनाया गया ABR मानक बना और आज भी iOS इकोसिस्टम पर हावी है।
2012 में, MPEG ने MPEG-DASH (Dynamic Adaptive Streaming over HTTP) मानक जारी किया, जो किसी विशिष्ट विक्रेता से बंधा नहीं है। DASH सभी प्रमुख प्लेटफार्मों द्वारा समर्थित है और ISO द्वारा अपनाया गया एकमात्र ABR मानक है।
ABR स्ट्रीमिंग प्रक्रिया सामग्री तैयारी चरण से शुरू होती है: स्रोत वीडियो को विभिन्न बिटरेट वाले कई वेरिएंट में एन्कोड किया जाता है — उदाहरण के लिए, 144p, 360p, 720p, 1080p और 4K। प्रत्येक वेरिएंट को समान अवधि के सेगमेंट में विभाजित किया जाता है, आमतौर पर 2, 4, 6 या 10 सेकंड।
सर्वर पर एक मैनिफेस्ट फ़ाइल बनाई जाती है जो उपलब्ध वेरिएंट, उनके बिटरेट, रिज़ॉल्यूशन, कोडेक और सेगमेंट URL का वर्णन करती है। प्लेयर मैनिफेस्ट डाउनलोड करता है, उसका विश्लेषण करता है और तेज़ शुरुआत के लिए सबसे कम बिटरेट पर प्लेबैक शुरू करता है।
<!-- MPEG-DASH MPD manifest -->
<MPD profiles="urn:mpeg:dash:profile:isoff-live:2011">
<Period>
<AdaptationSet mimeType="video/mp4">
<Representation id="720p" bandwidth="2800000"
width="1280" height="720">
<SegmentTemplate duration="4"
media="seg_$Number$.m4s"/>
</Representation>
</AdaptationSet>
</Period>
</MPD>
प्लेबैक के दौरान, क्लाइंट साइड पर ABR एल्गोरिदम लगातार नेटवर्क स्थितियों और बफर स्थिति की निगरानी करता है। यदि बैंडविड्थ गिरता है, तो प्लेयर बफरिंग से बचने के लिए कम बिटरेट पर अगले सेगमेंट का अनुरोध करता है। जब नेटवर्क में सुधार होता है, तो बिटरेट बढ़ जाता है।
बिटरेट के बीच स्विचिंग सेगमेंट सीमाओं पर होती है, जो गुणवत्ता परिवर्तनों को उपयोगकर्ता के लिए लगभग अदृश्य बनाती है। आधुनिक प्लेयर विभिन्न वेरिएंट के बीच मुख्य फ्रेम को सिंक्रोनाइज़ कर सकते हैं ताकि स्विचिंग बिना विज़ुअल आर्टिफैक्ट के हो।
तीन मुख्य ABR प्रोटोकॉल स्ट्रीमिंग वीडियो बाजार पर हावी हैं: Apple से HLS, एक खुले मानक के रूप में MPEG-DASH, और Microsoft से Smooth Streaming। प्रत्येक प्रोटोकॉल मैनिफेस्ट प्रारूप, सेगमेंटेशन विधि और एन्क्रिप्शन तंत्र को परिभाषित करता है।
| प्रोटोकॉल | डेवलपर | मैनिफेस्ट | सेगमेंट | एन्क्रिप्शन |
|---|---|---|---|---|
| HLS | Apple | .m3u8 (M3U प्लेलिस्ट) | .ts या .fmp4 | AES-128, SAMPLE-AES |
| MPEG-DASH | ISO/MPEG | .mpd (XML) | .m4s या .webm | CENC (सामान्य एन्क्रिप्शन) |
| Smooth Streaming | Microsoft | .ismc (XML, IIS) | .ismv / .isma | PlayReady (AES-128 CT) |
HLS सबसे व्यापक ABR प्रोटोकॉल है, जो iOS, tvOS और macOS पर Safari में निर्मित है। मैनिफेस्ट प्रारूप विस्तारित M3U प्लेलिस्ट पर आधारित है, जहां मास्टर प्लेलिस्ट में विभिन्न बिटरेट और रिज़ॉल्यूशन वाले वेरिएंट स्ट्रीम के लिंक होते हैं।
प्रत्येक वेरिएंट सेगमेंट की सूची के साथ अपनी मीडिया प्लेलिस्ट को संदर्भित करता है। HLS स्लाइडिंग विंडो तंत्र के माध्यम से लाइव प्रसारण का समर्थन करता है, जहां पुराने सेगमेंट हटा दिए जाते हैं और आने पर नए जोड़े जाते हैं।
MPEG-DASH एकमात्र ABR मानक है जिसे 2012 में ISO/IEC 23009-1 के रूप में अपनाया गया। HLS के विपरीत, DASH XML मैनिफेस्ट (MPD — Media Presentation Description) का उपयोग करता है और किसी विशिष्ट कंटेनर प्रारूप से बंधा नहीं है — यह fMP4, WebM और अन्य का समर्थन करता है।
DASH लचीला सेगमेंटेशन प्रदान करता है: सेगमेंट की एक ही स्ट्रीम के भीतर अलग-अलग अवधि हो सकती है, जो विलंबता और HTTP अनुरोध ओवरहेड के बीच संतुलन को अनुकूलित करती है। लाइव प्रसारण के लिए, DASH SegmentTemplate पैटर्न का समर्थन करता है।
Bitmovin परीक्षणों (2025) के अनुसार, HLS और DASH स्टार्टअप समय और बिटरेट स्विचिंग आवृत्ति में समान प्रदर्शन दिखाते हैं। HLS हार्डवेयर समर्थन के कारण iOS पर कम विलंबता प्रदान करता है, जबकि अधिक लचीली ABR एल्गोरिदम कॉन्फ़िगरेशन के कारण Android पर DASH को प्राथमिकता दी जाती है।
ABR का हृदय बिटरेट चयन एल्गोरिदम है जो यह निर्धारित करता है कि आगे कौन सा वेरिएंट अनुरोध करना है। एल्गोरिदम के तीन मुख्य परिवार हैं: थ्रूपुट-आधारित, बफर-आधारित और हाइब्रिड। प्रत्येक दृष्टिकोण की अपनी ताकत और सीमाएं हैं।
थ्रूपुट-आधारित एल्गोरिदम पिछले सेगमेंट की डाउनलोड गति के आधार पर नेटवर्क बैंडविड्थ का अनुमान लगाते हैं। एल्गोरिदम अधिकतम बिटरेट का चयन करता है जो मापी गई थ्रूपुट के 80–90% से अधिक न हो, उतार-चढ़ाव के लिए मार्जिन छोड़ता है।
इस दृष्टिकोण का दोष अल्पकालिक गति स्पाइक्स के प्रति इसकी संवेदनशीलता है। यदि सेगमेंट डाउनलोड के दौरान नेटवर्क तेजी से गिरता है, तो थ्रूपुट अनुमान बहुत कम हो जाता है, अनावश्यक रूप से गुणवत्ता कम करता है।
बफर-आधारित एल्गोरिदम प्लेयर के बफर भराव के आधार पर निर्णय लेते हैं। यदि बफर 70% से अधिक भरा है, तो एल्गोरिदम बिटरेट बढ़ाता है; यदि बफर 20% से नीचे गिरता है, तो बफरिंग को रोकने के लिए गुणवत्ता को तेजी से कम करता है।
मुख्य लाभ अल्पकालिक नेटवर्क गिरावट के दौरान कोई झूठी कमी नहीं है, क्योंकि बफर उतार-चढ़ाव को सुचारू करता है। कमी सतत बैंडविड्थ परिवर्तनों पर धीमी प्रतिक्रिया है।
ExoPlayer और AVPlayer जैसे आधुनिक प्लेयर हाइब्रिड एल्गोरिदम का उपयोग करते हैं जो थ्रूपुट अनुमान और बफर स्थिति को जोड़ते हैं। ExoPlayer डिफ़ॉल्ट DefaultTrackSelector ABR एल्गोरिदम का उपयोग करता है, जो दोनों मापदंडों पर विचार करता है।
2024–2025 में, ML-आधारित एल्गोरिदम सक्रिय रूप से तैनात किए जा रहे हैं, जो ऐतिहासिक डेटा के आधार पर भविष्य के नेटवर्क परिवर्तनों की भविष्यवाणी करते हैं। Netflix, YouTube और Twitch बिटरेट चयन को अनुकूलित करने के लिए अपने स्वयं के मशीन लर्निंग मॉडल का उपयोग करते हैं, जिससे स्विच की संख्या 30–40% कम हो जाती है।
मोबाइल एप्लिकेशन सेलुलर नेटवर्क (4G/LTE, 5G) की अस्थिरता और सीमित डिवाइस कंप्यूटिंग शक्ति के कारण ABR पर विशेष मांग रखते हैं। प्लेयर को ऊर्जा खपत और डेटा उपयोग को कम करते हुए नेटवर्क परिवर्तनों के लिए जल्दी से अनुकूल होना चाहिए।
OpenSignal (2025) के अनुसार, शहरी क्षेत्रों में औसत 4G स्पीड 5 से 50 Mbps तक होती है, और गति में रहने पर 1 Mbps तक गिर सकती है। ABR एल्गोरिदम को सुरंग या लिफ्ट में प्रवेश करते समय बफरिंग से बचने के लिए 1–2 सेगमेंट के भीतर बिटरेट के बीच स्विच करना होता है।
val trackSelector = DefaultTrackSelector(context).apply {
setParameters(buildUponParameters {
setMaxVideoSizeSd()
setAllowVideoMixedMimeTypeAdaptiveness(true)
setPreferredVideoRoleFlags(
roleFlags(C.ROLE_FLAG_DESCRIBES_VIDEO_AND_AUDIO)
)
})
}
val adaptiveTrackSelectionFactory =
AdaptiveTrackSelection.Factory()
val player = ExoPlayer.Builder(context)
.setTrackSelector(trackSelector)
.setMediaSourceFactory(
DashMediaSource.Factory(dataSourceFactory)
)
.build()
मोबाइल एप्लिकेशन के लिए, तेज़ प्रारंभिक लोडिंग (पहले फ्रेम तक का समय 2 सेकंड से कम) महत्वपूर्ण है। सबसे कम उपलब्ध बिटरेट पर प्लेबैक शुरू करने और फिर बफर भरने पर गुणवत्ता बढ़ाने की सिफारिश की जाती है — start-low-and-rise रणनीति।
ऊर्जा खपत भी महत्वपूर्ण है: हार्डवेयर-त्वरित डिकोडिंग का उपयोग सभी बिटरेट के लिए किया जाना चाहिए। पुराने उपकरणों पर उच्च बिटरेट (1080p और ऊपर) का सॉफ़्टवेयर डिकोडिंग ओवरहीटिंग और थ्रॉटलिंग का कारण बन सकता है।
मुख्य ABR गुणवत्ता मीट्रिक: बिटरेट स्विच की संख्या, पहले फ्रेम तक का समय (TTFF), और कुल देखने के समय के लिए स्विच अनुपात। QoE (गुणवत्ता अनुभव) सूचकांक की गणना बिटरेट, स्विच दंड और बफरिंग दंड के भारित योग के रूप में की जाती है।
ABR निगरानी के लिए, प्लेयर से एनालिटिक्स एकत्र करने की सिफारिश की जाती है: वर्तमान बिटरेट, बफर आकार, बैंडविड्थ, स्विच की संख्या और प्रकार। यह डेटा सामग्री प्रदाताओं को उपलब्ध बिटरेट के सेट को अनुकूलित करने और अपने विशिष्ट दर्शकों के लिए सेगमेंटेशन कॉन्फ़िगर करने में मदद करता है।
अक्सर पूछे जाने वाले प्रश्न
Adaptive Bitrate (ABR) एक स्ट्रीमिंग तकनीक है जो नेटवर्क स्थितियों के आधार पर वीडियो गुणवत्ता को गतिशील रूप से बदलती है। प्लेयर वीडियो को सेगमेंट में विभाजित करता है और प्रत्येक के लिए इष्टतम बिटरेट का चयन करता है, मोबाइल उपकरणों पर बिना बफरिंग के सुचारू प्लेबैक सुनिश्चित करता है।
HLS एक Apple प्रोटोकॉल है जो M3U प्लेलिस्ट और ट्रांसपोर्ट स्ट्रीम (.ts) का उपयोग करता है। MPEG-DASH XML मैनिफेस्ट (.mpd) और लचीले सेगमेंट प्रारूपों वाला एक खुला ISO मानक है। HLS iOS पर सबसे अच्छा काम करता है, DASH Android और वेब पर।
ABR बफरिंग को समाप्त करके अनुभव की गुणवत्ता में सुधार करता है: नेटवर्क खराब होने पर वीडियो अस्थायी रूप से रिज़ॉल्यूशन कम कर सकता है, लेकिन रुकता नहीं है। उपयोगकर्ता लगातार बफरिंग वाले रुक-रुक कर चलने वाले 4K की तुलना में सुचारू 720p वीडियो पसंद करते हैं।
ExoPlayer एक हाइब्रिड एल्गोरिदम DefaultTrackSelector का उपयोग करता है जो नेटवर्क बैंडविड्थ और बफर भराव पर विचार करता है। AdaptiveTrackSelection.Factory के माध्यम से अनुकूलन के साथ थ्रूपुट-आधारित और बफर-आधारित रणनीतियां भी उपलब्ध हैं।
सेगमेंट अवधि अनुकूलन आवृत्ति निर्धारित करती है: छोटे सेगमेंट (2 सेकंड) नेटवर्क परिवर्तनों पर तेजी से प्रतिक्रिया करते हैं लेकिन अधिक HTTP अनुरोध बनाते हैं। 4–6 सेकंड के सेगमेंट अनुकूलन गति और ओवरहेड को संतुलित करने वाले मोबाइल उपकरणों के लिए इष्टतम हैं।
सारांश
हम एक मोबाइल एप्लिकेशन टर्नकी विकसित करेंगे
IT Sectr 2017 से स्टार्टअप और व्यवसायों के लिए iOS और Android एप्लिकेशन बनाता है। हम आपको सलाह देंगे और सर्वोत्तम समाधान प्रस्तावित करेंगे।
यह भी पढ़ें