Latest Blog

Multimedia Interaktif Tata Surya
Membuat Multimedia Pembelajaran Interaktif tentang tata surya
ALL BLOG
;
Memainkan suara MP3 dari luar aplikasi Flash
Konsep dasar
Pada tutorial sebelumnya tentang suara kita belajar tentang menambahkan suara secara langsung dengan mengimport suara ke dalam aplikasi. Sedangkan cara lainnya adalah dengan memainkan file suara yang berada di luar aplikasi. Pada tutorial ini juga akan dijelaskan cara membuat tombol pengatur suara seperti tombol play lagu, pause lagu dan stop lagu. Untuk membuatnya ikuti langkah berikut :
Menyiapkan Asset
- Siapkan file suara bertipe MP3 atau WAV kemudian copy ke folder tempat anda bekerja, sebagai contoh digunakan file bernama bgm.mp3.
- Pada file aplikasi Flash, Buatlah 5 buah tombol pengatur suara, berikan nama instance pada masing-masing tombol tersebut. (Lihat gambar)
- Tambahkan sebuah layer dan ubah namanya menjadi layer kode. Selanjutnya klik layer kode, dan tuliskan kode berikut

import flash.events.MouseEvent; import flash.media.SoundTransform; var lagu:Sound = new Sound(); lagu.load(new URLRequest("bgm.mp3")); var musik:SoundChannel = new SoundChannel(); musik = lagu.play(0,1); var pengatur_suara:SoundTransform = new SoundTransform(); t_play.addEventListener(MouseEvent.CLICK, atur_tombol_suara); t_pause.addEventListener(MouseEvent.CLICK, atur_tombol_suara); t_stop.addEventListener(MouseEvent.CLICK, atur_tombol_suara); t_vol_min.addEventListener(MouseEvent.CLICK, atur_tombol_suara); t_vol_plus.addEventListener(MouseEvent.CLICK, atur_tombol_suara); var suara_aktif:Boolean = true; var posisi:Number = 0; function atur_tombol_suara(e:MouseEvent):void { var nama_tombol:String = e.currentTarget.name; if (nama_tombol == "t_play") { if (! suara_aktif) { musik = lagu.play(posisi,1); suara_aktif = true; musik.soundTransform = pengatur_suara; } } if (nama_tombol == "t_pause") { posisi = musik.position; musik.stop(); suara_aktif = false; } if (nama_tombol == "t_stop") { posisi = 0; musik.stop(); suara_aktif = false; } if (nama_tombol == "t_vol_min") { pengatur_suara.volume = pengatur_suara.volume - 0.2; if (pengatur_suara.volume <= 0) { pengatur_suara.volume = 0; } musik.soundTransform = pengatur_suara; } if (nama_tombol == "t_vol_plus") { pengatur_suara.volume = pengatur_suara.volume + 0.2; if (pengatur_suara.volume >= 1) { pengatur_suara.volume = 1; } musik.soundTransform = pengatur_suara; } }
Jalankan aplikasi dengan menekan tombol Ctrl+Enter, maka hasil dari tutorial ini adalah sebagai berikut:
Penjelasan Kode
Penjelasan kode diatas adalah sebagai berikut :
- Untuk membuka file suara yang berada di luar aplikasi digunakan perintah URLRequest diikuti dengan nama file. Dengan cara ini Aplikasi flash akan menstreaming lagu, byte demi byte. Apabila file aplikasi dijalankan secara offline maka suara akan terdengar seketika, karena proses loading yang sangat cepat. Sedangkan apabila file aplikasi dijalankan secara online, maka dibutuhkan beberapa detik untuk membuka file suara.
- Setelah lagu dibuka, dibutuhkan sebuah "container" agar lagu tersebut dapat dimainkan. "Container" ini diistilahkan sebagai SoundChannel, selanjutnya juga dibutuhkan sebuah variabel pengatur_suara yang merupakan objek class SoundTransform yang mana berfungsi untuk mengatur properti sound seperti volume, paning dan sebagainya.
Untuk mempermudah pemahaman kita, bayangkan bahwa variabel lagu adalah sebuah kaset tape, variabel musik adalah sebuah Tape Recorder dan variabel pengatur_suara adalah tombol-tombol pengatur suara yang ada di tape recorder. - Untuk mengetahui apakah suara/lagu sedang dimainkan atau tidak dibuat sebuah variabel suara_aktif. Dengan variabel tersebut penumpukan suara akan dapat dihindari. Variabel posisi digunakan untuk menyimpan posisi lagu yang sedang dimainkan (detik terakhir yang sedang dimainkan). Variabel ini berfungsi untuk tombol pause, dimana kita harus menyimpan posisi detik tempat kita menekan tombol pause, sehingga ketika di play lagi, musik tidak mengulang dari awal tetapi dimainkan dari detik terakhir yang disimpan oleh variabel ini.
lagu.load(new URLRequest("bgm.mp3"));
var musik:SoundChannel = new SoundChannel(); musik = lagu.play(0,1); var pengatur_suara:SoundTransform = new SoundTransform();
var suara_aktif:Boolean = true; var posisi:Number = 0;
File Sumber
download
Share ( Ayo Berbagi )
Leave me a comment
untuk pertanyaan lebih baik di email langsung ke wandah [at] wandah [dot] com agar cepat direspon