Adaptive Bitrate (ABR) — foydalanuvchi kanalining o'tkazish qobiliyatiga qarab video sifatini dinamik ravishda o'zgartiruvchi oqimli uzatish texnologiyasidir. Progressiv yuklab olishdan farqli o'laroq, ABR videoni 2–10 soniyalik kichik segmentlarga ajratadi va ular orasida onlayn ravishda almashadi. Bitmovin Video Developer Report (2025) tadqiqotiga ko'ra, striming xizmatlarining 86% mobil qurilmalarda silliq ijro etishni ta'minlash uchun ABR dan foydalanadi.
Asosiy ma'lumotlar
Adaptive Bitrate (ABR) — media kontentni oqimli uzatish usuli bo'lib, bunda video fayl turli bitrate va rezolyusiyalarda bir nechta variantlarga kodlanadi va pleyer real vaqtda avtomatik ravishda mos variantni tanlaydi. Foydalanuvchi joriy internet tezligida buferlashsiz mumkin bo'lgan maksimal sifatni oladi.
An'anaviy progressiv yuklab olishdan (progressive download) farqli o'laroq, ABR butun faylni yuklashni talab qilmaydi — pleyer kerakli sifatdagi qisqa segmentlarni so'raydi va segmentlar orasida boshqa bitratega o'tishi mumkin. Bu texnologiyani tarmoq tezligi doimiy o'zgarib turadigan mobil ilovalar uchun ajralmas qiladi.
Adaptiv striming texnologiyasi birinchi marta 2006 yilda Move Networks tomonidan ABC telekanalini translyatsiya qilish uchun tijorat maqsadida amalga oshirildi. 2009 yilda Apple HTTP Live Streaming (HLS) ni taqdim etdi, bu HTTP asosidagi birinchi keng tarqalgan ABR standarti bo'ldi va hali ham iOS ekotizimida hukmronlik qiladi.
2012 yilda MPEG MPEG-DASH (Dynamic Adaptive Streaming over HTTP) standartini universal ABR formati sifatida chiqardi. DASH barcha yirik platformalar tomonidan qo'llab-quvvatlanadi va ISO tomonidan qabul qilingan yagona ABR standartidir.
ABR striming jarayoni kontentni tayyorlash bosqichida boshlanadi: asl video turli bitratelarda — masalan, 144p, 360p, 720p, 1080p va 4K da kodlanadi. Har bir variant bir xil uzunlikdagi segmentlarga bo'linadi, odatda 2, 4, 6 yoki 10 soniya.
Serverda mavjud variantlarni (representations), ularning bitrateini, rezolyusiyasini, kodekini va segmentlarga havolalarni tavsiflovchi manifest fayli yaratiladi. Pleyer manifestni yuklab oladi, uni tahlil qiladi va tez boshlash uchun eng past bitratedan ijro etishni boshlaydi.
<!-- 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>
Ijro vaqtida ABR algoritmi mijoz tomonida doimiy ravishda tarmoq va bufer holatini kuzatadi. Agar o'tkazish qobiliyati pasaysa, pleyer keyingi segmentlarni pastroq bitrateda so'raydi, buferlashni oldini olish uchun. Tarmoq yaxshilanganda bitrate oshiriladi.
Bitratelar o'rtasidagi almashinuv segmentlar chegarasida sodir bo'ladi, bu sifat o'zgarishini foydalanuvchi uchun deyarli sezilmas qiladi. Zamonaviy pleyerlar vizual artefaktlarsiz almashinuv uchun turli variantlar orasidagi asosiy kadrlarni sinxronlashtira oladi.
Uchta asosiy ABR protokoli video striming bozorida hukmronlik qiladi: Apple dan HLS, ochiq standart sifatida MPEG-DASH va Microsoft dan Smooth Streaming. Har bir protokol manifest formatini, segmentatsiya usulini va shifrlash mexanizmini belgilaydi.
| Protokol | Ishlab chiqaruvchi | Manifest | Segmentlar | Shifrlash |
|---|---|---|---|---|
| HLS | Apple | .m3u8 (M3U playlist) | .ts yoki .fmp4 | AES-128, SAMPLE-AES |
| MPEG-DASH | ISO/MPEG | .mpd (XML) | .m4s yoki .webm | CENC (Common Encryption) |
| Smooth Streaming | Microsoft | .ismc (XML, IIS) | .ismv / .isma | PlayReady (AES-128 CT) |
HLS — eng keng tarqalgan ABR protokoli, iOS, tvOS va macOS da Safari ga o'rnatilgan. Manifest formati kengaytirilgan M3U pleylistlariga asoslangan bo'lib, asosiy pleylist (master playlist) turli bitrate va rezolyusiyalardagi variantlarga (variant streams) havolalarni o'z ichiga oladi.
Har bir variant segmentlar ro'yxati bilan o'z media pleylistiga murojaat qiladi. HLS sirpanchiq oyna (sliding window) mexanizmi orqali jonli translyatsiyalarni qo'llab-quvvatlaydi, bunda eski segmentlar olib tashlanadi va yangilari kelishi bilan qo'shiladi.
MPEG-DASH — 2012 yilda ISO/IEC 23009-1 tomonidan qabul qilingan yagona ABR standarti. HLS dan farqli o'laroq, DASH XML manifestidan (MPD — Media Presentation Description) foydalanadi va ma'lum bir konteyner formatiga bog'liq emas — fMP4, WebM va boshqalarni qo'llab-quvvatlaydi.
DASH moslashuvchan segmentatsiyani ta'minlaydi: segmentlar bir oqim ichida turli uzunlikda bo'lishi mumkin, bu kechikish va HTTP so'rovlari yuki o'rtasidagi nisbatni optimallashtiradi. Jonli translyatsiyalar uchun DASH segment shablonlarini (SegmentTemplate) qo'llab-quvvatlaydi.
Bitmovin (2025) testlariga ko'ra, HLS va DASH ishga tushirish vaqti va bitrate almashinuvi chastotasi bo'yicha taqqoslanadigan samaradorlikni ko'rsatadi. HLS iOS da apparat yordami tufayli kamroq kechikishni ta'minlaydi, DASH esa ABR algoritmlarini moslashuvchan sozlash imkoniyati tufayli Android da afzal ko'riladi.
ABR ning yuragi — keyingi qaysi variantni so'rashni aniqlaydigan bitrate tanlash algoritmi. Uchta asosiy algoritm oilasi mavjud: throughput-based, buffer-based va gibrid (hybrid). Har bir yondashuvning o'z kuchli tomonlari va cheklovlari bor.
Throughput-based algoritmlar tarmoq o'tkazish qobiliyatini oldingi segmentlarning yuklab olish tezligi asosida baholaydi. Algoritm o'lchangan o'tkazish qobiliyatining 80–90% dan oshmaydigan maksimal bitrateni tanlaydi, tebranishlar uchun zaxira qoldiradi.
Ushbu yondashuvning kamchiligi qisqa muddatli tezlik sakrashlariga sezgirlikdir. Agar tarmoq segmentni yuklash paytida keskin pasaysa, o'tkazish qobiliyati bahosi past bo'ladi va sifat keraksiz ravishda pasaytiriladi.
Buffer-based algoritmlar qarorlarni pleyer buferining to'ldirilganligi asosida qabul qiladi. Agar bufer 70% dan ko'proq to'lgan bo'lsa, algoritm bitrateni oshiradi; agar bufer 20% dan pastga tushsa — buferlashni oldini olish uchun sifatni keskin pasaytiradi.
Asosiy afzallik — qisqa muddatli tarmoq pasayishlarida soxta pasayishlarning yo'qligi, chunki bufer tebranishlarni tekislaydi. Kamchiligi — o'tkazish qobiliyatining barqaror o'zgarishlariga sekin reaksiya.
Zamonaviy pleyerlar, masalan ExoPlayer va AVPlayer, o'tkazish qobiliyatini baholash va bufer holatini birlashtiruvchi gibrid algoritmlardan foydalanadi. ExoPlayer sukut bo'yicha ikkala parametrni hisobga oluvchi DefaultTrackSelector ABR algoritmidan foydalanadi.
2024–2025 yillarda tarixiy ma'lumotlar asosida kelajakdagi tarmoq o'zgarishlarini bashorat qiluvchi ML asosidagi algoritmlar faol joriy etilmoqda. Netflix, YouTube va Twitch bitrate tanlashni optimallashtirish uchun o'zlarining mashina o'rganish modellaridan foydalanadi, bu esa almashinuvlar sonini 30–40% ga kamaytiradi.
Mobil ilovalar uyali tarmoqlarning (4G/LTE, 5G) beqarorligi va qurilmalarning cheklangan hisoblash quvvati tufayli ABR ga alohida talablar qo'yadi. Pleyer tarmoq o'zgarishlariga tez moslashishi, shu bilan birga energiya sarfi va trafikdan foydalanishni minimallashtirishi kerak.
OpenSignal (2025) ma'lumotlariga ko'ra, shahar sharoitida o'rtacha 4G tezligi 5 dan 50 Mbit/s gacha o'zgaradi va harakatda 1 Mbit/s gacha tushishi mumkin. ABR algoritmlari tunnel yoki liftga kirganda buferlashni oldini olish uchun 1–2 segment ichida bitratelar o'rtasida almashishi kerak.
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()
Mobil ilovalar uchun tez boshlang'ich yuklash (time-to-first-frame 2 soniyadan kam) muhim ahamiyatga ega. Ijroni eng past mavjud bitratedan boshlash, so'ngra bufer to'lishi bilan sifatni oshirish tavsiya etiladi — start-low-and-rise strategiyasi.
Energiya sarfi ham muhim: apparat dekodlash tezlashtirilishi barcha bitratelar uchun ishlatilishi kerak. Eski qurilmalarda yuqori bitratelarni (1080p va undan yuqori) dasturiy dekodlash qizib ketish va drossellashishga olib kelishi mumkin.
ABR sifatining asosiy ko'rsatkichlari: bitrate almashinuvlari soni (switches), birinchi kadrgacha bo'lgan vaqt (TTFF), almashinuvlarning umumiy tomosha vaqtiga nisbati. QoE (Quality of Experience) sifat indeksi bitrate, almashinuvlar uchun jarima va buferlash uchun jarimaning vaznli yig'indisi sifatida hisoblanadi.
ABR monitoringi uchun pleyerdan analitika to'plash tavsiya etiladi: joriy bitrate, bufer hajmi, o'tkazish qobiliyati, almashinuvlar soni va turlari. Ma'lumotlar kontent provayderlariga mavjud bitratelar to'plamini optimallashtirishga va segmentatsiyani ma'lum auditoriyaga sozlashga yordam beradi.
Tez-tez beriladigan savollar
Adaptive Bitrate (ABR) — tarmoq sharoitlariga qarab video sifatini dinamik o'zgartiruvchi striming texnologiyasi. Pleyer videoni segmentlarga ajratadi va har biri uchun optimal bitrateni tanlab, mobil qurilmalarda buferlashsiz silliq ijro etishni ta'minlaydi.
HLS — Apple protokoli, M3U pleylistlari va transport oqimlaridan (.ts) foydalanadi. MPEG-DASH — XML manifest (.mpd) va moslashuvchan segment formatlari bilan ochiq ISO standarti. HLS iOS da, DASH esa Android va vebda yaxshiroq.
ABR yaxshilaydi his qilinadigan sifatni buferlashni bartaraf etish orqali: video tarmoq yomonlashganda vaqtincha rezolyusiyani pasaytirishi mumkin, ammo to'xtab qolmaydi. Foydalanuvchi doimiy buferlash bilan 4K dan ko'ra silliq 720p videoni afzal ko'radi.
ExoPlayer tarmoq o'tkazish qobiliyati va bufer to'ldirilganligini hisobga oluvchi gibrid algoritm DefaultTrackSelector dan foydalanadi. Shuningdek, AdaptiveTrackSelection.Factory orqali sozlash imkoniyati bilan Throughput-based va Buffer-based strategiyalari mavjud.
Segmentlar uzunligi moslashish chastotasini belgilaydi: qisqa segmentlar (2 soniya) tarmoq o'zgarishlariga tezroq reaksiya beradi, lekin ko'proq HTTP so'rovlarini yaratadi. 4–6 soniyali segmentlar moslashish tezligi va yuk nisbati bo'yicha mobil qurilmalar uchun optimaldir.
Xulosa
Biz kalit topshirig'i bilan mobil ilovani ishlab chiqamiz
IT Sectr 2017-yildan beri startaplar va korxonalar uchun iOS va Android ilovalarini yaratadi. Biz sizga maslahat beramiz va eng yaxshi yechimni taklif qilamiz.