Anda di halaman 1dari 14

TUGAS PENGGANTI UAS JARINGAN MULTIMEDIA

Membangun layanan Live Video dengan Red 5












Oleh:
1. David Cesar (105090601111003)
2. Abdul Malik (105090607111007)
3. Moh.Sofa (105090607111020)
4. Dedi Tiarno (105090607111037)



PROGRAM STUDI ILMU KOMPUTER
PROGRAM TEKNOLOGI INFORMASI DAN ILMU KOMPUTER
UNIVERSITAS BRAWIJAYA
MALANG
2013
Latar Belakang
Web conference digunakan untuk melakukan pertemuan, pelatihan, atau presentasi
melalui Internet secara langsung. Dalam konferensi web, setiap peserta duduk di komputer
sendiri dan terhubung dengan peserta lain melalui internet. Web Conference memungkinkan
peserta untuk melihat, mendengar, berbicara, text chat, berbagi informasi dimanapun dia berada.
Hal ini dapat berupa sebuah aplikasi download pada komputer masing-masing peserta atau
aplikasi berbasis web dengan akses peserta rapat dengan mengklik link didistribusikan melalui e-
mail (undangan rapat) untuk masuk ke konferensi. Dengan didasari teknologi streaming, sebuah
Web Conferencing dapat mengirimkan audio, video secara banyak arah dan memutar file
multimedia melalui Internet tanpa membuat user menunggu untuk men-download file secara
keseluruhan karena kedua proses tersebut terjadi pada saat yang bersamaan. Untuk membangun
Web Conferencing ini dibutuhkan sebuah Media Server yang berfungsi menangangi proses
streaming tersebut, yaitu Red5 Media Server. Red5 Media Server adalahRTMP media server
open source yang ditulis dalam bahasa Java. Red5 mendukung streaming audio/video, merekam
user data streams, sharedObjects, Live Stream, flash remoting melalui protokol RTMPT dan
RTMPS. Dengan socket server pada Red5 dan koneksi internet, komunikasi tatap muka
audio/visual melalui web menjadi lebih sederhana dan begitu pula kualitas video menjadi lebih
fleksibel sesuai dengan konsiderasi bandwidth tiap peserta.





Mekanisme Live video dengan Red 5

Dalam membangun suatu sistem live video/audio streaming yang sederhana, secara
umum komponen yang harus ada kurang lebih seperti berikut :


Adapun fungsi dari tiap-tiap komponen antara lain sebagai berikut:
Publisher berperan sebagai encoder, untuk mengubah data-data yang ditangkap dari alat
penangkap (video/audio) menjadi format file lain yang dapat diteruskan ke RTMP server
yang akan mempublikasikan data2 stream tersebut. Untuk memudahkan user, biasanya data-
data audio/video diubah menjadi flash video (menggunakan codec Sorenson). Publisher
sendiri merupakan sebuah aplikasi, diantaranya JWPlayer (versi > 4.5.207) dengan
menggunakan type=camera, atau menggunakan Red5. Di sisi Publisher ini pula dipasang
audio/video device, penyimpanan file, atau link stream RTMP lain, yang akan distream.
RMTP server berfungsi untuk menerima stream dari Publisher, sehingga user dapat
mengakses hasil stream tersebut via perangkat client (browser/media player). Sehingga
client mengakses stream ke RTMP server bukan ke publisher lagi
Client merupakan sisi pengguna, yang menampilkan flash movie yang merupakan hasil
stream dari RTMP server. Aplikasi client ini bisa merupakan flash video player yang
disimpan di web hosting dan dibuka via browser (client hanya membutuhkan browser yang
terpasang plugin flash) atau media player yang mendukung stream RTMP. Salah satu
aplikasi flash video player ini adalah JWPlayer dan FlowPlayer


Implementasi Live Streaming







