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) معیار ایک عالمگیر ABR فارمیٹ کے طور پر جاری کیا جو کسی مخصوص فروش سے منسلک نہیں ہے۔ 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 پر کم تاخیر فراہم کرتا ہے، جبکہ DASH زیادہ لچکدار ABR الگورتھم کنفیگریشن کی وجہ سے Android پر ترجیح دی جاتا ہے۔
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 ایپلیکیشنز بناتا ہے۔ ہم آپ کو مشورہ دیں گے اور بہترین حل تجویز کریں گے۔
مزید پڑھیں