IMPLEMENTASI REAL TIME STREAMING PROTOCOL UNTUK APLIKASI RADIO INTERNET Hartanto K. W. Gideon S.S, Handoko
IMPLEMENTASI REAL TIME STREAMING PROTOCOL UNTUK APLIKASI RADIO INTERNET Hartanto K. W .,Gideon S.S,Handoko
/(·''(," '.. .
)'
.:.··~ '.. J' ....... ;
~
'
Program Studi Teknik Elektro. Fakultas Teknik- UKSW ~ .. ;:~ " ...•1 . :: ·.. ~-
Jalru1 Diponegoro 52-60, Salatiga 50711
INTI SARI
'
.. .
.('-~;,..:-·.~·.. ·. G'~l ~·
~:j
,·
'i~$j;~-0,
Penyiaran radio dengan cara konvensional memiliki beberapa keterbatasan yaitu Jangkauan siaran yang terbatas. Nilai investasi yang besar dibutuhkan untuk membangun sebuah stasiun radio oleh karena itu sangat disayangkan bila siaran hanya dinikmati dalam lingkup yang terbatas. Pengembangan penyiaran lewat jalur digital untuk mendampingi cara konvensional dapat menjadi salah satu solusi, terutama melalui jaringan internet. Real Time Streaaming Protocol atau RTSP adalah sebuah protokol pengiriman data lewat jaringan internet, terutama yang berbasis Real-Time. RTSP didampingi beberapa protokol yang lain memungkinkan dukungan terhadap pertukaran data secara streaming. Penyiaran secara digital. Radio Internet yang telah dibuat terdiri dari dua bagian utama yaitu server (Web ..'Jerver dan Media .S'erver) dan client (Media Player). Keduanya dibangun dengan menggunakan bahasa pemrograman java yang bersifat open source. Web Server yang digunakan adalah Apache Tomcat 6.0 yang berjalan di atas sistem operasi Windows Server 2003. Pengujian dilakukan dengan menggunakan beberapa komputer yang terhubung melalui jaringan LAN. Sebuah komputer server diakses oleh 3 komputer client. Dari basil pengujian server dapat menangani 3 client secara bersamaan dan client menghasilkan keluaran yang sama dengan yang dikirimkan oleh server.
Kata Kunci: RTSP, Internet, Radio Internet
1. Latar Belakang Dibutuhkan biaya yang cukup besar untuk pembangunan sebuah stasiun radio. Pengadaan peralatan terutama pemancar radio merupakan pos dengan biaya paling besar. Menilik besarnya investasi yang dikeluarkan untuk pembangunan stasiun radio, maka sangat disayangkan bila II
Techne Jumalllmjah Elektroteknika Vol. 8 No. 1 AprH 2009 Halll- 29
IM
siaran hanya bisa dinikmati oleh pendengar dalam cakupan wilayah yang terbatas. Perluasan
yallM
jangkauan siaran merupakan sebuah langkah yang dilak.ukan pemilik radio untuk meningkatkan
RTP
daya saing terhadap stasiun radio lain.
ditu
Untuk perluasan jangkauan siaran sebuah stasiun radio, radio internet merupakan sebuah solusi yang menawarkan biaya yang lebih terjangkau dibandingkan melakukan peningkatan daya pancar dengan mengganti pemancar. Sebuah stasiun radio Internet tidak memerlukan pemancar tambahan sebab sinyal audio ditransmisikan lewat jaringan internet, yang perlu dipersiapkan adalah seperangkat komputer sebagai server. Sekalipun saat ini kehadiran radio internet di Indonesia masih belum bisa menggantikan posisi stasiun radio tradisional, namun keberadaannya bisa menjadi pilihan tepat untuk memperluas cakupan pendengar bahkan sampai lintas benua. Dengan semakin cepatnya perkembangan teknologi internet diperkirakan akan terjadi migrasi besar dari teknik broadcasting yang tradisional ke arah broadcasting yang disajikan secara digital. Hal ini ditandai dengan mulai berkembangnya beberapa stasiun TV dengan menggunakan teknologi DVB (Digital Video Broadcast) yang dapat dinikmati pada ponsel 3G dengan cara berlangganan ataupun melalui website yang diakses dari PC. Keunggulan siaran digital yang mampu menyajikan gambar yang lebih jernih dengan syarat dukungan bandwidth yang memadai adalah salah satu faktor untuk melakukan migrasi ke dunia digital. Radio
Internet
dapat
diwujudkan
dengan
menggunakan
teknologi
streaming.
Implementasinya dapat dilak.ukan dengan menggunakan protokol HTTP (HyperText
Tran~fer
Protocol) maupun RTSP (Real Time Streaming Protocol). Streaming HTTP dikenal juga sebagai progressive dowoload. Dua protokol ini memiliki perbedaan yang cukup mendasar. Dengan
2. ]
1
prOSI
sinla mem
pertimbangan kecepatan, sekalipun harus mengorbankan reliability, RTSP dipilih untuk
deng
mengimplementasikan aplikasi radio internet.
port
Aplikasi radio Internet yang dibuat terdiri dari dua bagian yaitu server dan client. Pada sisi server dibagi menjadi dua modul yaitu Web Server dan Media Server, keduanya berada dalam satu buah PC. Web Server bertugas menangani request HTTP dari client dengan memberikan respon berupa nama stasiun yang dikehendaki oleh client. Oleh karena diperlukan adanya interaksi antara client dan Web Server, maka digunakan JSP (Java Server Pages) digunakan untuk merealisasikan interaksi tersebut. Media Server bertugas menangani request media dari client, mengolah masukan data audio dari line-out radio penerima atau mixer audio 12
tra/1.'
IMPLEMENTASI REAL 11ME STREAMING PROTOCOL UNTUK APLIKASI RADIO INTERNET Hartanto K. W. Gideon S.~: Handoko
yang terhubung dengan sound card, melakukan kompresi sinyal audio, membentuk paket-paket RTP dan kemudian mengirimkan ke client yang telah melakukan request. Blok diagram sistem ditunjukkan di Gambar 1.
li
~ ~~.~~;
WEB SERVER
il
SUMBER SUARA 1
r--
I\
APACHE TOMCAT 6.0
t
! ,--
I
J
'I :I
11 • I
- Mixer Audio - Radio Receiver
.I
PC SERVER
~
SUMBER SUARA 2 - Mixer Audio - Radio Receiver
CL.IENT
~
~~>'
..
......... ·----
lr
...! _,I 14·__ I
~~,_. "l
~
I
d ;I
J
·"-·-# J .•I
.
~
- Unpack RTP pa<:Ket
- Aud"oo Oeoompresslon - PlaybaCk audio ~
!~,_.] ~
MEDIA SERVER '---
··--:1
~--
h
- Capture Audio
- RTSP SeNer 1-- Compression (live) - Transmitting RTP Pa<:Ket
(1111
Gambar 1. Blok diagram sistem
2. Protokol TCP/IP dan Java TCP adalah protokol yang connection-oriented. Komunikasi data antar host terjadi melalui proses sink.ronisasi untuk membentuk virtual connection setiap session antar host. Proses sinkronisasi ini meyakinkan kedua sisi apakah sudah siap transmisi data atau belum dan memperbolehkim perangkat untuk menentukan inisialisasi sequence number. Proses ini disebut dengan 3-way handshake. Untuk membentuk koneksi TCP, c/ie/11 harus menggunakan nomor port tertentu dari layanan yang ada di server. Protokol TCP/IP terdiri dari 4 layer yaitu: aplikasi, transport, internet dan network inter:face physical.
2.1 HTTP HyperText Transfer Protocol adalah protokol yang digunakan untuk mentransfer dokumen dalam World Wide Web (WWW). Protokol ini adalah protokol ringan, stateless dan generik yang dapat dipergunakan berbagai macam tipe dokumen. HTTP adalah stateless protocol, yang berarti saat server telah mengirimkan data yang diminta client
koneksi diputus. Pengembangan HTTP dikoordinasi oleh Konsorsium World Wide Web 13
10060148
Teclme Jurnal Ilmiah Elektroteknika Vol. 8 No. 1 April2009 Hal 11- 29 (W3C) dan grup bekerja IETF(lntemet Engineering Task Force), bekerja dalam publikasi satu seri RFC, yang paling terkenal RFC 2616, yang menjelaskan HTTP/1.1, versi HTTP yang digunakan umum sekarang ini. HTTP adalah sebuah protokol request re.\ponse antara client dan server. Sebuah client HTTP seperti web browser, biasanya memulai permintaan dengan membuat hubungan TCP/IP ke port tertentu di host yang jauh (biasanya port 80). Sebuah server HTTP menunggu client mengirim kode permintaan (request) ke port tersebut, seperti "GET I HTTP/ 1.1" (yang akan meminta halaman yang sudah ditentukan), diikuti dengan pesan MIME yang memiliki beberapa informasi kode header yang menjelaskan aspek dari permintaan tersebut. Begitu menerima kode permintaan, server mengirim kembali kode jawaban, seperti "200 OK", dan sebuah pesan yang diminta, atau sebuah pesan error atau pesan lainnya
2.2. RTSP[4] Real Time Streaming Protocol dikembangkan oleh IETF pada tahun 1998 sebagai RFC 2326. RTSP merupakan protokollevel aplikasi untuk kendali pengiriman data yang memiliki karakteristik real-time seperti streaming media. RTSP sering juga disebut sebagai remote control jaringan untuk streaming server. Client menggunakan RTSP untuk bertukar informasi dengan server. Penulisan URL untuk RTSP mengikuti pola sebagai berikut : rtsp://
:<nomor port>/. Port default untuk RTSP adalah 554. Berikut ini contoh penulisan URL RTSP: rtsp://192.168.10.0:554/ RTSP bukan protokol pengiriman data aktual berupa streaming audio maupun video, melainkan protokol kendali streaming media. Protokol yang digunakan untuk pengiriman data aktual adalah R TP. Perbedaan yang cukup mendasar antara HTTP dan RTSP. HTTP adalah protokol yang stateless sedangkan RTSP merupakan protokol yang stateful. Pada RTSP diperlukan adanya informasi state dari server yaitu : INIT, READY, DAN PLAYING. Perbedaan lainnya adalah RTSP menggunakan metode yang berbeda dengan HTTP. RTSP 14
JMP
-
IMPLEMENTAS/ REAL TIME STREAMING PROTOCOL UNTUK APLIKASI RADIO INTERNET Hartanto K. W. Gideon S. S, Handoko
menggunakan metode yang spesifik untuk mengendalikan streaming media, yaitu DESCRIBE, SETUP, PLAY, PAUSE, RECORD, TEARDOWN, dan sebagainya. Metode DESCRIBE digunakan untuk menunjukkan alamat media yang diminta kepada media server. Respon dari media server berupa 200 OK acknowledgment dan menyertakan deskripsi penuh konten media yang dipresentasikan di SDP (Session Description Protocol) atau dalam format MHEG (Multimedia and Hypermedia Experts Group). Request Client ke Server: DESCRIBE rtsp://192.168.10.2:554/ RTSP/1.0 Cseq:2 Respon Server ke Client : RTSP/1.0 200 OK Cseq: 2 Content-Type: applicationlsdp Content-Length: 210 <SDP Data ... > SETUP adalah metode berikutnya dalam RTSP untuk mengidentifikasikan mekanisme transportasi yang dikehendaki oleh client. Salah satu mekanisme yang paling sering digunakan untuk transportasi data adalah RTP melalui UDP. Server merespon dengan. memberi konfirmasi. Request Client ke Server : SETUP rtsp://192.168.10.2:554/ RTSP/1.0 15 Cseq: 3 Transport: rtp/udp;unicast;client_port=5067-5068 Respon Server ke Client : RTSP/1.0 200 OK Cseq: 3 Session: 12345678 Transport: rtp/udp;client_port=5067-5068; 15
Techne Jumal Ilmiah Elektroteknika Vol. 8 No. 1 April2009 Halll- 29
IMP
Setelah metode SETUP dijalankan, client berada pada keadaan siap menerima aliran data. Untuk memulai proses penerimaan aliran data dari Media Server, digunakan
2
met ode PLAY yang berisi URL yang telah disediakan oleh server melalui met ode sebelumnya. Server memberi respon dan aliran paket RTP dari server ke client pun dimulai. Request Client ke Server: PLAY rtsp://192.168.10.2:554/ RTSP/l.O Cseq: 4 Session: 12345678 Respon Server ke Client : RTSP/1.0 200 OK Cseq: 4 Ketika pengiriman data dan koneksi RTSP hendak diakhiri, request TEARDOWN dikirimkan ke server. Respon dikirimkan dari server ke client dan koneksi diakhiri. Pada kondisi ini state RTSP server menjadi init dan siap menangani koneksi baru. Request Client ke Server : TEARDOWN tisp://192.168.10.2:554/ RTSP/l.O Cseq: 5 Session: 12345678 Respon Server ke Client : RTSP/l.O 200 OK Cseq: 5
2.3. UDP UDP([J.s·er Datagram Protocol) adalah protokol yang didefinisikan pada RFC 768 merupakan protokol sesuai hila digunakan untuk keperluan streaming multimedia lewat internet. Berdasarkan pendekatan ini, RTSP dipakai di atas protokol TCP untuk mengendalikan aliran data. RTSP memberikan perintah seperti SETUP, PLAY dan TEARDOWN. Sedangkan RTP yang dijalankan di atas protokol UDP digunakan untuk transportasi data. 16
2
IMPLEMENTASI REAL TIME STREAMING PROTOCOL UNTUK APLIKASI RADIO INTERNET Hartanto K. W, Gideon /;:S. Handoko
2.4. Streaming Streaming adalah sebuah teknologi yang memungkinkan sebuah file suara atau
pun
video dimainkan selagi proses perpindahan data masih dilakukan. Ada dua metode streaming yang paling sering digunakan: on-demand dan live. Dengan menggunakan metode streaming on-demand, media yang akan dimainkan dialirkan dari file yang telah disimpan sebelumnya. Pengguna dapat melakukan fast-;lonmrd, rewind, atau pause terhadap media (suara atau video) yang diterima. Berbeda dengan metode on-demand, Media Server yang menggunakan metode streaming live pengguna tidak diberi pilihan untuk melakukanfas(/o11i1ard, rewind, atau pause karena data dikirimkan dari sumber yang melakukan capture secm·a Real-Time.
2.5. Real-Time Transport Protocol (RTP) Real-Time
Tran.~port
Protocol menyediakan layanan pengiriman pada jaringan untuk
keperluan Real-Time seperti video-conferencing dan aplikasi audio interaktif seperti Internet Telephony.
Digunakan berdampingan dengan RTSP,
RTP menangani
pengiriman payload (data aktual) yaitu data sesungguhnya yang dapat berupa suara atau gambar maupun gabungan dari keduanya. RTP berjalan di atas UDP, tidak ada jaminan dalam pengiriman paket data, namun aplikasi diberi akses sesegera mungkin setelah paket data sampai.
2.6. RTCP [13] Penggunaan RTCP pada streaming media adalah untuk menyediakan umpan batik kualitas data yang dikirimkan. Letak Port RTCP biasanya tepat setelah port RTP. RTCP memuat informasi berupa jumlah paket terkirim, jumlah paket yang hilang, dan waktu tunda. RTCP lebih banyak diaplikasikan pada aplikasi konferensi video atau audio yang inetraktif daripada untuk aplikasi streaming yang tidak interaktif seperti Radio Internet.
17
Teclme Jurnal Ilmiah Elektrotcknika Vol. 8 No. 1 April 2009 Hal 11 - 29
2.7. Java Bahasa Java merupakan bahasa yang diciptakan oleh Sun Microsystem pada tahun 1995-an. Alasan pemilihan bahasa Java untuk merealisasikan adalah karena aplikasi yang dihasilkan dapat dijalankan di platform manapun sesuai filosofi bahasa Java : Write Once, Run Anywhere. Alasan lainnya adalah karena Java bersifat open source sehingga memudahkan dalam pemrograman dengan menggunakan library yang sudah ada.
3. Perancangan dan lmplementasi 3.1. Aplikasi Web Server Aplikasi web server menggunakan Apache Tomcat yang menyediakan layanan JSP Container. Apache web server akan menangani permintaan terhadap halaman jsp yang ada di PC server, mengolah dan memberi kembalian dengan bentuk HTML dan juga memuatkan applet yang siap dijalankan di Java Virtual Machine di komputer client
3.2Aplikasi Media Server Gambaran Aplikasi media server dapat dilihat pada blok diagram pada Gambar 2.
Objek dengan tipe Kelas Soundcard
Objek dengan tipe Kelas Server
Objek dengan tipe Kelas ServerConnectionManager
Objek dengan tlpe Kelas RTSPServer
Gambar 2. Blok Diagram Media Server
18
lA
IMPLEMENTASI REAL TIME STREAMING PROTOCOL UNTUK APLIKASI RADIO INTERNET Hartanto K. W. Gideon ,)'.S, Handoko
3.3. Aplikasi Client Aplikasi client memanfaatkan web browser untuk berkomunikasi dengan web server. Setelah melakukan request ke web server, client memperoleh tanggapan berupa halaman HTML yang telah dimuati applet. Applet dieksekusi oleh Java Virtual Machine. Applet berperan sebagai media player yang berkomunikasi dengan media server dan sound card device di PC client. Adapun blok diagram skenario hubungan client-server dapat dilihat pad a Gambar 3.
client
S6N6f
1
I
-Server
WebB,_
I
I
I
I
JSP Container
I
I r
I
\NIIIcomeJsp
1 RadloStatlon.jsp
T
1
Applell-
1 .lave Vlrtu81111echlne
le_:~
I
L
l I
I
Gambar 3. Blok diagram hubungan Client server
3.4. Java Server Pages Untuk menjembatani komunikasi client-server maka diperlukan web server dan JSP container. File JSP diletakkan di bawah direktori aktif Apache web server, biasanya terletak
di
direktori
"C:\Program
Files\Apache
Software
Foundation\Tomcat
6.0\webapps\ROOT\". Halaman Welcome.jsp merupakan halaman awal yang berisi sebuah combo box dan sebuah tombol. Halaman Welcome.jsp menyediakan pilihan stasiun radio yang dikehendaki oleh client. Tombol connect dengan tipe submit berfungsi melewatkan nilai combo box yang dipilih dan memicu perpindahan ke halaman RadioStation.jsp. Halaman yang baru akan memuat applet yang berupa media player. Kode yang menyusun halaman Welcome.jsp dapat dilihat di Gambar 4. 19
Techne Jurnal Ilmiah Elektroteknika Vol. 8 No. 1 April 2009 Hal 11- 29
<'.@page contentType="text/html" pageEncoding="UTF-8" ·;:.> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> JSP Page
Gambar 4. Source Halaman Welcome.jsp Kode yang menyusun halaman RadioStation.jsp dapat dilihat pada Gambar 5
<''.@page import="java.io.*" ·::,> Radio RTSP < String NamaStasiunRadio; NamaStasiunRadio = request.getParameter("RadioStation"); ·,:.> Stasiun Radio yang dipilih : <\=NamaStasiunRadio~>
Gambar 5. Source Halaman RadioStation.jsp 20
4.
IMPLEMENTASI REAL TIME STREAMING PROTOCOL UNTUK APLIKASI RADIO INTERNET Hartanto K. W. Gideon SS, Handoko
4. Pengujian dan Analisis Pengujian dilakukan dengan menggunakan 4 (empat) buah perangkat komputer yang berada dalam sebuah jaringan LAN, 1 (satu) perangkat komputer untuk server dan 3 (tiga) perangkat komputer client yang masing-masing memiliki spesifikasi sebagai berikut: 1. Komputer Server (dengan alamat IP 192.168.62.9) • Intel® Pentium® 4 CPU 1.80GHz, 1,80 GHz, 512MB RAM • Sistem Operasi Windows Server 2003 • Integrated Sound Card dengan driver SoundMAX • PCI Sound Card dengan driver Creative SB AudioPCI • Java Development Kit version 1.6.0_05 • Java(TM) SE Runtime Environment (build 1.6.0_05-bl3) • Jakarta Apache Tomcat 6.0 sebagai Web Server • Menggunakan aplikasi Cool Edit Pro 2.0 untuk capture audio dari linein dalam bentuk grafis • Masukan audio dari 2 dua radio penerima dengan port headphone 2. Komputer Client 1 (dengan alamat IP 192.168.62.2) • Intel ®Core TM 2 Duo CPU E4600@ 2.40 GHz, 2GB RAM, PAE • Sistem Operasi Windows XP Professional Version 2002 SP2 • Integrated Sound Card dengan driver RealTek HD Audio • JavaCfM) SE Runtime Environment (build 1.6.0_05-b13) • Web Browser Mozilla Firefox version 3.0 • Menggunakan aplikasi Cool Edit Pro 2.0 3. Komputer Client 2 (dengan alamat IP 192.168.62.8) • Intel ®Core TM 2 Duo CPU E4600 @2 .40 GHz, 2 GB RAM,Physical Address Extension (PAE) • Sistem Operasi Windows XP Professional Version 2002 SP2 • Integrated Sound Card dengan driver RealTek HD Audio • Java(TM) SE Runtime Environment (build 1.6.0_05-bl3) • Web Browser Flock version 1.0.3 • Menggunakan aplikasi Cool Edit Pro 2.0 21
Techne JurnaJ llmiah Elektroteknika Vol. 8 No. 1 April 2009 Hal 11 - 29
4. Komputer Client 3 (dengan alamat IP 192.168.62.3) • Intel® Pentium® 4 CPU 2.40GHz, 2.39 GHz, 496MB RAM • Sistem Operasi Windows XP Professional Version 2002 SP2 • Integrated Sound Card dengan driver SoundMAX Digital Audio • Java(TM) SE Runtime Environment (build 1.6.0_05-bl3) • Web Browser Opera version 9.63 • Menggunakan aplikasi Cool Edit Pro 2.0
4.1. Pengujian Server Pengujian pada server pertama-tama dilakukan dengan memeriksa apakah layanan Web Server Apache Tomcat telah berjalan. Bila layanan web server Apache Tomcat telah betjalan, pennintaan melalui web browser ke alamat IP dan port 8080 (tempat Apache Tomcat melakukan listen) akan mengembalikan halaman HTML. Dua buah sound card pada server masmg masmg dihubungkan dengan menggunakan sebuah kabel dengan ujung berupa jack 3 Y2 inch ke port headphone radio penerima dengan perincian sebagai berikut : • Integrated Sound Card dengan driver SoundMAX dihubungkan dengan radio penerima1 yang telah diatur untuk menerima siaran radio. • PCI Sound Car9 dengan driver Creative SB AudioPCI dihubungkan dengan radio penerima-2 yang telah diatur ke untuk menerima siaran radio yang berbeda dengan yang diterima radio penerima-1.
4.2. Pengaturan Awal Media Server Pengaturan pada perangkat lunak Media Server meliputi: - Pengaturan port untuk listen pennintaan client melalui tex:tbox - Pengaturan sample rate sound card melalui combobox - Pengaturan sample size in bits melalui combobox
22
IM
IMPLEldENTASI REAL TIME STREAMING PROTOCOL UNTUK APLIKASI RADIO INTERNET Hartanto K. W, Gideon SS, Handoko
Ajikjmaljc; Urxlltet
Cbiliwiei Nerllll
,,.,
.Sj!llenr. Mlci~~Server2003
Standa!d Elilion
-~-~~
: ~!!'*:'h¥4" ':+ [M;!f!I,~~~J
1\',.,.Ji~,-
······ct
~~~;~F~ ~:.:0~~:~---·------~
_.:._•
59712·640-526170H5S1 0 -~.r.
lnta(R)
i_•:IiL=:=:~=~-=-~~ . ___ CU81111:
P~)4CFU
_. ________ ---~=.:.~:~---=J~J
1.800H.z
1.80GHz 512MB Qf RAM
packets
. Packet S8llf :
packets
. Packet Ioiii : Client 2:
OK
• Packet sent : - Packet lost : CUent 3:
l••ternelf'rotocoi(ILP IP)P•opertle$
paCk8tS
- PaCket sent :
piiCkets
Genet'~
..=~"
I
Voo can¢ IP ~~ IIUtomllt:lcalv f your network supports
tli5 capel:illty. otherwise, you need-to ask your nlitworhdmlnlstrator
- Paektlllost :
for thl!~lPsett~.
f
("~anlP~~y
r.:.fi[~t!ji!i!!:'~~,j$S::.t--'---::;;:=-l
. _"_•**_ ·_ .!111':_ ·._·
. sypi:~
-_-, ..... ·. · ·.
-~~~·.
.
.
1•92. 168.62 ~ J255 .255.255. 0
.
.---.-.---·-----·---'-------------
-~·
I
1
--- I ·-'
Gambar 6. Tampilan Media Server dan Spesifikasi PC Server Setelah melakukan pengaturan, penekanan button akan mengakibatkan Media Server melakukan listen di port yang telah ditentukan. Pada saat bersamaan proses pengambilan data dari kedua sound card dimulai. Status berhasil terlihat di Server Log yang berupa Text Area seperti pada Gambar 7. Pada keadaan ini Media Server siap menerima permintaan dari client.
23
10060148
Techne Jurnal Ilmiah Elektroteknika Vol. 8 No. 1 April2009 Hall!- 29
· ] Use Compression
lse~..;er-·Log·;··-
--------------
!server Listen on port : 25000 \Sound Card : SoundHAX Digital Audio OKI !sound Card : Creative SB AudioPCI OR!
I
II
Clienl1: • Packet sent :
packets
- Packet lost :
packets
Client 2:
- Packet sent :
packets
• Packet lost :
packets
OientJ:
- Packet sent :
!*kets
• Packet lost :
packets
Gambar 7. Tampilan Server Log Pada pengujian yang telah dilakukan, Media Server menerima pennintaan secara berurutan mulai dari client 1, client 2, dan client 3. Tampilan Media Serveryang telah menangani 3 (tiga) client secara bersamaan dapat dilihat pada Gambar 8
24
JJ
IMPLEMENTASJ REAL TIME STREAMING PROTOCOL UNTUK APLJKASI RADIO INTERNET Hartanto K. W. Gideon SS', Handoko
'--~~~~~ f"~~:~i~iai-! [=---·:~_T:-1 r~--~~f_] .!fiiiui¥R!?:~] [] Use Compression
I -~JtM§iJ.l*-*~-~ l
1::::·::
[!I*IMt¥1!-:J
~:~·=:~~ ··-~=-·::·:~·-·:--~~--~-~-~-----
--·····------------·------· ------------------~
!sound Card : SoundHAX Digital Audio OK! jsound Card : Creative SB A.udioPCI OK! I~TSP Server 0 on port:50554 ->client:/192.168.62.2 PLAY:Elisa IRTSP Server 1 on port:50557 ->client:/192.168.62.8 PLA.Y:Zenit IRTSP Server 2 on port:50560 ->client:/192.168.62.3 PLAY:Zenith)
[fiill:r· .
.~-- ~-·~---·~·~-~-:·:=~-~--~
· -· · ·- ---~--~-:·:=·~:~-.~---~-~-=-: ~~--: --~~---:~~-~---~:=~~::IIJ
Client 1:
packets
- Packet sent :
packets
- Packet lost : Client 2:
packets
- Packet sent :
packets
- Packet lost : Client 3:
packets
- Packet sent :
packets
- Packet lost :
Gambar 8. Media Server dengan Tiga Client Localhost Terhubung
25
10060148
Techne Jurnal Ilmiah Elektroteknika Vol. 8 No. 1 April 2009 Hal 11 - 29
4.3. Pengujian Client Pengujian sisi client dilakukan dalam tiga tahap. Dimulai dari client pertama dengan alamat IP 192.168.62.2 dilanjutkan dengan client kedua dengan alamat IP 192.168.62.8 dan client ketiga dengan alamat IP 192.168.62.3 Client dengan alamat IP 192.168.62.2 menggunakan Mozilla Firefox version 3.0 sebagai web browser. Tampilan halaman awal Welcome.jsp dapat dilihat pada Gambar 9
D· c ~ Most VISited •
·"' '·. 0}
http:/1192.168.62.9:8080/CIIentRTSP/Welcome.jsp
ICJ·
J
.
Getting Started .· . Latest Headlnes
Choose Your Radio Station!
I
·Elise. "'i' i Connect J
Gambar 9. Halaman Awal dengan Menggunakan Mozilla Firefox version 3.0
Pada halaman awal disediakan dua buah pilihan stasiun radio. Stasiun radio yang dipilih pada client 192.168.62.2 adalah Elisa. Penekanan tombol akan menyebabkan perpindahan ke halaman yang memuat media player applet. Tampilan halaman yang memuat applet dapat dilihat pada Gambar 10.
26
IMPLEMENTASI REAL TIME STREAMING PROTOCOL UNTUK APLIKASI RADIO INTERNET Hartanto K. W. Gideon S.S, Handoko
Ele
l!Jew
!;.dlt
G •C iiitJ Most 1/lslted •
Hi~ory
!!ool<marlcs ·JI.J
(
I ook
~
~ 'http:/f192.168.62.9:BOBO/ClentRTSP/RadoS1:atlon.jsp1RadiOStatloi1"'EEisa~~ed:..Connect~
Getting Started · .. latest Heaclines
:
t~?iHim!l tjt) · . t!d ·.
__
r~~i~fUi.: ~~-~--.-----
· ------··----
ARllet dientMedi!IPiayer sta-ted
Gambar 10. Halaman yang Memuat Applet pada Mozilla Firefox version 3.0
Bila koneksi dengan Media Server berhasil maka tombol applet (play) aktif sehingga tampilan web browser akan seperti yang terlihat pada Gambar 11. Cukup dengan menekan play tombol , maka client bisa mulai menerima data audio untuk diumpankan ke loud speaker atau head phone.
27
lA
Techne Jumal Ilmiah Elektroteknika Vol. 8 No. 1 April2009 Halll- 29
fie
£.dit
!liew
8 - C! tai Most l/lslted
•
Hs,tory
"'
lloolcmari<s
•. liJ
(
Iools
~
@ll http://1~2.168.62:9=eoaofdle~TSPfRadloStatlon.jsp?Radio5tal:lon-f!lsa&Btn6mnect:-connect
••
UCl ~ c::l:.·:
Getting Started .·. '· Latest Headlnes
6.
Applet ClientMediaPiayer started
Gambar 11. Media Player Applet Berhasil Terhubung dengan Media Server
Untuk Client-client yang lain dicoba dengan cara yang sama dan berhasil melakukan hubungan danmenerima siaran radio.
5. Penutup Berikut ini adalah beberapa kesimpulan yang ditarik setelah melakukan penguJtan terhadap sistem yang dibuat. 1. Real Time Streaming Protocol dapat digunakan sebagai kendali proses pengiriman data secara streaming. 2. Real-Time Transport Protocol adalah protokol untuk pengiriman data yang bekerja di atas UDP, mendukung pengiriman data secara Real-Time. 3. Java Sound API memberikan akses terhadap tiap byte data, baik pengambilan data dari perangkat pengolah suara maupun pengiriman data ke perangkat pengolah suara. 4. Pengambilan data dari perangkat pengolah suara dengan menggunakan Java Sound API memungkinkan pengiriman data secara Real-Time. 5. Pengiriman data ke perangkat pengolah suara dengan menggunakan Java Sound API memungkinkan playback secara Real-Time.
28
IMPLEMENTASI REAL TIME STREAMING PROTOCOL UNTUK APLIKASI RADIO INTERNET Hartanto K W. Gideon S. S, Handoko
6. Applet dapat digunakan untuk mereaJisasikan media player yang menggunakan RTSP danRTP.
6. Daftar Pustaka 1.
Bambang Hariyanto, Esensi-esensi Bahasa Pemrograman Java, Penerbit Informatika, 2005.
2.
_ _,
Komunikasi
Data
Ala
TCP/IP,
http://www .lecturer. eepisits. edu/~dhoto/kuliah/prak- komdat/komdat tcpip.pdf 3.
_ _,Hypertext Transfer Protocol, http://id.wikipedia.org/wiki/HTTP , Specifications for a simple RTSP client,
4.
5.
___,Real-Time Transport Protocol, http://www.ietforg/rfc/rfc3550.txt
6.
_ _,Real Time Streaming Protocol, http://www.ietf.org/rfc/rfc2326.txt
7.
, Real-time Audio Streaming in a Mobile Environment Using J2ME
,http :1/www. cs. umu. se/education/examina/Rapporter/SillenNordlund. ps. Java
8.
API
Sound
documentation,
http://www. java. sun. com/products/javamedial sound/index. html 9. _ _,
Socket
Communications
Java
Online
Training,
http://java.sun.com/developer/onlineTraining/Programming/BasicJava2/socket.html 10.
, Java Applet, http://id.wikipedia.org/wiki/Java=applet
Protokol
11. __. _,
(TCPIUDP),
Transport
http:/lrobby.c.staff.gunadarma.ac.id/Downloads/files/5659/tcpudp.pdf 12. _ _
Sockets
programming
111
Java:
A
tutorial,
http://www.javaworld.com/javaworld/jw-12-1996/jw-l2-sockets.html?page=3 13. _ _,
Sockets
programming
in
Java:
A
tutorial,
http://www.javaworld.com/javaworld/jw-12-1996/jw-12-sockets.html?page=3
29