Live
streaming web audio dan video protocol streaming
Teknologi live streaming sering digunakan untuk
menyampaikan acara live seperti olahraga, konser dan lebih umum lagi program TV
dan Radio yang diproduksi secara live. Seringkali disingkat menjadi streaming
saja, live streaming adalah proses mentransmisikan media 'live' ke komputer dan
perangkat. Ini adalah subjek yang cukup kompleks dan baru lahir dengan banyak
variabel, jadi pada artikel ini kami akan memperkenalkan Anda pada subjek dan
memberi tahu Anda bagaimana Anda bisa memulai.
Pertimbangan utama saat streaming media ke browser
adalah kenyataan bahwa alih-alih memainkan file terbatas, kami menyampaikan
sebuah file yang sedang dibuat dengan cepat, dan tidak memiliki awal atau akhir
yang telah ditentukan sebelumnya.
Perbedaan
utama antara media streaming dan media statis
Dalam hal ini kita menggunakan media statis untuk
menggambarkan media yang diwakili oleh sebuah file, entah itu file mp3 atau
webm. File ini berada pada server dan bisa dikirimkan - seperti kebanyakan file
lainnya - ke browser. Hal ini sering dikenal sebagai download progresif.
Media streaming langsung tidak memiliki waktu mulai
dan akhir yang terbatas daripada file statis, ini adalah aliran data yang
melewati server ke telepon dan sering adaptif (lihat di bawah). Biasanya kita
memerlukan format yang berbeda dan perangkat lunak server-side khusus untuk
mencapai hal ini.
Streaming
adaptif
Salah
satu prioritas utama live streaming adalah menjaga agar pemain tetap sinkron
dengan arus: streaming adaptif adalah teknik untuk melakukan hal ini dalam
kasus bandwidth rendah. Idenya adalah kecepatan transfer data dipantau dan jika
terlihat seperti tidak menyala, kami menurunkan aliran bandwidth yang lebih
rendah (dan akibatnya menurunkan kualitas). Agar memiliki kemampuan ini, kita
perlu menggunakan format yang memudahkan hal ini. Format live streaming umumnya
memungkinkan streaming adaptif dengan memecah arus menjadi serangkaian segmen
kecil dan membuat segmen tersebut tersedia dengan kualitas dan kecepatan bit
yang berbeda.
Streaming
Audio dan Video on Demand
Teknologi streaming tidak digunakan secara eksklusif
untuk streaming langsung. Ini juga dapat digunakan sebagai pengganti metode
download progresif tradisional untuk Audio dan Video sesuai permintaan:
Ada beberapa keuntungan untuk ini:
Latency umumnya lebih rendah sehingga media akan mulai
bermain lebih cepat
Streaming adaptif membuat pengalaman lebih baik pada
berbagai perangkat
Media diunduh tepat pada waktunya yang membuat
pemakaian bandwidth lebih efisien
Protokol Streaming
Sementara media statis biasanya dilayani melalui HTTP,
ada beberapa protokol untuk melayani aliran adaptif; mari kita lihat
pilihannya.
HTTP
Untuk saat ini HTTP sejauh ini merupakan protokol yang
paling sering digunakan untuk mentransfer media sesuai permintaan atau live.
RTMP
Real Time Messaging Protocol (RTMP) adalah protokol
proprietary yang dikembangkan oleh Macromedia (sekarang Adobe) dan didukung
oleh plugin Adobe Flash. RTMP hadir dalam berbagai rasa termasuk RTMPE
(Encrypted), RTMPS (Secure over SSL / TLS) dan RTMPT (dienkapsulasi dalam
permintaan HTTP).
RTSP
Real Time Streaming Protocol (RTSP) mengendalikan sesi
media antara titik akhir dan sering digunakan bersamaan dengan Protokol
Transport Real-time Transport (RTP) dan dengan Real-time Control Protocol
(RTCP) untuk pengiriman media stream. Menggunakan RTP dengan RTCP memungkinkan
streaming adaptif. Ini belum didukung secara native di kebanyakan browser,
namun perlu diingat bahwa Firefox OS 1.3 mendukung RTSP.
Catatan: beberapa vendor menerapkan protokol transport
yang tepat, seperti RealNetworks dan Real Data Transport (RDT) mereka.
RTSP
2.0
RTSP 2.0 saat ini dalam pengembangan, dan tidak
kompatibel dengan RTSP 1.0.
Penting: Meskipun tag <audio> dan <video>
adalah protokol agnostik, browser saat ini tidak mendukung apapun selain HTTP
tanpa memerlukan plugin, meskipun hal ini sepertinya akan berubah. Protokol
selain HTTP juga dapat dikenai pemblokiran dari firewall atau server proxy.
Menggunakan
protokol streaming
Proses menggunakan berbagai protokol sangat familiar
jika Anda terbiasa bekerja dengan media melalui HTTP.
Sebagai contoh:
Ekstensi
Sumber Media (MSE)
Ekstensi Sumber Media adalah rancangan kerja W3C yang
berencana untuk memperluas HTMLMediaElement agar JavaScript dapat menghasilkan
aliran media untuk pemutaran. Mengizinkan JavaScript untuk menghasilkan aliran
memfasilitasi berbagai kasus penggunaan seperti streaming adaptif dan
pengalihan waktu aliran langsung.
Misalnya, Anda bisa menerapkan MPEG-DASH menggunakan
JavaScript saat membongkar decoding ke MSE.
Catatan: Pergeseran Waktu adalah proses mengkonsumsi
live stream beberapa saat setelah itu terjadi.
Format
File Streaming Video
Beberapa format live streaming berbasis HTTP mulai
melihat dukungan di seluruh browser.
Catatan: Anda dapat menemukan panduan untuk
mengkodekan HLS dan MPEG-DASH untuk digunakan di web pada Menyiapkan sumber
media streaming adaptif.
MPEG-DASH
DASH singkatan dari Dynamic Adaptive Streaming melalui
HTTP dan merupakan format baru yang baru-baru ini melihat dukungan yang
ditambahkan ke Chrome, dan Internet Explorer 11 berjalan pada Windows 8.1. Ini
didukung melalui Media Source Extensions yang digunakan oleh pustaka JavaScript
seperti DASH.js. Pendekatan ini memungkinkan kita mendownload potongan video
stream menggunakan XHR dan "menambahkan" potongan ke arus yang
dimainkan oleh elemen <video>. Jadi misalnya, jika kita mendeteksi bahwa
jaringannya lambat, kita bisa mulai meminta potongan kualitas rendah (lebih
rendah) untuk segmen berikutnya. Teknologi ini juga memungkinkan segmen iklan
ditambahkan / dimasukkan ke arus.
Catatan: Anda juga bisa menggunakan WebM dengan sistem
streaming adaptif MPEG DASH.
HLS
HLS atau HTTP Live Streaming adalah protokol yang ditemukan
oleh Apple Inc dan didukung di browser Android iOS, Safari, dan versi terbaru
dari browser Android / Chrome. HLS juga adaptif.
HLS juga dapat diterjemahkan menggunakan JavaScript,
yang berarti kita dapat mendukung versi terbaru Firefox, Chrome dan Internet
Explorer 10+. Lihat pemutar JavaScript Live Streaming JavaScript ini.
Pada awal sesi streaming, daftar lagu M3U (m3u8) yang
diperluas akan diunduh. Ini berisi metadata untuk berbagai sub-stream yang
disediakan.