Gambar Topologi Jaringan
Sistem operasi yang digunakan untuk instalasi ini adalah Ubuntu 12.04, dan versi red5 yang
digunakan adalah versi 0.9.1. karena red5 adalah aplikasi berbasis java, maka sistem operasi
yang diinstal harus sudah mendukung java, kita instal terlebih dahulu javanya dengan :
apt-get install java-common openjdk-6-jre openjdk-6-jdk
Selanjutnya, kita akan menyimpan aplikasi red5 ini di direktori /opt/red5 (bisa juga di tempat
lain). Download terlebih dahulu file source Red5, kemudian ekstrak di direktori /opt/red5
tar -xvzf red5-0.7.0.tar.gz -C /opt/red5
Ubah permission file *.sh Red5 agar dapat dieksekusi dengan :
find /opt/red5 -name *.sh -exec chmod +x {} \;
Saat ini, kita bisa langsung menjalankan red5 dengan menggunakan perintah :
cd /opt/red5
./red5.sh
Atau jika ingin melihat keluaran log Red5 (verbose) saat dijalankan :
Saat ini Red5 tidak dijalankan pada proses background, untuk menghentikannya cukup menekan
Ctrl-C, otomatis layanan Red5 akan berhenti.
Tapi, sebelum menjalankan layanan Red5, pastikan terlebih dahulu komunikasi yang diperlukan
oleh Red5 telah diiizinkan lewat oleh firewall. Berikut list port yang secara default perlu dibuka :
1935 : untuk RTMP
8088 : untuk RTMPT
5080 : untuk HTTP servlet engine
1936 : untuk debug proxy
Pengaturan konfigurasi port yang digunakan Red5 ini terdapat di file $folder-instalasi-
red5/conf/red5.properties, salah satu contoh pengaturan port di Red5 dapat dilihat di
http://gregoire.org/2009/01/28/rtmpt-and-red5/
Konfigurasi Layanan Red5
Agar red5 dapat dijalankan saat booting, maka perlu dibuat file skrip init untuk Red5. caranya
buat file red5 (bebas sebenarnya) di direktori /etc/init.d :
nano /etc/init.d/red5
Isi dengan keterangan berikut (sesuaikan RED5_HOME dengan direktori tempat kita
menyimpan Red5):
set e
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DESC=Red5 flash streaming server
NAME=red5
RED5_HOME=/opt/red5
DAEMON=$RED5_HOME/$NAME.sh
PIDFILE=/var/run/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME
# Gracefully exit if the package has been removed.
test -x $DAEMON || exit 0
# Read config file if it is present.
if [ -r /etc/default/$NAME ]
then
. /etc/default/$NAME
fi
#
# Function that starts the daemon/service.
#
d_start() {
start-stop-daemon start -c nobody pidfile $PIDFILE chdir $RED5_HOME background make-pidfile exec
$DAEMON
}
#
# Function that stops the daemon/service.
#
d_stop() {
start-stop-daemon stop quiet pidfile $PIDFILE name java
rm -f $PIDFILE
}
case $1 in
start)
echo -n Starting $DESC: $NAME
d_start
echo .
;;
stop)
echo -n Stopping $DESC: $NAME
d_stop
echo .
;; restart|force-reload)
echo -n Restarting $DESC: $NAME
d_stop
sleep 1
d_start
echo .
;;
*)
echo Usage: $SCRIPTNAME {start|stop|restart|force-reload} >&2
exit 1;;
esac
exit 0
exit 0
Kemudian ubah permission file init ini :
chmod +x /etc/init.d/red5
Kemudian agar file init red5 ini dilload saat booting, jalankan perintah :
update-rc.d red5 defaults
Dengan menambahkan file init ini, kita bisa mengontrol layanan Red5 dengan menggunakan
/etc/init.d/red5 {start|stop|restart|force-reload}
Atau
service red5 {start|stop|restart|force-reload}

Hasil Percobaan
Jalankan RTMP Server di Red5 dengan melakukan start RTMP sever Red5 di terminal Ubuntu
dengan perintah service red5 start.

Jika berhasil maka akan keluar red5 running, kemudian buka di browser http://IP:5080 karena
dalam percobaan ini server red5 menggunakan IP yang tujuannya server bisa di akses oleh host
lain yang mempunyai perangkat video dan audio, maka edit dahulu RTMP Host di
/opt/red5/conf/red5.properties.

Kemudian buka di browser http://192.168.0.2:5080, jika berhasil tampilannya akan seperti di
bawah ini.

Jika halaman di atas sudah muncul, berarti layanan Red5 standar sudah berhasil terpasang. Jika
belum muncul, cek kembali konfigurasi dari awal. Setelah menginstal Red5, kita coba aplikasi
sederhana bawaan dari Red5 yaitu demo Publisher, agar layanan red5 bisa dijalankan maka
install terlebih dahulu app di http://192.168.0.2:5080/installer. untuk menjalankan publisher
arahkan browser ke halaman http://IP:5080/demos/publisher.html, sehingga keluar tampilan


Selanjutnya, untuk melakukan streaming, kita harus mempunyai perangkat Video dan Audio
yang telah terpasang di komputer publisher, pilih media Video & Audio yang akan digunakan
untuk streaming di menu Video dan Audio


Sebelum memulai proses streaming, terlebih dahulu ubah nama stream kita di box Name dengan
nama apa saja, misalkan Live. Setelah memilih perangkat Video & Audio yang digunakan, tekan
tombol Start, dengan segera akan muncul notifikasi perizinan Flash untuk mengakses perangkat
Video & Audio kita, klik Allow. Jika ingin menggunakan webcam sebagi media untuk
mengambil gambar pilih pada menu bagian select device dan pilih webcam yang tersedia.


Setelah memilih video lakukan publish, jika berhasil akan tampil seperti di bawah ini


Sisi Client
Di sisi client, kita dapat menggunakan media player yang sudah mensupport streaming rtmp.
Dalam tulisan ini, kita akan menggunakan flash media player yang dipasang di web hosting kita
untuk menampilkan streaming rtmp kita. Kita dapat menggunakan JWPlayer atau Flowplayer.
Kali ini kita menggunakan JWPlayer sebagai player rtmp streaming, unduh terlebih dahulu
sourcenya di http://www.longtailvideo.com/jw/upload/mediaplayer.zip
Kemudian upload di halaman web yang dapat diakses client, kemudian buat sebuah file html
(atau embed di halaman web yang kita inginkan), kode html sebagai berikut :

<div id=mediaplayer>JW Player goes here</div>
<script type=text/javascript src=jwplayer.js></script>
<script type=text/javascript>
jwplayer(mediaplayer).setup({
flashplayer: player.swf,
file: streamname,
streamer:rtmp://IP/oflaDemo/,
autostart:true,
});
</script>


ganti IP dengan IP rtmp server kita dan file streamname dengan nama saluran stream sesuai saat
mempublish streaming Video & Audio kita. Selanjutnya buka halaman web yang sudah kita
embed kode html tersebut, dan voila, jika berhasil akan tampil seperti di bawah ini.









Daftar Pustaka
http://red5.org/ (Diakses pada 15 Desember 2013)
http://net.comlabs.itb.ac.id/blog/?p=223 (Diakses pada 15 Desember 2013)
http://gregoire.org/2009/01/28/rtmpt-and-red5/ (Diakses Pada 15 Desember 2013)