Video Streaming
  Video   streaming adalah mengalirkan sebuah data video dari suatu transmitter   ke sebuah atau beberapa komputer yang berfungsi sebagai receiver. Jadi   receiver menerima video tersebut secara real time dan receiver tidak   dapat mengulang stream yang didapatnya. Video streaming biasanya   digunakan pada kelas virtual atau konferensi video. Tapi tidak menutup   kemungkinan juga video streaming dilakukan untuk mentransmit suatu video   clip ataupun film ke client yang menjadi receiver.
  Real-Time Transport Protocol
  Real-Time   Transport Protocol atau disingkat RTP adalah suatu protokol yang   biasanya digunakan untuk menangani transfer data yang sifatnya real   time. RTP berjalan   diatas protokol UDP. Transmisi video secara real time lebih cocok   menggunakan protokol ini karena tidak ada handle terhadap paket yang   hilang seperti pada protocol TCP yang mana apabila ada paket yang
  hilang, paket tersebut akan ditransmisikan kembali, yang mengakibatkan collision paket pada jaringan tinggi.
  JMF RTP API
  Java   Media Framework memberi kita kemudahan dalam mengembangkan suatu   aplikasi video streaming pada bahasa pemrograman Java, karena didalamnya   telah ada fungsi – fungsi untuk melakukan tugas yang spesifik. JMF  juga  memungkinkan kita untuk menyimpan lagi file stream yang kita  terima ke  dalam media penyimpanan selain kemampuan untuk memainkan file  video  tersebut.
  Arsitektur Video Streaming
  Streaming media terdiri dari streaming video dan streaming audio. Streaming menunjukkan transmisi satu arah dari server ke client. Pada sisi client, data masuk ke buffer selama beberapa detik sebelum mulai dikirim ke layar, sehingga terdapat delay pada pengiriman data paket. Arsitektur media streaming terdiri dari sumber, encorder, streaming server dan player. Arsitektur video multimedia pada sistem paket video dapat ditunjukkan pada gambar di bawah ini.
  
   
                          Gambar 3.4 Platform paket video streaming
   
  Player merequest kompresi file video yang terletak pada streaming server. Ketika cleint merequest, server meneruskan file video ke client dengan mengirimkan file dengan menggunakan socket   komunikasi. Sebelum pengiriman file video melalui jaringan, file   dibagi-bagi, dimana tiap-tiap bagian dienkapsulasi dengan header untuk   alur streaming. Pengiriman file video dari server ke client memiliki dua cara, yaitu dengan protokol TCP dan UDP. Pengiriman file video dengan menggunakan TCP bersifat reliable, sedangkan pada UDP bersifat unreliable.   Pada UDP tidak diperiksa apakah data sudah diterima atau belum dan   tidak akan mengirim ulang data yang rusak atau hilang. Protokol ini   cocok untuk transfer content multimedia secara terus-menerus, misalnya video live streaming.
  Struktur Video Streaming
  Video streaming merupakan teknologi multimedia yang sedang berkembang saat ini. Komponen-komponen utama dari teknologi ini meliputi sumber, server, dan  player. Sedangkan struktur dari masing-masing komponen antara lain :
  1.         Sumber (source)
              Yaitu sumber yang sifatnya live,   yaitu kamera. Format kamera dibagi menjadi dua macam yaitu digital dan   analog. Video digital biasanya lebih mahal bila dibandingkan dengan   video analog, namun memiliki kualitas gambar yang lebih baik. Data   gambar yang tersimpan dalam format digital sangat kecil kemungkinan   hilang pada saat perekaman ke komputer dari kamera digital video.   Sedangkan kamera analog memiliki format tradisional dan lebih murah   serta lebih besar ukurannya dari kamera digital. Kualitasnya sangat   jelek jika video dikonversi ke format digital dari analog.
  2.         Encoder
              Encoder merupakan suatu program yang digunakan untuk mengubah media source ke format yang sesuai untuk streaming. Encoder bertugas untuk mengkonversikan data digital menjadi bit stream yang dapat dilewatkan jaringan. Di dalam encoder terdapat   modulasi frekuensi yang akan dialirkan melalui jaringan. Fungsi dari   modulasi frekuensi adalah untuk menggabungkan sinyal yang telah   dikompresi oleh encorder dengan sinyal-sinyal lain yang akan bertindak sebagai sinyal pembawa menuju ke client. 
              Modulasi adalah proses menumpangkan sinyal (data) pada sinyal pembawa/ carrier   yang biasanya berupa gelombang sinusoida/ gelombang radio. Fungsi   modulasi adalah untuk memudahkan pengiriman data melalui media   transmisi, karena tidak semua media transmisi dapat mengirimkan sinyal   digital ataupun sebaliknya. Teknik modulasi yang digunakan pada   teknologi video streaming adalah modulasi data digital ke sinyal analog. Karena teknologi video streaming merupakan   pengiriman paket data yang menggunakan jaringan paket suara yang hanya   dapat melakukan transmisi data yang berupa sinyal analog. Sehingga  data  digital yang dihasilkan oleh perangkat sumber yang berupa kamera  harus  dikodekan ke dalam sinyal analog agar dapat ditransmisikan oleh   jaringan.
  3.         Server
              Di dalam srever terdapat berbagai macam komponen yang menunjang penyaluran data dari sumber ke player. Streaming server dirancang untuk multi CPU yang bisa mendukung ribuan media stream secara bersamaan. Server didesain dengan efisiensi, kehandalan dan pengukuran yang tinggi.
              Dalam server terdapat admission controller, resource manager, load balancer, dan task pool. Task yang dialokasikan ke dalam prosesor berupa media streaming. Task terdiri dari disk manager, network manager, buffer manager, message handler dan task manager.
   
  Prinsip Kerja Video Streaming
  Pada dasarnya video streaming adalah sebuah teknologi multimedia yang dikembangkan dengan internet untuk perangkat bergerak. Prinsip kerja dari video streaming adalah dari objek yang dishoot oleh   sumber media, dalam hal ini berupa kamera kemudian dikompresi menjadi   suatu sinyal yang dapat dilewatkan ke jaringan. Setelah data  dikompresi,  kemudian masuk ke media streaming server yang kemudian diteruskan ke client, dimana pada sisi client, sinyal data dikembalikan ke format awal sebelum ditampilkan pada handset.
  
  Video Coding  
  Encoding   sebagai media kompresi data digital dapat memperkecil ukuran data dan   bisa mempercepat proses transmisi. Proses kompresi mengidentifikasi   komponen-komponen utama dari input media dan membuang bagian-bagian yang   tidak diperlukan. Dengan menginstal DirectShowi dan QuickTime 6, Helix Mobile Producer Live dapat membaca beberapa tipe file yaitu file MOV, DV, MPEG-1, MPEG-2 (dengan catatan telah terinstall DirectShow atau QuickTime), MP3, MPEG-4 dan WAV.
  Video coding digunakan sebagai perangkat untuk mengkompresi file dari media source ke dalam format yang sesuai untuk streaming agar dapat mengatasi keterbatasan bandwith pada saat distribusi data melalui jaringan internet atau intranet. Perangkat untuk melakukan coding video disebut dengan codec yang merupakan kepanjangan dari encoder dan decoder. Sesuai dengan namanya maka coder dan decoder berjalan secara bersama-sama dan saling terkait. Encoder bekerja pada sisi pengiriman dan decoder bekerja pada sisi penerimaan, walaupun pada tiap sisi baik sisi pengiriman dan sisi penerimaan selalu dilengkapi dengan encoder dan decoder.
  Video encoder yaitu realvideo   8 bekerja pada sisi pengiriman dengan tujuan untuk mengubah data   digital kedalam file format yang dapat diteruskan jaringan dan membagi   data menjadi paket-paket yang telah digabungkan dengan gelombang pembawa   serta header yang berisi alamat tujuan, alamat pengirim dan pendeteksi kesalahan. Prinsip kerja kompresi data yang telah dilakukan oleh encoder seperti telah dijelaskan dalam bab sebelumnya mengenai elemen-elemen pembuatan video klip yang melibatkan encoder sebagai piranti untuk mengkompresi data. Vendor-vendor penghasil encoder antara lain realnetworks, windows media dan apple.
  Video decoder digunakan pada sisi penerimaan yang bekerja untuk mengubah kembali file format ke dalam format awal sebelum di encode pada sisi pengiriman. Antara codec yang digunakan pada sisi pengiriman harus sesuai dengan codec   yang digunakan pada sisi penerimaan. Hal ini untuk mencegah perbedaan   persepsi mengenai data yang dikirim dengan data yang diterima. Sehingga   diperlukan kerjasama yang kompak antara operator dengan vendor  penghasil  handset dalam menentukan jenis dan produk coder yang digunakan sehingga tidak terjadi kesalahan persepsi mengenai data yang dikirim dengan data yang diterima.
   
  Sumber :
  blog.ub.ac.id/yafemo/files/2011/07/VIDEO-STREAMING1.doc