Adaptive Bitrate (ABR) — adalah teknologi streaming yang secara dinamis mengubah kualitas video tergantung pada bandwidth saluran pengguna. Berbeda dengan pengunduhan progresif, ABR membagi video menjadi segmen-segmen kecil 2–10 detik dan beralih di antaranya dengan cepat. Menurut Bitmovin Video Developer Report (2025), 86% layanan streaming menggunakan ABR untuk memastikan pemutaran lancar di perangkat seluler.
Poin Utama
Adaptive Bitrate (ABR) — adalah metode streaming konten media di mana file video dikodekan dalam beberapa varian dengan bitrate dan resolusi berbeda, dan pemutar secara otomatis memilih varian yang sesuai secara real-time. Pengguna mendapatkan kualitas terbaik yang mungkin tanpa buffering pada kecepatan internet saat ini.
Berbeda dengan pengunduhan progresif tradisional (progressive download), ABR tidak memerlukan pengunduhan seluruh file — pemutar meminta segmen pendek dengan kualitas yang diperlukan dan dapat beralih ke bitrate lain di antara segmen. Ini membuat teknologi ini sangat diperlukan untuk aplikasi seluler, di mana kecepatan jaringan terus berubah.
Teknologi streaming adaptif pertama kali diimplementasikan secara komersial oleh Move Networks pada tahun 2006 untuk siaran saluran ABC. Pada tahun 2009, Apple memperkenalkan HTTP Live Streaming (HLS), yang menjadi standar ABR berbasis HTTP pertama yang tersebar luas dan masih mendominasi ekosistem iOS.
Pada tahun 2012, MPEG merilis standar MPEG-DASH (Dynamic Adaptive Streaming over HTTP) sebagai format ABR universal yang tidak terikat pada vendor tertentu. DASH didukung oleh semua platform utama dan merupakan satu-satunya standar ABR yang diadopsi oleh ISO.
Proses streaming ABR dimulai pada tahap persiapan konten: video asli dikodekan dalam beberapa varian dengan bitrate berbeda — misalnya, 144p, 360p, 720p, 1080p, dan 4K. Setiap varian dibagi menjadi segmen dengan durasi yang sama, biasanya 2, 4, 6, atau 10 detik.
Di server, dibuat file manifes yang menjelaskan varian yang tersedia (representations), bitrate, resolusi, codec, dan tautan ke segmen. Pemutar mengunduh manifes, menganalisisnya, dan memulai pemutaran dengan bitrate terendah untuk memulai dengan cepat.
<!-- 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>
Selama pemutaran, algoritma ABR di sisi klien terus memantau status jaringan dan buffer. Jika bandwidth menurun, pemutar meminta segmen berikutnya dengan bitrate lebih rendah untuk menghindari buffering. Saat jaringan membaik, bitrate ditingkatkan.
Peralihan antar bitrate terjadi di batas segmen, yang membuat perubahan kualitas hampir tidak terlihat oleh pengguna. Pemutar modern dapat menyinkronkan bingkai kunci antar varian yang berbeda sehingga peralihan terjadi tanpa artefak visual.
Tiga protokol ABR utama mendominasi pasar streaming video: HLS dari Apple, MPEG-DASH sebagai standar terbuka, dan Smooth Streaming dari Microsoft. Setiap protokol mendefinisikan format manifes, metode segmentasi, dan mekanisme enkripsi.
| Protokol | Pengembang | Manifes | Segmen | Enkripsi |
|---|---|---|---|---|
| HLS | Apple | .m3u8 (M3U playlist) | .ts atau .fmp4 | AES-128, SAMPLE-AES |
| MPEG-DASH | ISO/MPEG | .mpd (XML) | .m4s atau .webm | CENC (Common Encryption) |
| Smooth Streaming | Microsoft | .ismc (XML, IIS) | .ismv / .isma | PlayReady (AES-128 CT) |
HLS — protokol ABR yang paling banyak digunakan, tertanam di iOS, tvOS, dan Safari di macOS. Format manifes didasarkan pada daftar putar M3U yang diperluas, di mana daftar putar utama (master playlist) berisi tautan ke varian (variant streams) dengan bitrate dan resolusi berbeda.
Setiap varian merujuk ke daftar putar medianya sendiri dengan daftar segmen. HLS mendukung siaran langsung melalui mekanisme jendela geser (sliding window), di mana segmen lama dihapus dan segmen baru ditambahkan saat tiba.
MPEG-DASH — satu-satunya standar ABR yang diadopsi oleh ISO/IEC 23009-1 pada tahun 2012. Berbeda dengan HLS, DASH menggunakan manifes XML (MPD — Media Presentation Description) dan tidak terikat pada format wadah tertentu — mendukung fMP4, WebM, dan lainnya.
DASH menyediakan segmentasi yang fleksibel: segmen dapat memiliki durasi berbeda dalam satu aliran, yang mengoptimalkan rasio antara latensi dan overhead permintaan HTTP. Untuk siaran langsung, DASH mendukung templat segmen (SegmentTemplate).
Menurut pengujian Bitmovin (2025), HLS dan DASH menunjukkan kinerja yang sebanding dalam hal waktu mulai dan frekuensi peralihan bitrate. HLS memberikan latensi lebih rendah di iOS berkat dukungan perangkat keras, DASH lebih disukai di Android karena konfigurasi algoritma ABR yang lebih fleksibel.
Jantung ABR — algoritma pemilihan bitrate yang menentukan varian mana yang akan diminta selanjutnya. Ada tiga keluarga utama algoritma: berbasis throughput, berbasis buffer, dan hibrida (hybrid). Setiap pendekatan memiliki kelebihan dan keterbatasannya sendiri.
Throughput-based algoritma memperkirakan bandwidth jaringan berdasarkan kecepatan pengunduhan segmen sebelumnya. Algoritma memilih bitrate maksimum yang tidak melebihi 80–90% dari bandwidth yang diukur, menyisakan cadangan untuk fluktuasi.
Kekurangan pendekatan ini adalah kepekaan terhadap lonjakan kecepatan jangka pendek. Jika jaringan turun tajam selama pengunduhan segmen, perkiraan bandwidth menjadi terlalu rendah, dan kualitas diturunkan secara tidak perlu.
Buffer-based algoritma mengambil keputusan berdasarkan tingkat pengisian buffer pemutar. Jika buffer terisi lebih dari 70%, algoritma menaikkan bitrate; jika buffer turun di bawah 20% — menurunkan kualitas secara drastis untuk mencegah buffering.
Keuntungan utama adalah tidak adanya penurunan palsu pada penurunan jaringan jangka pendek, karena buffer meratakan fluktuasi. Kekurangan — reaksi lambat terhadap perubahan bandwidth yang stabil.
Pemutar modern, seperti ExoPlayer dan AVPlayer, menggunakan algoritma hibrida yang menggabungkan perkiraan bandwidth dan status buffer. ExoPlayer secara default menggunakan algoritma ABR DefaultTrackSelector, yang mempertimbangkan kedua parameter.
Pada tahun 2024–2025, algoritma berbasis ML yang memprediksi perubahan jaringan di masa depan berdasarkan data historis sedang aktif diimplementasikan. Netflix, YouTube, dan Twitch menggunakan model pembelajaran mesin mereka sendiri untuk mengoptimalkan pemilihan bitrate, yang mengurangi jumlah peralihan sebesar 30–40%.
Aplikasi seluler memiliki persyaratan khusus untuk ABR karena ketidakstabilan jaringan seluler (4G/LTE, 5G) dan daya komputasi perangkat yang terbatas. Pemutar harus cepat beradaptasi dengan perubahan jaringan sambil meminimalkan konsumsi daya dan penggunaan data.
Menurut OpenSignal (2025), kecepatan rata-rata 4G di perkotaan bervariasi dari 5 hingga 50 Mbit/s, dan saat bergerak bisa turun hingga 1 Mbit/s. Algoritma ABR harus beralih antar bitrate dalam 1–2 segmen untuk menghindari buffering saat memasuki terowongan atau lift.
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()
Untuk aplikasi seluler, pemuatan awal yang cepat (time-to-first-frame kurang dari 2 detik) sangat penting. Disarankan untuk memulai pemutaran dengan bitrate terendah yang tersedia, kemudian meningkatkan kualitas seiring terisinya buffer — strategi start-low-and-rise.
Konsumsi daya juga penting: akselerasi perangkat keras decoding harus digunakan untuk semua bitrate. Decoding perangkat lunak untuk bitrate tinggi (1080p ke atas) pada perangkat lama dapat menyebabkan panas berlebih dan throttling.
Metrik kualitas ABR utama: jumlah peralihan bitrate (switches), waktu ke bingkai pertama (TTFF), rasio peralihan terhadap total waktu menonton. Indeks kualitas QoE (Quality of Experience) dihitung sebagai jumlah tertimbang dari bitrate, penalti untuk peralihan, dan penalti untuk buffering.
Untuk pemantauan ABR, disarankan untuk mengumpulkan analitik dari pemutar: bitrate saat ini, ukuran buffer, bandwidth, jumlah dan jenis peralihan. Data membantu penyedia konten mengoptimalkan kumpulan bitrate yang tersedia dan menyesuaikan segmentasi untuk audiens tertentu.
Pertanyaan Umum
Adaptive Bitrate (ABR) — teknologi streaming yang secara dinamis mengubah kualitas video sesuai kondisi jaringan. Pemutar membagi video menjadi segmen dan memilih bitrate optimal untuk masing-masing, memastikan pemutaran lancar tanpa buffering di perangkat seluler.
HLS — protokol Apple, menggunakan daftar putar M3U dan aliran transport (.ts). MPEG-DASH — standar ISO terbuka dengan manifes XML (.mpd) dan format segmen fleksibel. HLS lebih baik di iOS, DASH di Android dan web.
ABR meningkatkan kualitas yang dirasakan dengan menghilangkan buffering: video dapat untuk sementara menurunkan resolusi saat jaringan memburuk, tetapi tidak berhenti. Pengguna lebih memilih video 720p yang lancar daripada 4K terputus-putus dengan buffering konstan.
ExoPlayer menggunakan algoritma hibrida DefaultTrackSelector, yang mempertimbangkan bandwidth jaringan dan tingkat pengisian buffer. Strategi Throughput-based dan Buffer-based juga tersedia dengan kustomisasi melalui AdaptiveTrackSelection.Factory.
Durasi segmen menentukan frekuensi adaptasi: segmen pendek (2 detik) merespons perubahan jaringan lebih cepat, tetapi menghasilkan lebih banyak permintaan HTTP. Segmen 4–6 detik optimal untuk perangkat seluler dalam hal rasio kecepatan adaptasi terhadap overhead.
Ringkasan
Kami akan mengembangkan aplikasi seluler turnkey
IT Sectr membuat aplikasi iOS dan Android untuk startup dan bisnis sejak 2017. Kami akan memberi saran dan mengusulkan solusi terbaik.
Baca juga