22
Perkembangan yang pesat dari konten media di dalam web telah membuat video dan audio bagian esensial dari rich internet application (aplikasi internet kaya fitur). Paket javafx.scene.media memfasilitasi pembuatan aplikasi media yang lintas platform, yang dapat dengan mudah dimainkan di layar desktop, di dalam halaman web atau pada perangkat mobile, dari media yang tertaman (embadded) yang sederhana sampai pada pemutar grafis untuk efek visual dan transformasi.
3.1.1 Format dan Flatform
Fungsionalitas media JavaFX terdiri dari dua komponen : JavaFX platform-independen layer API yang memungkinkan pengembang membuat aplikasi untuk beberapa perangkat, dan sebuah implementasi platform-dependent pada mesin media.
Gambar 3.1 Komponen platform JavaFX
Komponen platform-independent adalah satu set APIs yang merupakan bagian dari JavaFX SDK. Spesifikasi dari platform tersebut adalah implementasi dari APIs untuk platform tertentu.
Tabel 3.1 Platform yang didukung JavaFX
Operating System JRE Version Browser
Windows XP, Vista JRE 1.6x Internet Explorer 6,
Internet Explorer 7, Internet Explorer 8, FireFox 3 Mac Mac OS X 10.4, 10.5 JDK 1.5 for applets and JDK 1.6 for stand-alone applications Safari, FireFox 3
Linux Ubuntu 8.04 JRE 1.6x FireFox 3
Solaris OpenSolaris 2009.06
Tabel 3.2 Media Codecs JavaFX
Lintas-Platform Windows XP dan Vista Mac OS X 10.4 dan 10.5 Mesin media Lintas-platform untuk pemutaran FLV DirectShow CoreVideo Video codecs
On2 VP6 Semua codecs yang
didukung Windows Media Player (WMP) Semua codecs yang didukung oleh Mac melalui CoreVideo Audio Pemutaran MP3 dalam
semua platform termasuk desktop dan mobile
Semua format audio yang didukung Windows Media Player Semua file audio yang dapat dibaca QuickTime for Mac Informasi referensi
On2 VP6 for Adobe Flash Player and JavaFX.
File multimedia yang didukung Windows Media Player
Spesifikasi QuickTime
3.1.3 Format yang tidak didukung JavaFX
Fitur berikut ini tidak didukung pada perangkat desktop : Sorenson FLV (sebagian besar YouTube)
MPEG-4 atau MOV di Windows WMV di Mac
Plugin pihak ketiga.
3.2 Analisis terhadap MP3 Player Sederhana dalam JavaFX
Gambar 3.2 Contoh MP3 Player sederhana
Dalam bahasan ini kita akan menganalisa MP3 Player Sederhana yang menggunakan JavaFX, sebagai contoh bagaimana JavaFX bekerja membuat sebuah media player, namun dalam perancangan berbeda dengan contoh sederhana ini.
JavaFX SDK berisi paket javafx.scene.media yang didalamnya terdapat kelas (classes) untuk menggabungkan sebuah media ke dalam aplikasi. Paket ini terdiri dari kelas-kelas berikut:
a. Media : sumber sebuah media, berisi informasi tentang media tersebut seperti asal, resulusi dan metadata, dalam hal ini lokasi file MP3.
b. MediaPlayer : komponen kunci yang menyediakan kontrol untuk memutar media.
d. MediaView : kelas ini merupakan komponen visual untuk menampilkan sebuah media, dalam hal ini sebuah video.
Setiap elemen dari fungsi media ini tersedia dalam JavaFX API, diagram di bawah ini menunjukkan kelas-kelas yang berada dalam paket javafx.scene.media. Kelas-kelas ini saling tergantung dan digunakan dalam kombinasi untuk menciptakan embedded media player.
Dalam analisa ini kita akan fokus pada 3 kelas yaitu Media, MediaPlayer dan MediaError karena ini cukup untuk membuat sebuah pemutar MP3 yang sangat sederhana.
3.2.1 Media Playback Menggunakan Kelas MediaPlayer.
Hal pertama yang harus dilakukan adalah membuat sebuah MediaPlayer:
var player = MediaPlayer { repeatCount:MediaPlayer.REPEAT_FOREVER onError: function(e:MediaError) { display = e.message; } };
Kita bisa melihat di sini bahwa terdapat dua atribut repeatCount dan onError.Atribut repeatCount menunjukkan jika media harus loop atau play sekali dan kemudian berhenti. Nilai untuk repeatCount didefinisikan sebagai konstanta pada kelas MediaPlayer, dan MediaPlayer.REPEAT_FOREVER untuk playback loop.
Atribut onError menetapkan perhentian ketika sebuah kesalahan terjadi. penutupan ini melewati sebuah contoh dari MediaError untuk menunjukkan apa yang terjadi.
untuk mengontrol itu : play() yang dimulai atau resume playback dan pause() yang memungkinkan Anda untuk berhenti (tapi tidak me-reset) pemutaran di mp3 player. Sebagai contoh, sebuah tombol yang sangat sederhana untuk berhenti (stop) dan memulai (start) MediaPlayer.
Button {
enabled : bind enabled text: bind text
action: function() {
if (text == "Stop") { player.pause(); text = "Play"
} else if (player.media != null and text == "Play") { player.play(); text = "Stop"; } } }
Ketika tombol diklik pada saat playing state, kita memanggil
player.pause(). Ketika dalam keadaan berhenti yang pertama kita cek adalah
adakah media yang tersedia untuk dimainkan dan tombol yang yang terlihat untuk ditekan.
3.2.3 Membuat sebuah Media untuk kelas MediaPlayer
Hal terakhir yang kita lakukan adalah memilih beberapa media untuk diputar. Sekarang JavaFX SDK tidak memasukkan semua API Swing, hanya satu
set komponen yang dapat kita temukan dalam paket javafx.ext.swing. Kabar
baiknya adalah untuk memanggil JFileChooser dari dalam kode JavaFX. kita
menggunakan javafx.ext.swing.Button untuk memanggil kode pemilihan
media dan meletakkannya di contoh media player kita.
Kode ini pada dasarnya sebuah panggilan JFileChooser yang memilih file
mp3 dari sistem javax.swing.filechooseruntuk mendapatkan semua. mp3 file
dalam sistem file.
Akhirnya setelah kita memiliki file Mp3 file, hal terakhir yang perlu Anda lakukan adalah menciptakan Media objek dan memasukkannya ke MediaPlayer.
3.3 Diagram Alir
Diagram alir yang biasa disebut flowchart adalah sebuah urutan proses yang berjalan untuk kemudian menjalankan intruksi program yang diberikan. Flowchart sangatlah penting bagi sebuah program, dimana program tersebut dapat dikelola dengan baik.
Aliran proses yang terjadi pada aplikasi ini tidaklah menggunakan sistem login, karena aplikasi ini dapat dengan mudah digunakan oleh siapapun. Sistem login tidak diperlukan dalam aplikasi ini, karena pada aplikasi ini tidak memprioritaskan pada keamanan data yang dimiliki oleh aplikasi ini. Untuk itu, aplikasi ini digunakan untuk menjadi user friendly yang dapat mempermudah user dalam penggunaannya.
Diagram alir yang terjadi dalam pembuatan MP3 player ini adalah sebagai berikut :
Gambar 3.4 Diagram Alir Tidak Tidak Tidak Ya Memainkan Ya Memilih Ya Menu Utama Import file MP3 Apakah semua file sudah dimuat? Pilih judul lagu MP3 Sesuai Putar MP3 Selesai Stop
3.4 Perancangan Layar Utama
Perancangan Layar Utama tampak seperti gambar di bawah ini, rancangan user interface ini adalah tampilan utama dari aplikasi yang akan dibuat. Perancangan ini terdiri dari :
Nama aplikasi : diberi nama MediaPlayerFX.
Progress Bar : berfungsi sebagai baris kemajuan dari file lagu yang sedang diputar.
Tombol control : berguna untuk sebagai tombol stop, play dan skip file.
Pilihan album : terdiri dari album dari artis yang telah diimpor dari hardisk ke dalam aplikasi.
Tombol bantuan : berfungsi untuk menampilkan file lagu yang terdapat dalam suatu album, juga berfungsi sebagai pengganti dan pengacak pilihan lagu.
Gambar 3.4 Rancangan layar utama Nama Aplikasi
Tombol
kontrol Progress Bar
Tombol bantuan Pilihan album