cara membuat mp3 player mini
MembuatMP3 Player dengan menggunakan DFPlayer Mini MP3-TF-16P secara standalone dengan kontrol 2 buah tombol untuk Next/Volume Up dan Previous/Volume Down.S
Step1. Let's query the user's device for audio files. First, add a new class to your project, naming it Song. We will use this class to model the data for a single audio file. Inside the class declaration, add three instance variables for the data we want to store for each track: 1. 2.
Inthis step, we will create a user interface for our mp3 music player in java. We will need five image buttons such as play, pause, resume, stop, selecting song. Also we need FileChooser which helps us to choose the mp3 music file from the directory of the system and one label is needed to print which current song is selected.
Themodule comes with an SDcard slot and supports both FAT16, FAT32 file system. Some of the features of the DF player mini include: Support of sampling rate of 8KHz, 11.025KHz, 12KHz, 16KHz, 22.05KHz, up to 48KHz. 24-bit DAC output, dynamic range support 90dB, SNR supports 85dB. Supports FAT16, FAT32 file system, maximum support 32GB TF card.
Iam trying to set sound on web page. I found this code. It is working code when the div is visible but I want to be hidden and working. In this case it is not working because it is hidden with style attribute. How to make it not visible and playing sound at the same time ?
học đại học có nghỉ hè không. DFPLAYER MINI MP3-TF16-P DFPlayer atau MP3-TF-16P merupakan modul elektronika pemutar file audio / musik / suara dengan format file MP3. Format ini sudah tidak asing lagi, sehingga akan memudahkan kita memainkan file suara mp3 dengan menggunakan modul ini. Ukuran dimensi modul DFPlayer mini ini berbentuk persegi dengan ukuran 21mm x 21 mm. Jumlah kakinya memiliki total 16 pin, namun modul ini memiliki 2 pin ADKEY yang memiliki 20 fungsi. Spesifikasi DFPlayer Mini MP3-TF-16PPengaplikasian DFPlayer Mini MP3-TF-16PPinout DFPlayer Mini MP3-TF-16PSkema Rangkaian DFPlayer Mini MP3-TF-16P Mode StandaloneAlat dan Bahan yang dibutuhkanMerangkai DFPlayer Mini MP3-TF-16PSkema Rangkaian DFPlayer Mini MP3-TF-16P Mode ADKEY Analog to Digital Key Spesifikasi DFPlayer Mini MP3-TF-16P Specification Mendukung sampling rates kHz 8/ 24 -bit DAC output, support for dynamic range 90dB , SNR support 85dBMendukung format FAT16 , FAT32 file system, namun hanya bisa membaca TF-Card maksimal 32GB, USB Flash Disk 32GB of U disk, NORFLASH 64M bytesMemiliki beberapa mode kontrol, I/O control mode, serial mode, AD button control mode advertising sound waiting function, the music can be suspended. when advertising is over in the music continue to play audio data sorted by folder, Mendukung sampai 100 folders, namun setiap folder hanya bisa maksimal 255 lagu30 level adjustable volume, 6 -level EQ adjustable Pengaplikasian DFPlayer Mini MP3-TF-16P Kita dapat mengaplikasikan modul DFPlayer Mini MP3-TF-16P ini untuk membuat project Suara Antrian seperti di Bank, Loket, Kasir, dllSuara Petunjuk seperti pada GPS,Pengumuman di fasilitas publik seperti di Stasiun, terminal, dllSuara di Tiket Parkir Otomatis,Alarm Suara, dan masih banyak lagi. DFPlayer Mini MP3-TF-16P ini sudah memiliki built-in amplifier, sehingga kita bisa menghubungkan speaker secara langsung ke pin SPK_1 dan SPK_2, namun dengan ukuran speaker maksimal 1 Watt. Apabila ingin suara yang lebih keras bisa juga menghubungkan DFPlayer Mini / MP3-TF-16P dengan Power Amplifier, pin DAC_L dihubungkan dengan channel audio kiri dan pin DAC_R dihubungkan dengan channel audio kanan pada Power Amplifier. Kita juga dapat mengontrol Modul DFplayer Mini / MP3-TF-16P ini dengan mikrokontroler seperti arduino melalui komunikasi serial. Namun dalam tutorial ini saya akan menggunakan modul ini tanpa mikrokontroler alias berdiri sendiri standalone tanpa menggunakan kontrol tambahan. Berikut adalah 16 pinout dari DFPlayer Mini / MP3-TF-16P ini Pinout DFPlayer Mini / MP3-TF-16P Skema Rangkaian DFPlayer Mini MP3-TF-16P Mode Standalone Untuk memainkan file mp3 dengan modul ini kita hanya memerlukan rangkaian sederhana, yaitu dengan hanya membutuhkan 1 speaker mini 1 watt 8 ohm dan 2 buah push button serta power supply 5 VDC. Untuk mengontrol modul DFPlayer Mini MP3-TF-16P ini dengan cara menghubungkan tombol push button dengan pin I/O 1 dan pin I/O 2. Ketika kita menekan tombol secara cepat atau sesaat berfungsi sebagai next ataupun previous dan ketika menekan tombol dengan cara hold atau menekan lama berfungsi sebagai sebagai volume + atau volume -. Di bawah ini adalah rangkaiannya Skema Rangkaian DFPlayer Mini MP3-TF-16P secara standalone Alat dan Bahan yang dibutuhkan Untuk melakukan project pembuatan DFPlayer Mini / MP3-TF-16P secara standalone ini membutuhkan komponen lain, sehingga kita perlu mempersiapkan beberapa alat dan bahan, seperti DFPlayer Mini / MP3-TF-16P Speaker 8 Ohm 0,5WattBread Board Kabel JumperPower Supply 5VPush Button Memory MicroSD 1-16GB Format FAT atau FAT32File mp3 musik, suara, dsb kita harus memberi nama dengan nama 0001, 0002, 0003, dan seterusnya, kemudian masukkan ke dalam folder bernama “mp3” tanpa tanda kutip. Merangkai DFPlayer Mini MP3-TF-16P Rangkaian DFPlayer Mini MP3-TF-16P Setelah semua komponen dirangkai dan dihubungkan, pastikan kembali sambungannya harus sesuai dengan skema rangkaian DFPlayer Mini / MP3-TF-16P secara standalone. Ketika pertama kali menyalakan DFPlayer Mini / MP3-TF-16P berada dalam keadaan stanby menunggu perintah yang masuk pada pin I/O1 dan I/O2 melalui tombol push Button. Jika kita menekan tombol Push Button yang terhubung dengan I/O1 secara cepat sesaat maka file mp3 akan play dalam hal ini I/O1 berfungsi sebagai perintah NEXT sedangkan jika kita tekan tombol Push Button yang terhubung pada I/O2 secara sesaat maka hal itu berfungsi sebagai perintah PREVIOUS. Namun apabila kita tekan lama Hold tombol Push Button I/O1 berfungsi sebagai perintah Volume + suara semakin keras. Apabila kita menekan lama Hold tombol Push Button I/O2 berfungsi sebagai Volume – suara semakin pelan. Pada saat modul DFPlayer Mini / MP3-TF-16P berada dalam keadaan stanby, LED pada module tidak menyala, tetapi ketika file mp3 sudah main baru akan menyala. Skema Rangkaian DFPlayer Mini MP3-TF-16P Mode ADKEY Analog to Digital Key Jika I/O Mode hanya bisa memberikan perintah sederhana maka pada mode ini kita dapat menggunakan 20 perintah dengan 20 pushbutton yang berbeda melalui ADC pada PIN ADKEY_1 dan ADKEY_2, berikut adalah rangkaian ADC-nya dan keterangan perintahnya Tutorial selanjutnya akan menjelaskan bagaimana caranya menjalankan modul DFPlayer Mini / MP3-TF-16P dengan kontrol perintah dari mikrokontroler arduino. Untuk melihat tutorialnya silahkan klik Tutorial DFPlayer Mini MP3 dengan Arduino.
Kami akan membuat pemutar mp3 sederhana yang dapat Anda sisipkan di laman web mana pun misalnya beranda band. Dengan mengikuti tut ini, Anda akan belajar cara mengimpor grafik Illustrator, cara membuat sprite tombol dengan movieclips dan cara menggunakan kelas Timer dan Sound. Kita mulai.. Persiapan Pertama saya akan membahas apa yang kita butuhkan untuk menyelesaikan tutorial ini Saya telah menggunakan kelas pihak ke-3 Caurina Tweener untuk tween elemen di layar. Ini tidak diperlukan karena Anda dapat menggunakan kelas tween Flash sendiri untuk melakukan pekerjaan yang sama. Pikiran Anda, jika Anda tidak terbiasa dengan Caurina saya sarankan Anda untuk melihatnya. Tween Lite adalah tweener pihak ke-3 lain yang mungkin pernah Anda dengar. Ini adalah kelas tween yang sangat kuat yang juga bisa Anda gunakan untuk proyek ini jika Anda mau. Anda dapat menemukan Caurina Tweener dalam kode sumber. Kode sumber termasuk satu file mp3 yang akan kita butuhkan teriakan tarzan . Anda juga dapat menggunakan mp3 Anda sendiri jika mau. Juga dalam kode sumber Anda akan menemukan direktori "ai" yang berisi file File ini mencakup semua grafik untuk pemutar. Terakhir saya memasukkan font yang kita butuhkan. Ini disebut 04b03 dan ini adalah font bitmap. Instal dan Anda siap berangkat. Langkah 1 Buat File baru Pertama, Anda perlu membuat dokumen Flash Actionscript baru. Anda tidak perlu menyesuaikan properti dokumen apa pun. Pergi ke Flash > Preferences > AI file importer di Mac atau Edit > Preferences > AI file importer di Windows. Pastikan Anda memiliki pengaturan berikut Simpan dan berikan nama " Juga salin direktori "caurina" dan " ke tempat yang sama dengan file .fla Anda. Langkah 2 Mengimpor File Illustrator Sekarang kita siap untuk mengimpor file Illustrator. Buka File > Import > Import to Stage. Temukan " dari direktori source paket "ai", tekan OK dan Anda akan mendapatkan layar seperti yang ditunjukkan di bawah ini. Atur Convert to layers "Flash layers" sehingga Anda mendapatkan semua layer yang terkandung dalam file ai langsung ke Flash. Dua opsi berikutnya, seperti yang ditunjukkan pada gambar, menempatkan semua artwork ke koordinat yang sama seperti dalam file ai dan mengubah ukuran dokumen Flash Anda persis dengan ukuran yang kita butuhkan. Ketika Anda mengklik OK di dialog impor dokumen Anda akan terlihat seperti gambar yang ditunjukkan di atas. Step 3 Membuat tombol Sprite Anda mungkin memperhatikan tombol putar dan jeda pada gambar terakhir. Itu akan menjadi sprite tombol kami yang mengontrol suara. Semua tombol dikelompokkan menjadi satu grup. Pilih grup tombol saja dan tekan F8 untuk mendapatkan layar "Convert to symbol". Beri nama "buttons" dan pastikan Anda memilih MovieClip sebagai jenisnya. Atur registrasi ke sudut kiri atas dan klik OK. Beralih ke panel Properties dan beri objek itu nama "buttons". Gambar di bawah menggambarkan langkah-langkah ini secara visual Kami memiliki tombol kami dalam satu klip video, tetapi mask tidak termasuk. Kami membutuhkan satu movieclip lagi untuk mengikat semuanya. Pilih tombol movieclip dan objek mask. Sekali lagi tekan F8 dan sekarang beri nama "buttonSprite". Juga ingatlah untuk memberinya nama contoh. Kali ini "bs" Saya tahu apa yang Anda pikirkan, tetapi ini adalah singkatan dari ButtonSprite. Langkah 4 Masking Manual Sekarang sprite tombol kami hampir siap untuk diguncang. Yang perlu kita lakukan hanyalah menutupinya sehingga hanya menampilkan satu tombol pada satu waktu. Klik dua kali tombol Anda. Pilih movieclip. Buat layer baru di atas layer aktif dan beri nama "mask". Pilih objek mask dan potong menggunakan "Cmd + X" pada Mac atau "Ctrl + X" pada Windows. Pilih layer mask dan rekatkan paste "Cmd + V" pada Mac atau "Ctrl + V" pada Windows. Tidak masalah di mana objek mask Anda karena selanjutnya kita luruskan ke tempat yang tepat. Dengan topeng Anda masih dipilih buka panel Align Window > Align dan pastikan tombol "To stage" ditekan. Sekarang tekan tombol "Align top edge" dan "Align left edge" dan objek mask Anda sekarang harus berada di posisi yang benar, sudut kiri atas movieklip Anda. Satu-satunya yang tersisa untuk dilakukan adalah menutupi tombol. Klik kanan di atas layer mask dan pilih Mask. Anda dapat melihat efeknya secara instan; hanya satu tombol yang terlihat. Langkah 5 Mulai Membuat Tampilan Mari kita lupakan tombolnya untuk sementara dan fokus pada tampilan pemutar MP3. Saya akan menunjukkan cara membuat elemen tampilan ini secara manual. Itu bisa dilakukan dengan AS3, tentu saja, tapi mari kita lakukan secara manual kali ini. Pertama pilih elemen topeng dari lapisan mask. Konversikan ke klip video dan beri nama "displayMask". Gunakan nama ini sebagai nama instance juga. Mask untuk tampilan siap, jadi sembunyikan layer. Selanjutnya, buat layer antara lapisan tombol dan lapisan topeng. Beri nama "text". Pilih Text Tool dari palet Alat dan gunakan opsi yang ditunjukkan pada gambar di bawah Langkah 6 Tambahkan Bidang Teks ke Tampilan Kami membutuhkan bidang teks untuk menampilkan informasi kami artis, nama lagu, persentase pemuatan dan panjang lagu. Kami akan membuat bidang teks secara manual ke atas stage. Pertama-tama gambarlah bidang teks pada layer teks seperti yang ditunjukkan pada gambar di bawah ini. Konversikan ketiga bidang teks menjadi satu movieclip tunggal yang disebut "playerTexts". Buat satu bidang teks lagi dan menyebutnya "preloader". Anda tidak perlu mengonversikan ini ke movieclip . Langkah 7 Menyempurnakan Tampilan Yang perlu kita lakukan adalah memasukkan loader-textfield dan playerTexts-movieclip baru kita dalam satu movieclip sehingga kita dapat mengontrol teks sesuka kita. Pilih loader-textfield dan playerTexts-movieclip dan tekan F8. Beri nama dan nama instance "display". Sekarang kami telah menyelesaikan hierarki tampilan kami, akan terlihat seperti ini Untuk menulis contoh data ke songInfo-textfield kita harus menulis baris kode berikut 1 2 = 'This is where we put the artist and song name'; Jadi sekarang kita memiliki setiap elemen grafis yang siap yang kita butuhkan untuk MP3 Player. Selanjutnya kita akan melompat jauh ke dalam kode, jadi menyelam dengan saya! Langkah 8 Buat File Kelas Dokumen Agar kode berfungsi, kita perlu membuat kelas dokumen. Kode kelas dokumen dieksekusi pertama kali ketika file .swf diputar. Anda tidak perlu menulis kode lagi ke timeline dan kelas Anda lebih mudah untuk mengimpor ke file .fla lain di masa depan jika diperlukan. Buka File > New. Pilih "File skrip Actions" dari jendela yang terbuka dan klik OK. Simpan file ke folder yang sama dengan file .fla Anda dan beri nama " Sekarang tetapkan file .as Anda yang baru sebagai kelas dokumen. Klik stage dan pergi ke panel Properties. Di sana Anda akan menemukan bidang "Class" tempat Anda harus memasukkan nama kelas yang Anda buat. Masukkan "SimpleMP3Player" dan klik tombol pensil kecil. Jika Anda mengeja nama kelas dengan benar, file " akan menjadi aktif. Kalau tidak, Flash akan menimbulkan kesalahan. Langkah 9 Kode Kode menghidupkan segalanya. Inilah ActionScript yang lengkap, saya akan menjelaskannya blok demi blok. Periksa juga kode sumber dari paket sumber, saya sudah komentari dari awal hingga akhir. 1 2 package 3 { 4 import 5 import 6 import 7 import 8 import 9 import 10 import 11 import 12 import 13 import 14 import 15 import 16 import 17 import 18 import 19 20 public class SimpleMP3Player extends MovieClip 21 { 22 // Create some variables that we need 23 private var mp3FileSound; 24 private var mp3FilePositionSoundChannel; 25 private var id3DataID3Info; 26 private var id3InfoAvailable = false; 27 28 private var updateTimeTimer; 29 30 private var playingSoundBoolean = false; 31 private var soundPositionNumber; 32 private var songReachedEndBoolean = false; 33 34 private var buttonPosArray = new Array'0', '-36', '-72', '-108', '-144', '-180', '-216', '-252'; 35 36 public function SimpleMP3Player 37 { 38 = -73; 39 = displayMask; 40 41 = = false; 42 = buttonPos[3]; 43 44 loadMP3; 45 } 46 47 private function loadMP3void 48 { 49 mp3File = new Sound; 50 mp3FileLoading; 51 mp3FileLoaded; 52 errorLoadingSound; 53 54 getID3Data; 55 URLRequest' 56 57 {x 96, time1}; 58 } 59 60 private function mp3FileLoadingeProgressEventvoid 61 { 62 var currentPercentNumber = / * 100; 63 = 'LOADING...' + currentPercent + '%'; 64 65 if currentPercent > 50 && id3InfoAvailable 66 { 67 {x 200, time1, onCompleteplayMP3, onCompleteParams[false, 0]}; 68 mp3FileLoading; 69 } 70 } 71 72 private function mp3FileLoadedeEventvoid 73 { 74 mp3FileLoaded; 75 updateBufferField; 76 {x 200, time1}; 77 } 78 79 private function errorLoadingSoundeIOErrorEventvoid 80 { 81 trace'Error loading sound ' + e; 82 } 83 84 private function getID3DataeEventvoid 85 { 86 id3InfoAvailable = true; 87 id3Data = 88 } 89 90 private function playMP3useSpBoolean, spNumbervoid 91 { 92 if useSp mp3FilePosition = 93 else mp3FilePosition = 94 95 playingSound = true; 96 songFinished; 97 updateBufferField; 98 99 = = true; 100 = buttonPos[0]; 101 102 mouseOverBs; 103 mouseOutBs; 104 mouseClickBs; 105 106 updateTime = new Timer100; 107 108 getMP3Time; 109 110 111 var siString = + ' - ' + 112 si = 113 = 114 = false; 115 = si; 116 117 {x 60, time1}; 118 } 119 120 private function updateBufferFieldeProgressEventvoid 121 { 122 var currentPercentNumber = / * 100; 123 = currentPercent + '%'; 124 } 125 126 private function getMP3TimeeTimerEventvoid 127 { 128 var totalMinutes = / 1000 / 60; 129 var totalSeconds = / 1000 % 60; 130 var currentMinutes = / 1000 / 60; 131 var currentSeconds = / 1000 % 60; 132 133 if totalSeconds 50 && id3InfoAvailable 9 { 10 {x 200, time1, onCompleteplayMP3, onCompleteParams[false, 0]}; 11 mp3FileLoading; 12 } 13 } Seperti yang saya sebutkan sebelumnya, metode "mp3FileLoading" menunjukkan nilai persentase berapa banyak file mp3 telah dimuat. Itu juga memulai lagu ketika persentase naik lebih tinggi dari 50%. currentPercent adalah untuk menghitung nilai persentase. Kami membulatkannya ke atas dengan metode " Baris 4 menulis nilai persentase ke bidang teks kami sehingga pengguna dapat melihat apa yang terjadi dengan pemuatan. Di dalam pernyataan "if" kami memeriksa apakah persentasenya di atas 50 dan variabel "id3InfoAvailable" benar. Jika keduanya mengembalikan true, pernyataan "if" menjalankan semua yang ada di dalam tanda kurung. Ketika pernyataan if true, kita membuang bidang teks "preloader". Ketika tween selesai, Caurina memanggil metode "playMP3" dan memasukan dua properti untuk itu. Kami melihat metode "playMP3" pada langkah berikutnya. Event PROGRESS tidak lagi diperlukan, jadi kami menghapusnya di baris 9. Langkah 17 Metode event mp3FileLoaded 1 2 3 private function mp3FileLoadedeEventvoid 4 { 5 mp3FileLoaded; 6 updateBufferField; 7 {x 200, time1}; 8 } Metode ini dipanggil ketika seluruh lagu dimuat. Pertama, kami menghapus EventListeners yang tidak perlu. Pada baris 5 kita memutar bidang teks "buffer" ke kanan. Langkah 18 Metode Event ErrorLoadingSound 1 2 3 private function errorLoadingSoundeIOErrorEventvoid 4 { 5 trace'Error loading sound ' + e; 6 } Penanganan kesalahan ini sangat mendasar. Ini hanya melacak kesalahan jika kesalahan terjadi. Langkah 19 Metode Event getID3Data 1 2 3 private function getID3DataeEventvoid 4 { 5 id3InfoAvailable = true; 6 id3Data = 7 } Kami menetapkan "id3InfoAvailable" menjadi true di baris 3. Metode "mp3FileLoading" memeriksa variabel ini setiap kali dan mulai suara hanya jika itu true. Dengan cara ini kami memastikan bahwa info id3 tersedia sehingga pengguna melihat info asli di layar. Pada baris 4, kami menetapkan metadata id3 mp3File ke objek ID3Info bernama id3Data yang kami buat di Langkah 12. Langkah 20 Metode playMP3 Metode ini adalah metode yang lebih vital di player kami. Mari kita lihat blok pertama. 1 2 3 private function playMP3useSpBoolean, spNumbervoid 4 { 5 if useSp mp3FilePosition = 6 else mp3FilePosition = Metode "playMP3" membutuhkan dua properti. "useSp" menunjukkan "gunakan posisi suara" dan "sp" adalah "posisi suara". Pada baris 3 kami menguji apakah "useSp" true. Jika demikian, kode akan memutar lagu kami mulai dari titik yang diinginkan. Titik ini dilewatkan di properti "sp". Jika salah, kami mulai memutar lagu dari awal. Semua ini terkait dengan tombol play-pause. 1 2 3 playingSound = true; 4 songFinished; 5 updateBufferField; Baris 1 mengatur playingSound menjadi true. Sekarang kita dapat memeriksa apakah suara diputar dan melakukan apa yang diperlukan. EventListener baru di baris 2 dijalankan setiap kali lagu selesai diputar. Metode "songFinished" dijalankan. Perhatikan bahwa kami menambahkan EventListener ke objek mp3FilePosition. EventListener baru kedua di baris 3 menambahkan event "PROGRESS" yang sama ke mp3File seperti pada awal kode. Listener ini hanya menjalankan metode yang berbeda. Metode "updateBuffer" adalah untuk memperbarui bidang teks "buffer". 1 2 3 = = true; 4 = buttonPos[0]; Baris pertama yang sudah Anda kenal. File mp3 kami diputar sehingga kami dapat memperbarui tombol untuk menampilkan status yang sesuai, mengaktifkan properti "buttonMode" dan "enabled". Kami menggunakan "Timer" untuk menunjukkan posisi suara saat ini dalam hitungan detik. Dengan "Timer" Anda dapat menjalankan metode dalam urutan waktu. 1 2 3 updateTime = new Timer100; 4 5 getMP3Time; 6 Di sini, baris pertama membuat objek "Timer" baru dengan interval 100 milidetik. Anda mungkin bertanya-tanya mengapa kami ingin memperbarui waktu saat ini setiap 100 milidetik .. 1 detik terlalu lambat untuk player kami dan bahkan 0,5 detik terlalu lambat. Saya ingin memperbarui waktu dengan sangat lancar. Lebih lanjut tentang kelas Timer. Kami juga membutuhkan EventListener untuk benar-benar melakukan sesuatu setiap 100 milidetik. Event "TIMER" menjalankan metode "getMP3Time" yang akan saya bahas di langkah berikutnya. Baris 4 memulai "Timer" kami. 1 2 3 var siString = + ' - ' + 4 si = 5 = 6 = false; 7 = si; 8 9 {x 60, time1}; Di blok terakhir kami menunjukkan metadata id3 kepada pengguna. Nama artis dan nama lagu didorong ke variabel baru di baris pertama. Ini karena saya ingin menggunakan seluruh string di baris berikutnya. Kami menggunakan font bitmap, jadi saya pikir itu hanya terlihat lebih baik dalam huruf besar. Pada baris 3 kami memastikan bahwa bidang teks "songInfo" cukup panjang untuk menampilkan string "si". Baris 4 adalah untuk menghindari pembungkusan kata di bidang teks dan di baris 5 kita cukup menetapkan string "si" untukmu bidang teks "songInfo". Baris terakhir menggeser movieclip "playerTexts" ke "display". Langkah 21 Metode updateBufferField Adalah sopan untuk menunjukkan kepada pengguna seberapa banyak data file mp3 dimuat. Kami memiliki preloader kami, tetapi saya pikir kami akan membutuhkan juga bidang buffer karena lagu kami mulai diputar setelah 50% dimuat. Metode ini berlanjut di mana metode "mp3FileLoading" tinggalkan. 1 2 3 private function updateBufferFieldeProgressEventvoid 4 { 5 var currentPercentNumber = / * 100; 6 = currentPercent + '%'; 7 } Tidak ada yang istimewa di sini, hanya fungsi pribadi dengan dua baris aksi. Penghitungan persentase dasar dan menetapkannya ke bidang teks "buffer". Langkah 22 Metode Event getMP3Time Saya menunjukkan metode ini sekaligus karena ini hanya matematika dan pengkodean yang sangat dasar. Mari kita lalui. 1 2 3 private function getMP3TimeeTimerEventvoid 4 { 5 var totalMinutes = / 1000 / 60; 6 var totalSeconds = / 1000 % 60; 7 var currentMinutes = / 1000 / 60; 8 var currentSeconds = / 1000 % 60; 9 10 if totalSeconds < 10 totalSeconds = '0' + totalSeconds; 11 if currentSeconds < 10 currentSeconds = '0' + currentSeconds; 12 13 = currentMinutes + '' + currentSeconds + '/' + totalMinutes + '' + totalSeconds; 14 } Dalam 4 baris pertama kita menghitung waktu yang kita butuhkan. Ini agak sulit karena semua nilai yang dikembalikan dalam milidetik. Kami juga mencatat menit dan detik ke bawah. Baris 8 dan 9 adalah untuk menambahkan nol ekstra sebelum detik jika nilai-nilai itu di bawah 10 ini hanya tweaker dan tidak diperlukan. Bagi saya bidang "time" maka terlihat sedikit lebih bersih. Baris terakhir menunjukkan seluruh waktu kepada pengguna. Langkah 23 Metode Event songFinished Mari kita lanjutkan dengan kode yang sangat mendasar. 1 2 3 private function songFinishedeEventvoid 4 { 5 songFinished; 6 getMP3Time; 7 8 = buttonPos[3]; 9 10 11 playingSound = false; 12 songReachedEnd = true; 13 14 soundPosition = 0; 15 = 'PLAY AGAIN?'; 16 } Metode event "songFinished" diluncurkan setiap kali lagu selesai diputar. Di dua baris pertama kami menghapus EventListeners yang tidak perlu. Selanjutnya kami menunjukkan tombol putar yang dinonaktifkan kepada pengguna dan menghentikan file mp3. Menghentikan tidak diperlukan, tetapi kami melakukannya untuk berjaga-jaga. "playingSound" disetel ke false dan "songReachedEnd" menjadi true. Dalam langkah ext Anda melihat mengapa kita memerlukan variabel "songReachedEnd". "soundPosition" dapat diakses dari mana saja di kelas kami sehingga harus diatur ke 0 pada titik ini. Sekarang kami memastikan bahwa jika pengguna ingin memutar lagu lagi, dimulai dari awal. Baris terakhir menetapkan bidang teks "times" untuk menampilkan teks "PLAY AGAIN?". Pengguna kami adalah raja, itu sebabnya kami harus memberikan semua informasi yang mungkin kepada mereka. Langkah 24 Metode Event mouseOverBs dan mouseOutBs 1 2 3 private function mouseOverBseMouseEventvoid 4 { 5 if playingSound = buttonPos[5]; 6 else = buttonPos[1]; 7 8 if songReachedEnd && !playingSound = buttonPos[1]; 9 } Di sini metode "mouseOverBs" dijalankan setiap kali mouse melewati movieclip "bs". Pertama metode acara ini memeriksa apakah "playingSound" true dan apakah movieclip "tombol" dalam keadaan "jeda". Kalau tidak, ini akan menunjukkan status "memutar". Baris terakhir kami memeriksa apakah suara sudah selesai diputar dan menunggu apakah pengguna ingin memutar lagu lagi. 1 2 3 private function mouseOutBseMouseEventvoid 4 { 5 if playingSound = buttonPos[0]; 6 else = buttonPos[4]; 7 8 if songReachedEnd && !playingSound = buttonPos[3]; 9 } Metode lain ini adalah ketika mouse pergi di atas movieclip "bs". Hal ini mirip dengan metode sebelumnya. Langkah 25 Metode Event mouseClickBs Metode Event ini adalah jantung dari fungsi klik movieclip "bs" kami. 1 2 3 if playingSound 4 { 5 = buttonPos[4]; 6 soundPosition = 7 8 9 playingSound = false; 10 = 'PAUSE'; Ketika Anda mengklik tombol itu pertama kali memeriksa apakah suara diputar. Jika demikian, ini akan memindahkan klip tombol "buttons", menyimpan posisi suara saat ini di mana kita dapat terus bermain dari jika kita mau, menghentikan "Timer" kami, menghentikan lagu kami, mengatur "playingSound" ke false dan memperbarui "times" textfield teks ke "PAUSE". Blok kode ini adalah tombol jeda kami. 1 2 3 else if !playingSound 4 { 5 = buttonPos[2]; 6 playMP3true, soundPosition; 7 playingSound = true; 8 9 } Blok kode ini memulai lagu kami dari kondisi jeda. Ia memeriksa apakah lagu kami tidak diputar dan memulai lagu dari "soundPosition" yang disimpan. 1 2 3 else if songReachedEnd 4 { 5 songReachedEnd = false; 6 playMP3false, 0; 7 } Blok terakhir memeriksa bahwa jika lagu telah selesai diputar dan pengguna ingin memutar lagu lagi, itu akan memulai lagu dari awal. Kesimpulan SimpleMP3Player sekarang lengkap ... sejauh yang saya ketahui. Sekarang giliran Anda untuk menambahkan beberapa fitur ke dalamnya. Mungkin Anda ingin menambahkan tombol berhenti atau mungkin memberikan fitur daftar putar dengan XML. Buat bidang teks "songInfo" dapat digulir sehingga data lebih lama ditampilkan sepenuhnya. Kemungkinannya tidak terbatas! Jangan lupa untuk memeriksa kode sumber dalam paket sumber. Saya telah mengkomentari kode dari awal hingga akhir sehingga Anda dapat mempelajari tutorial ini dengan cara itu juga. Terima kasih sudah membaca!
Mp3 player adalah sebuah alat yang biasa kita gunakan untuk memutar sebuah file data yang biasanya lagu atau music dengan format .mp3. Beberapa tahun lalu saya pernah juga merakit sebuah mp3 player yang bisa kita gunakan iseng iseng. Mp3 player yang saya buat tersebut selain dapat memutar file mp3 juga dapat memutar suara dari radio, selain itu Mp3 player yang saya buat dulu itu juga bisa saya fungsikan sebagai remote tv yang bisa di pakai untuk semua merk tv seperti pada video dibawah ini. mp3 player tersebut saya buat dengan casing dan pcb yang menjadi satu mengapit sebuah battery 1000mAh yang pada waktu itu sanggup menyala hingga 2 hari penuh tanpa harus mengisi ulang battery. 😀 siapa yang mau dengerin lagu selama 2 hari ya hehehehe Di youtube kamu bisa lihat beberapa video saya yang menampilkan bentuk bentuk mp3 player yang saya pernah buat. tinggal ketik mp3 player duwiarsana. Atau langsung aja berlangganan channel youtube duwiarsana, nanti kamu akan dapat info video video terbaru dari saya. Nah membuat mp3 player sederhana bukan berarti mp3 player yang akan kita buat ini terdiri dari komponen yang sangat sederhana, tetap menggunakan komponen yang kelihatannya rumit namun terbilang sederhana untuk dapat kita rakit sendiri. Dibutuhkan skill solder menegah dan pemrograman yang masih pemula pun dapat membuat project ini. Perlu juga diperhatikan pada coding yang saya share dibawah ini kamu harus mendefinisikan pin mana saja yang akan dihubungkan dari mp3 dekoder ke mikrokontroller. Project mp3 player sederhana ini akan kita buat dengan 2 buah mikrokontroller. yaitu Atmega328p VS1053 mp3 dekoder [toggle title=”Layout” state=”close” ] [/toggle] [toggle title=”Schematic” state=”close” ] [/toggle] [toggle title=”Coding Arduino” state=”close” ] include include include define BREAKOUT_RESET 8 define BREAKOUT_CS 6 define BREAKOUT_DCS 7 define SHIELD_RESET -1 define SHIELD_CS 7 define SHIELD_DCS 6 define CARDCS 9 define DREQ 2 char a; Adafruit_VS1053_FilePlayer musicPlayer = Adafruit_VS1053_FilePlayerBREAKOUT_RESET, BREAKOUT_CS, BREAKOUT_DCS, DREQ, CARDCS; void setup { if ! { 500; while 1; } 500; if ! { 500; while 1; } if ! pin is not an interrupt pin"; } void loop { } [/toggle] Karena saya disini dalam pengolahan data mp3 nya menggunakan bantuan dari library adafruit kamu bisa download langsung library arduino untuk mp3 player tersebut disini Download Library. Nah dengan dua ic utama itu kita nanti sudah bisa membaca file mp3 dari sebuah memory micro sd yang terhubung ke mp3 dekoder melalui level converter ic 4050. Sesuai skematik saya diatas tadi kamu bisa membuat ulang layout dari mp3 player sederhana saya ini. Menambahkan tombol kontrol mungkin dan juga terintegrasi dengan amplifier bila kamu ingin. Dalam penerapan coding diatas tadi, sesuai dengan baris coding maka file yang akan diputar hanyalah file dengan nama track001 pada memory micro SD yang dipasang. untuk dapat memainkan file lainnya kamu bisa bermain dengan nama file tersebut atau buatkan tombol count up dan down untuk dapat mengubah file name yang akan dicari. Akan sangat efisien jika dalam pengembangan project ini seluruh file mp3 yang ada pada memory terlebih dahulu di list atau di daftar dlu sehingga kita dapat memilihnya satu persatu, dan tentunya hal tersebut harus dibantu dengan display seperti sebuah LCD. Untuk dapat mengeluarkan suara yang cukup keras, pada jalur speadker kamu bisa menghubungkannya ke sebuah rangkaian penguat amplifier audio sehingga pada speaker akan terdengar suara yang lebih keras dari sebelumnya. Layout yang saya tampilkan pada video ini adalah seperti digambar atas. IC mikrokontrollernya saya pakai tipe DIP sedangkan mp3 dekodernya saya pakai yang SMD. Nah kalau pada project ini hanya bisa memutar file mp3 saja, kamu juga bisa sebenarnya membuat yang bisa memainkan radio dengan menambahkan modul radio pada project ini tentunya. 1,242 total views
Procurando um módulo MP3 para o seu projeto? O módulo MP3 DFPlayer Mini é compacto, tem baixo consumo de energia e se saiu muito bem nos testes, mostrando ser uma ótima alternativa para você que pretende utilizar música ou efeitos sonoros de forma simples e eficiente. Com este módulo você pode criar sistemas de som, avisos, alarmes inteligentes e outros projetos na área maker, automação industrial e IoT Internet das Coisas. Utilize por exemplo para emitir um aviso sonoro quando um sensor atingir determinada temperatura, tocar uma música quando determinada tarefa for finalizada ou executar comandos de voz para guiar o usuário em ações que devem ser executadas. O Módulo MP3 DFPlayer Mini O módulo é muito parecido fisicamente com o WTV020-SD, que já vimos aqui no Arduino e Cia, mas o DFPlayer Mini tem dois grandes diferenciais, na minha opinião a possibilidade de conexão de um alto-falante de até 3W sem que você precise utilizar um amplificador, e a capacidade de executar arquivos MP3 sem nenhum tipo de conversão. Na imagem abaixo temos a pinagem do módulo, onde vemos as conexões RX/TX para comunicação serial e controle utilizando um microcontrolador como Arduino ou outro microcontrolador/placa que tenha interface serial/UART, pinos ADKEY para utilização de um teclado analógico, saída para alto falante SPK_1 e SPK_2 e também os pinos DAC, se você preferir ligar o seu DFPlayer Mini em um amplificador. Você pode alimentar o módulo com tensões entre e 5VDC. O DFPlayer Mini suporta sampling rates de 8/ KHz, tem saída DAC de 24 bits, suporta cartões micro SD de até 32GB nos formatos FAT16 e FAT32, reconhece até 100 pastas com 255 músicas cada uma, e tem também 30 níveis de volume e 6 formatos de equalização, além de um “modo propaganda”, que você pode usar para pausar a música quando precisar emitir algum aviso, e assim que o aviso terminar a música continua de onde parou. Usando o módulo no modo standalone Vimos acima que temos 3 modos de controlar o DFPlayer Mini teclado analógico, botões e interface serial, sendo que neste post vamos mostrar como utilizar as duas últimas opções. No circuito abaixo, utilizamos botões tipo push-button para executar as funções de PLAY NEXT/Volume- e PREV/Volume+. Um toque curto no botão da esquerda avança para a próxima música. Mantenha esse botão pressionado para diminuir o volume do som. No botão da direita, um toque curto retorna para a música anterior e mantendo pressionado você aumenta o volume. Depois de montado, o seu circuito vai ficar mais ou menos assim Não esqueça, claro, de conectar a alimentação e o alto-falante. 🙂 DFPlayer Mini com Arduino Para usar o módulo MP3 DFPlayer Mini com Arduino, utilize as conexões abaixo O resistor de 330 ohms no pino RX do módulo eliminou um ruído no alto-falante causado, segundo eu pesquisei, pela alimentação do Arduino. Uma outra opção é você utilizar alimentação externa para o DFPlayer Mini. Vamos controlar a execução das músicas pela serial do Arduino. Carregue o programa abaixo, que utiliza a biblioteca DFPlayer Mini. Essa biblioteca você pode instalar à partir da própria IDE do Arduino. Vá em Sketch => Incluir Biblioteca => Gerenciar Bibliotecas e procure por DFPlayer Mini, da DFRobot Após a instalação da biblioteca, carregue o programa abaixo //Programa Modulo MP3 DFPlayer Mini com Arduino //Autor Arduino e Cia /*************************************************** DFPlayer - A Mini MP3 Player For Arduino *************************************************** Created 2016-12-07 By [Angelo qiao][email protected] GNU Lesser General Public License. See for details. ****************************************************/ include " include " include " //Inicia a serial por software nos pinos 10 e 11 SoftwareSerial mySoftwareSerial10, 11; // RX, TX DFRobotDFPlayerMini myDFPlayer; char buf; int pausa = 0; int equalizacao = 0; void setup { //Comunicacao serial com o modulo //Inicializa a serial do Arduino //Verifica se o modulo esta respondendo e se o //cartao SD foi encontrado DFPlayer Mini"; modulo DFPlayer... 3~5 segundos"; if ! { inicializado"; as conexoes do DFPlayer Mini"; um cartao SD"; while true; } DFPlayer Mini inicializado!"; //Definicoes iniciais //Timeout serial 500ms //Volume 5 //Equalizacao normal //Mostra o menu de comandos de arquivos no cartao SD "; menu_opcoes; } void loop { //Aguarda a entrada de dados pela serial while > 0 { buf = //Reproducao if buf >= '1' && buf <= '9' { musica "; buf = buf - 48; menu_opcoes; } //Parada if buf == 's' { parada!"; menu_opcoes; } //Pausa/Continua a musica if buf == 'p' { pausa = !pausa; if pausa == 0 { musica..."; } if pausa == 1 { pausada..."; } menu_opcoes; } //Seleciona equalizacao if buf == 'e' { equalizacao++; if equalizacao == 6 { equalizacao = 0; } "; 0 = Normal, 1 = Pop, 2 = Rock, 3 = Jazz, 4 = Classic, 5 = Bass"; menu_opcoes; } //Aumenta volume if buf == '+' { atual"; menu_opcoes; } //Diminui volume if buf == '-' { atual"; menu_opcoes; } } } void menu_opcoes { [1-9] Para selecionar o arquivo MP3"; [s] parar reproducao"; [p] pausa/continua a musica"; [e] seleciona equalizacao"; [+ or -] aumenta ou diminui o volume"; } Coloque um cartão SD com os arquivos MP3 no slot do módulo e abra o serial monitor. Será exibido o menu de opções para controlar a execução das músicas Na parte superior do serial monitor você deve digitar os comandos para controle. Digite números de 1 a 9 para escutar a música correspondente, + ou – para aumentar ou diminuir o som, “s” para parar a reprodução e “p” para pausar/continuar a música. Selecione “e”para escolher entre os 6 modos de equalização disponíveis Normal, Pop, Rock, Jazz, Classic e Bass.
Tutorial Menghubungkan DF Player Mini dengan Music Player di IoT Blynk Alat dan Bahan Rangkaian Pengaturan Blynk Program Sedang ada project apa hari ini?Sudah tau belum kalo di aplikasi blynk sudah disediakan widget untuk Music Player?Music Player berfungsi untuk pengendalian device untuk memutar konten lagu, contohnya seperti DF Player Mini. DF Player Mini memiliki slot untuk MicroSD sebagai penyimpan lagu yang ingin diputar. Sedangkan device untuk mengeluarkan suara, kita membutuhkan speaker. DF Player ini, perlu dihubungkan dengan mikrokontroler untuk mengendalikan pemutaran pada project kali ini, kita akan membuat MP3Player yang dapat dikontrol melalui aplikasi blynk di smartphone kita. Bagaimana cara membuatnya? yuk kita simak tutorial di bawah ini. Alat dan BahanAlat dan bahan yang digunakan untuk project kita kali ini adalah sebagai berikut. Jangan sampai ada yang kelewat yang terinstall Arduino IDENodeMCU ESP8266 1DF Player mini module 1Speaker 1Micro SD berisi beberapa lagu 1Breadboard 1Kabel jumper secukupnyaBelajar Elektronika, Arduino, dan IoT step by step dengan bantuan tangga belajar? Daftar sekarang dan dapatkan PROMORangkaianSusunlah semua device di atas menjadi rangkaian seperti berikut ini. Tetap pastikan semua rangkaian terhubung dengan baik. Rapikan rangkaian agar dapat dilihat dengan baik untuk mengantisipasi BlynkSebelum kita masuk ke program Arduino IDE, kita harus membuat tampilan pada aplikasi Blynk terlebih dahulu. ikuti langkah berikut aplikasi Blynk, kemudian pilih New nama untuk aplikasi anda di Project name, setelah itu pilih device yang akan kita gunakan NodeMCU ESP8266. Pilih mode tampilan untuk aplikasi Blynk kita. Dark untuk mode gelap. Light untuk mode terang. klik Sudah maka akan muncul tampilan seperti di bawah ini. Klik tanda plus untuk menambahkan Widget Music Player untuk lagu. Music Player ini digunakan untuk mengatur pemutaran lagu di nodeMCU widget tersebut untuk menampilkan pilihan virtual pin. Pilih pin Slider untuk mengatur volume dari Widget slider untuk mengubah pin dan lainnya seperti gambar di tanda segitiga di kanan atas untuk menjalankan hingga NodeMCU sudah diupload program agar dapat terhubung dengan juga Tutorial Membuat Remote Kontrol Mobil-Mobilan Menggunakan IoT BlynkProgramTahap selanjutnya adalah penulisan program pada Arduino IDE. Buatlah program seperti berikut. Perhatikan keterangan comment untuk memahami program dengan lupa untuk memasukkan terlebih dahulu library CTBot, Arduino Json, dan DFPlayerMini. /* Program Memutar MP3 Player dengan Blynk dibuat oleh Indobot */ //Pemanggilan Library untuk wifi, blynk, dan DFPlayer Mini include ; include ; include " include " define BLYNK_PRINT Serial char auth[] = "************"; // masukkan kode autentikasi disini char ssid[] = "************"; //nama wifi char pass[] = "************"; //password SoftwareSerial mySoftwareSerialD1, D2; //Pin D1 dan D2 untuk DFPlayer DFRobotDFPlayerMini myDFPlayer; int sliderVolume = 0; //Slider untuk volume int playNumber = 1; //Player ke int maksList = 10; //maksimal list di microSD boolean isPlaying = false; BLYNK_WRITEV4 { String action = if action == "play" { //ketika kita menekan play //Memainkan list pertama isPlaying = true; } if action == "stop" { //ketika kita menekan stop isPlaying = false; } if action == "next" { //ketika kita menekan next if isPlaying { if playNumber 0 playNumber-; Song.."; } } "label", action; } BLYNK_WRITEV5{ sliderVolume = //Pengaturan Volume maks 30 } void setup{ //Pengaturan Pin dan Variabel ssid, pass; Mini Demo"; DFPlayer..."; if ! { DFPlayer Mini"; while true; } Mini Siap"; //-Set different EQ- // // // // // } void loop{ //Perulangan Program } Jangan lupa masukkan kode autentikasi yang sudah dikirimkan oleh blynk ke program arduino IDE. Copy saja dari email anda ke tanda bintang di char auth[] = “**********”;. Selain itu, masukkan juga nama wifi dan password yang anda juga Tutorial Kendali Warna RGB dengan 3 Slider Blynk IoTUpload program di atas, kemudian cek di aplikasi blynk, apakah sudah terhubung antara blynk dan nodeMCU. Jika masih belum, coba cek koneksi di NodeMCU dengan mengaktifkan Serial dari project ini adalah kita dapat melakukan kontrol untuk pemutaran MP3 Player dengan menggunakan aplikasi blynk, baik itu untuk play, pause, next. dan previous. Selain itu, kita juga dapat menambahkan dan mengurangi volume untuk DFPlayer Tertarik untuk mencobanya? Yuk dicoba dan dikembangin sendiri. Semangat!Mau belajar elektronika dasar? Arduino? atau Internet of Things? Ikuti kursus online Indobot Academy!
cara membuat mp3 player mini