Teknologi live streaming sering digunakan untuk menyiarkan acara live
seperti olahraga, konser dan yang lebih umum lagi program TV dan program Radio
yang disiarkan 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 saya akan memperkenalkan kalian pada subjek dan memberi
tahu kalian bagaimana bisa memulai.
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 file statis, ini adalah aliran data yang melewati server ke telepon dan sering streaming langsung tidak memiliki waktu mulai dan akhir yang terbatas daripada adaptif (lihat di bawah). Biasanya kita memerlukan format yang berbeda dan perangkat lunak salah satu server khusus untuk menyampaikan hal ini.
Streaming adaptif
Salah satu prioritas utama live streaming adalah menjaga agar pengunjung tetap sinkron dengan arus, streaming adaptif adalah teknik untuk melakukan hal ini dengan bandwidth yang rendah. Idenya adalah kecepatan transfer data dipantau dan jika terlihat seperti tidak menyala, saya 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.
Salah satu prioritas utama live streaming adalah menjaga agar pengunjung tetap sinkron dengan arus, streaming adaptif adalah teknik untuk melakukan hal ini dengan bandwidth yang rendah. Idenya adalah kecepatan transfer data dipantau dan jika terlihat seperti tidak menyala, saya 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 sesuai permintaan
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 keuntungannya:
1. Latency umumnya lebih rendah sehingga media akan mulai bermain lebih cepat2. Streaming adaptif membuat pengalaman lebih baik pada berbagai perangkat
3. 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 apa saja.
1. HTTP
Untuk HTTP sejauh ini merupakan protokol yang paling sering digunakan untuk mentransfer media sesuai permintaan atau live.
Untuk HTTP sejauh ini merupakan protokol yang paling sering digunakan untuk mentransfer media sesuai permintaan atau live.
2. RTMP
Real Time Messaging Protocol (RTMP) adalah protokol hak milik yang dikembangkan oleh Macromedia (sekarang Adobe) dan didukung oleh plugin Adobe Flash. RTMP hadir dalam berbagai rasa termasuk RTMPE (Enkripsi), RTMPS (Sangat aman SSL / TLS) dan RTMPT (dienkapsulasi dalam permintaan HTTP).
3. 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.
Real Time Messaging Protocol (RTMP) adalah protokol hak milik yang dikembangkan oleh Macromedia (sekarang Adobe) dan didukung oleh plugin Adobe Flash. RTMP hadir dalam berbagai rasa termasuk RTMPE (Enkripsi), RTMPS (Sangat aman SSL / TLS) dan RTMPT (dienkapsulasi dalam permintaan HTTP).
3. 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.
4. RTSP 2.0
RTSP 2.0 saat ini dalam pengembangan, dan tidak kompatibel dengan RTSP 1.0.
RTSP 2.0 saat ini dalam pengembangan, dan tidak kompatibel dengan RTSP 1.0.
Menggunakan Protokol Streaming
Proses menggunakan berbagai protokol sangat familiar jika kalian terbiasa bekerja dengan media melalui HTTP.
Proses menggunakan berbagai protokol sangat familiar jika kalian terbiasa bekerja dengan media melalui HTTP.
Media Source ExtensionsMedia Source Extensions 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, kalian bisa menerapkan MPEG DASH menggunakan JavaScript saat membongkar decoding MSE.
Beberapa format live streaming berbasis HTTP mulai melihat dukungan di seluruh browser.
1. MPEG-DASH DASH
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.
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.
2. 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.
Salah satu pendekatan yang populer adalah dengan menggunakan Flash fallback yang mendukung RTMP. Tentu saja kami memiliki masalah yang perlu kami encode dalam tiga format yang berbeda.
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.
Salah satu pendekatan yang populer adalah dengan menggunakan Flash fallback yang mendukung RTMP. Tentu saja kami memiliki masalah yang perlu kami encode dalam tiga format yang berbeda.
Streaming File Format Video
[1] Melalui JavaScript dan MSE
[2] Melalui JavaScript dan CORS Proxy
Video Fallback
Antara DASH dan HLS kita
bisa menutupi sebagian besar browser modern tapi kita masih butuh fallback jika
kita ingin mendukung sisanya.
Salah satu pendekatan yang
populer adalah dengan menggunakan Flash fallback yang mendukung RTMP. Tentu
saja kami memiliki masalah yang perlu kami encode dalam tiga format yang
berbeda.
Audio Streaming Format
Ada juga beberapa format audio yang mulai melihat dukungan di seluruh browser.
1. Opus
Opus adalah format bebas royalti dan terbuka yang berhasil mengoptimalkan kualitas dengan berbagai tingkat bit untuk berbagai jenis audio. Musik dan ucapan dapat dioptimalkan dengan cara yang berbeda dan Opus menggunakan codec SILK dan CELT untuk mencapainya. Saat ini Opus didukung oleh desktop dan mobile Firefox serta versi terbaru dari desktop Chrome dan Opera.
2. MP3, AAC, Ogg Vorbis
Format audio yang paling umum dapat dialirkan menggunakan teknologi sisi
server yang spesifik. Catatan: Ini berpotensi lebih mudah untuk melakukan
streaming audio menggunakan format non-streaming karena tidak seperti video
tidak ada keyframes.
Server-side Streaming Teknologi
Agar dapat streaming audio dan video langsung, kalian perlu
menjalankan perangkat lunak streaming tertentu di server kalian atau
menggunakan layanan pihak ketiga.
1. GStreamer
GStreamer adalah framework multimedia cross-platform open source yang memungkinkan Anda membuat berbagai komponen penanganan media, termasuk komponen streaming. Melalui sistem plugin GStreamer memberikan dukungan untuk lebih dari seratus codec (termasuk MPEG-1, MPEG-2, MPEG-4, H.261, H.263, H.264, RealVideo, MP3, WMV, dan FLV.)
Plugin GStreamer seperti souphttpclientsink dan shout2send ada untuk streaming media melalui HTTP. kalian juga bisa mengintegrasikan dengan framework Twisted Python atau menggunakan sesuatu seperti Flumotion (perangkat lunak open source streaming).
Untuk transfer RTMP Anda bisa menggunakan Modul Nginx RTMP.
GStreamer adalah framework multimedia cross-platform open source yang memungkinkan Anda membuat berbagai komponen penanganan media, termasuk komponen streaming. Melalui sistem plugin GStreamer memberikan dukungan untuk lebih dari seratus codec (termasuk MPEG-1, MPEG-2, MPEG-4, H.261, H.263, H.264, RealVideo, MP3, WMV, dan FLV.)
Plugin GStreamer seperti souphttpclientsink dan shout2send ada untuk streaming media melalui HTTP. kalian juga bisa mengintegrasikan dengan framework Twisted Python atau menggunakan sesuatu seperti Flumotion (perangkat lunak open source streaming).
Untuk transfer RTMP Anda bisa menggunakan Modul Nginx RTMP.
2. SHOUTcast
SHOUTcast adalah teknologi proprietary cross-platform untuk media streaming. Dikembangkan oleh Nullsoft, ini memungkinkan konten audio digital dalam format MP3 atau AAC disiarkan. Untuk penggunaan web, aliran SHOUTcast dilewati melalui HTTP.
Catatan: URL SHOUTcast mungkin memerlukan tanda titik dua untuk ditambahkan ke mereka.
SHOUTcast adalah teknologi proprietary cross-platform untuk media streaming. Dikembangkan oleh Nullsoft, ini memungkinkan konten audio digital dalam format MP3 atau AAC disiarkan. Untuk penggunaan web, aliran SHOUTcast dilewati melalui HTTP.
Catatan: URL SHOUTcast mungkin memerlukan tanda titik dua untuk ditambahkan ke mereka.
3. Icecast
Server Icecast adalah teknologi open source untuk media streaming. Dipelihara oleh Yayasan Xiph.org, ia mengalirkan format Ogg Vorbis / Theora serta MP3 dan AAC melalui protokol SHOUTcast.
Catatan: SHOUTcast dan Icecast adalah teknologi yang paling mapan dan populer, namun masih banyak lagi sistem media streaming yang tersedia.
Server Icecast adalah teknologi open source untuk media streaming. Dipelihara oleh Yayasan Xiph.org, ia mengalirkan format Ogg Vorbis / Theora serta MP3 dan AAC melalui protokol SHOUTcast.
Catatan: SHOUTcast dan Icecast adalah teknologi yang paling mapan dan populer, namun masih banyak lagi sistem media streaming yang tersedia.
Layanan streaming
Meskipun kalian dapat menginstal perangkat lunak seperti GStreamer, SHOUTcast dan Icecast kalian juga akan menemukan banyak layanan streaming pihak ketiga yang akan banyak membantu.
Meskipun kalian dapat menginstal perangkat lunak seperti GStreamer, SHOUTcast dan Icecast kalian juga akan menemukan banyak layanan streaming pihak ketiga yang akan banyak membantu.
0 comments:
Post a Comment