20
BAB 3
ANALISIS DAN PERANCANGAN
Pada bab ini menjelaskan mengenai analisis permasalahan yang dihadapi dan perancangan program aplikasi yang akan dibentuk. Bab ini terdiri atas algoritma program, pemecahan masalah, perancangan program aplikasi, perancangan Backpropagation, serta perancangan lainnya yang digunakan untuk membuat program aplikasi ini.
3.1 Algoritma Program
Dibutuhkan beberapa algoritma untuk diimplementasikan ke dalam program aplikasi yang dibentuk. Algoritma yang dibutuhkan dalam aplikasi searching lagu berdasarkan nada yang dihasilkan oleh suara manusia adalah sebagai berikut:
a. Data berupa nada didapatkan dengan cara merekam suara manusia dengan mikrofon. Hasil rekaman yang berupa sinyal analog diubah menjadi sinyal digital dan disimpan dalam file dengan ekstension .wav.
b. Dengan berdasarkan sampling, quantization, dan fast fourier transform encoding maka sinyal analog dapat diubahkan menjadi sinyal digital.
c. Setelah sinyal digital terbentuk, program aplikasi yang dibentuk akan memproses sinyal digital yang sudah diproses dengan menggunakan fast fourier transform.
d. Program aplikasi akan membentuk data storage lagu dengan cara pemasukkan lagu-lagu original dalam format .wav, yang tiap lagunya akan disimpan dalam data storage berbentuk .txt.
e. Proses Training akan dilakukan dengan metode algoritma backpropagation, untuk lagu original sebelum lagu tersebut dimasukkan ke dalam data storage.
f. Aplikasi akan melakukan proses searching dengan cara membandingkan sinyal digital berdasarkan amplitudo hasil rekaman dengan sinyal digital berdasarkan aplitudo dari lagu original.
g. Setelah proses searching lagu berhasil, maka akan ditampilkan judul lagu dari lagu yang memiliki nada yang mirip.
h. Lagu dengan judul lagu tersebut kemudian dapat dimainkan untuk melakukan pemeriksaan dari hasil output program aplikasi.
3.2 Permasalahan yang Dihadapi
Semakin banyaknya lagu-lagu baru yang tercipta, hal ini tentu dapat menyebabkan permasalahan. Lagu-lagu baru tersebut memang baru diciptakan dan memiliki unsur-unsur musiknya masing-masing yang berbeda dengan lagu yang telah ada sebelumnya, tetapi lagu-lagu tersebut dapat memiliki judul yang sama dengan lagu yang ada sebelumnya. Meskipun dinyanyikan oleh penyanyi yang berbeda, ada pula lagu dari seorang penyanyi dinyanyikan kembali oleh penyanyi lain dengan versinya sendiri dan lagu tersebut memiliki nada-nada yang berbeda pada beberapa bagian.
Permasalahan yang muncul lainnya adalah bagi orang-orang yang masih awam dalam pengenalan lagu,. Mereka mendengar sebuah lagu dan kemudian menyukai lagu tersebut, tetapi mereka tidak mengetahui judul lagu ataupun penyanyi lagu tersebut.
Mereka hanya mengingat nada atau sebagian lirik yang ada pada lagu tersebut. Hal ini menyebabkan saat mereka ingin mencari suatu lagu tentu akan mengalami kesulitan,
karena mereka hanya mengingat nada ataupun lirik dari lagu tersebut tanpa mengetahui judul lagu ataupun penyanyi yang menyanyikan lagu tersebut.
3.3 Pemecahan Permasalahan
Dengan mengetahui permasalahan yang ada, maka diperlukanlah sistem searching atau pencarian yang baru untuk lagu. Untuk yang mengalami kesulitan dalam mencari lagu yang diinginkan, maka aplikasi yang dibentuk akan memudahkan user untuk mencari lagu yang diinginkan. Hanya dengan menyanyikan nada dari lagu tersebut, maka aplikasi ini akan mencari semua lagu yang memiliki nada seperti yang dinyanyikan oleh user aplikasi ini. Aplikasi ini akan menampilkan semua lagu yang memiliki nada seperti atau mirip dengan nada yang dinyanyikan oleh pengguna aplikasi ini. Pada hasil akhir pencarian, aplikasi ini akan menampilkan judul lagu serta penyanyi dari lagu yang dicari, aplikasi ini juga memperbolehkan user untuk menjalankan dan mendengarkan lagu yang telah di search oleh aplikasi ini, sehingga user dapat memastikan apakah lagu hasil pencarian tersebut adalah lagu yang diinginkan oleh user.
Aplikasi ini mudah digunakan oleh semua orang, sehingga semua user yang menggunakan aplikai ini dapat dengan mudah melakukan pencarian untuk lagu yang diinginkan.
3.4 Perancangan Program Aplikasi
Penulis menggunakan salah satu aplikasi pemrograman terbaik dalam perancangan program aplikasi yang dirancang, yaitu aplikasi pemrograman dari Microsoft Corporation, Microsoft Visual Studio 2008 C++ Express Edition. Berikut adalah penjelasan mengenai Microsoft Visual Studio 2008 C++ Express. Visual C++
2008 Express bisa membangun aplikasi native dan non-managed. Termasuk Windows Platform SDK yang dapat digunakan untuk membangun aplikasi yang menggunakan Win32 API. Aplikasi menggunakan MFC atau ATL memerlukan Standard Edition atau lebih tinggi, dan tidak dapat dikompilasi dengan Express Edition.
Visual C++ 2008 Express Edition dapat digunakan untuk mengkompilasi .NET serta aplikasi Win32 segera setelah instalasi. Namun, mengkompilasi native aplikasi 64- bit melalui IDE tidak didukung tanpa konfigurasi terlebih dahulu. Jika Windows SDK yang bisa didapatkan secara gratis terinstal, aplikasi 64-bit dapat dibangun pada baris perintah dengan menggunakan cross-compiler x64 (Cl.exe) disertakan dengan SDK.
Visual C++ 2008 Express tidak mendukung OpenMP, 64-bit compiler, atau editor sumber daya. Semakin tinggi edisi Visual Studio, khususnya Professional dan Team Suite edition, maka akan memiliki fitur ini.
3.4.1 Penerapan Program Aplikasi
Aplikasi ini digunakan untuk melakukan proses searching atau pencarian untuk lagu berdasarkan hasil suara yang dihasilkan oleh user dan direkam dengan hardware yang ada. Aplikasi ini dirancang dengan user interface yang sederhana, tetapi menarik untuk dilihat. Aplikasi ini juga sangat mudah untuk digunakan, hal ini dikarenakan langkah-langkah untuk menjalankan aplikasi ini sudah diatur dengan sedemikian rupa, sehingga user hanya perlu melakukan langkah-langkah yang telah disediakan oleh aplikasi ini.
Aplikasi ini akan berjalan dengan sangat baik apabila proses perekaman suara dilakukan hanya pada saat ada satu suara saja, dan durasi proses perekaman dilakukan dalam waktu yang cukup lama. Hal ini dilakukan agar noise yang ada pada hasil perekaman sedikit, dan durasi perekaman yang lebih lama akan mempermudah aplikasi
untuk melakukan perbandingan. Sehingga keakuratan dari proses searching atau pencarian lagu akan semakin akurat.
3.5 Perancangan Backpropagation
Penulis menggunakan metode Backpropagation dalam pembuatan aplikasi ini.
Dalam perancangan Backpropagation penulis menampilkan topologi yang dirancang untuk mempermudah pembuatan Backpropagation yang diguanakan, serta penulis akan menjelaskan mengenai fungsi aktifasi yang digunakan dalam perancangan Backpropagation ini.
3.5.1 Rancangan Topologi Backpropagation
Dalam perancangan topologi dibutuhkan satu lapisan input (input layer), satu atau lebih lapisan tersembunyi (hidden layer), dan satu lapisan output (output layer).
Dalam perancangan topologi ini, penulis menggunakan satu lapisan input (input layer), satu lapisan tersembunyi (hidden layer), dan satu lapisan output (output layer). Gambar 3.1 dibawah ini akan memperlihatkan topologi yang dirancang oleh penulis dalam perancangan Backpropagation ini. Dalam perancangan topologi ini, input layer dan output layer ditentukan oleh penulis, dan perhitungan hidden layer dilakukan dengan rumus:
[ ( * Input Layer) + Output Layer ]
Setiap node tersambung pada node-node yang ada di layer berikutnya. Selain itu juga terdapat nilai bias yang terhubung dengan node-node pada hidden layer dan output layer. Nilai bias juga memiliki nilai bobot masing-masing, dan nilai bobot itu berdasarkan pada node-node yang terhubung pada hidden layer dan output layer.
Gambar 3.1 Topologi Backpropagation
Dalam topologi Backpropagation yang dijabarkan di Gambar 3.1 diatas. Penulis menggunakan empat neuron untuk input layer dan output layer, sehingga akan menggunakan enam neuron untuk hidden layer. Perhitungan hidden layer didapatkan
Input Layer X1
X2
X3
X4
Z1
Z2
Z3
Z4
Z5
W1
W2
W3
W4
Hidden Layer Output Layer
Z6
| |
Bias Bias
melalui [( * 4) + 4 ] sehingga hasil yang didapatkan adalah 6, yang berarti enam
neuron pada hidden layer.
3.5.2 Fungsi Aktifasi
Penulis dalam perancangan backpropagation dalam aplikasi ini menggunakan fungsi aktifasi non-linear, fungsi aktifasi non-linear yang biasanya digunakan antara lain fungsi identitas, fungsi tangga biner, fungsi tangga bipolar, fungsi signoid biner,dan fungsi signoid bipolar. Fungsi aktifasi yang digunakan penulis dalam perancangan backpropagation ini adalah fungsi signoid biner. Untuk gambar fungsi signoid biner dapat dilihat pada Gambar 2.1 di bab 2.
Fungsi signoid biner memiliki range antara 0 sampai dengan 1. Dibawah ini adalah rumus yang digunakan dalam fungsi signoid biner.
1 - >
1
3.6. Perancangan Program
Dalam perancangan ini akan menggunakan Block Diagram System, Data Flow Diagram, Structured Chart, State Transition Diagram, Flowchart, dan Input/Output Diagram dan untuk menjelaskan program aplikasi yang dirancang. Perancangan program ini akan menjelaskan secara spesifik proses dalam sistem dari program aplikasi yang dirancang.
3.6.1 Block Diagram System
Penulis menampilkan Block Diagram System untuk mempermudah dalam penjelasan sistem yang dibentuk oleh penulis. Rangkaian proses yang dilakukan oleh sistem aplikasi ini dapat dilihat pada Gambar 3.2 dibawah ini.
Gambar 3.2 Block Diagram System
Melalui langkah-langkah yang dijelaskan melalui Gambar 3.2 diatas, aplikasi ini akan dapat dimengerti dengan mudah, sehingga bagi semua orang yang mempelajari ataupun menggunakan apilikasi ini, dapat dengan cepat memahami sistem kerja dari sistem yang dibentuk dalam aplikasi ini.
Record Sound
Training Sound
Backpropagation Encode Sound Fast Fourier Transform
View Output Insert Song
Insert Song to Data storage
Compare Sound With Data storage Song Insert Sound to File
Search Song
3.6.2 Data Flow Diagram
Data Flow Diagram (DFD) adalah suatu diagram yang menggunakan notasi- notasi untuk menggambarkan arus dari data sistem, yang penggunaannya sangat membantu untuk memahami sistem secara logika, terstruktur dan jelas. DFD merupakan alat bantu dalam menggambarkan atau menjelaskan sistem yang sedang berjalan logis.
Gambar 3.3 Data Flow Diagram Level 0
Gambar 3.3 diatas adalah gambar DFD Nol yang menjelaskan secara lebih rinci mengenai proses-proses yang ada dalam aplikasi yang dibentuk. Pada diagram ini terdapat tiga proses, yaitu Insert Song, Record Sound, dan Search Song. Yang pada proses Insert Song dilakukan algoritma Backpropagation, dan pada Record Sound
Loading
User Send The Original Song Insert Song
Human Voice
Saving
Loading
Record Sound Saving
Search Song
Searching for Song
Data Storage
Data Storage
User Receive
Song with Backpropagation
Sound with Fast Fourier Transform
dilakukan algoritma Fast Fourier Transform. Pada diagram ini juga terdapat data storage, yang berguna sebagai tempat penyimpanan data.
Gambar 3.4 Data Flow Diagram Konteks
Gambar 3.4 diatas merupakan DFD konteks, yang bertujuan untuk menjelaskan secara rinci seluruh proses yang terjadi pada aplikasi yang dibentuk, dengan satu proses utama, yaitu Fast Fourier Transform dan Backpropagation.
3.6.3 Structured Chart
Structured Chart merupakan suatu alat bantu yang menjelaskan suatu sistem dari awal sistem tersebut sampai ke proses akhir dari sistem tersebut. Structured Chart menjelaskan modul-modul pada sistem yang dibentuk, modul-modul tersebut disusun menyerupai struktur pohon atau tree. Struktur pohon atau tree tersebut menggambarkan hubungan antara modul. Gambar dibawah ini akan menjelaskan secara detail mengenai sistem yang akan dirancang dalam pembuatan program aplikasi ini.
Sender
The Original Song
Human Voice
Searching for Song
Fast Fourier Transform
and Backpropagation Receiver
Song with Backpropagation
Sound with Fast Fourier Transform
Searching for Song
Gambar 3.5 Structured Chart Program Aplikasi
Gambar 3.5 diatas menjelaskan secara detail hubungan antar modul yang digunakan dalam pembentukan sistem. Terdapat tiga modul utama, yaitu Insert Song, Record Sound, dan Search Song yang didalam modul-modul tersebut terdapat berbagai
End Search Song
End FFT Calculate Sound
Song Sound Search Result
Song Sound
End Sound Sound
End Select Song Search Result
End Sound Sound
End Sound Sound
Validate Sound Sound
Sound End
Song
End Sound
Validate Sound Inserted End
Record
End Record Sound
Inserted End Record End Insert Song
Song Inserted
End Select Song
Train Song End Train
Song Inserted Song Song
Validate Search Result Validate Sound
Inserted
End Record Sound Validate Song
Inserted End Insert Song
Main
Insert Song
Play Submit
Record Sound
Search Song
Backpropagation Select
Song
Back Start
Recording
Back
Record
Play Submit
Pause Stop
Select Song
Back
Play Submit
Fast Fourier Transform
End Search Song
modul yang mendukung modul utama tersebut, seperti Select Song, Start Recording, Play, Submit, Record, Back, dan lain lain. Dengan menggunakan Structured Chart hubungan antara modul tergambarkan dengan baik, sehingga akan mudah untuk mempelajari sistem yang dibentuk.
3.6.4 State Transition Diagram
State Transition Diagram biasa disingkat STD, merupakan salah satu jenis diagram yang digunakan untuk menjelaskan proses kerja dari sistem. STD menggambarkan bagaimana kerja sistem melalui kondisi (state) dan kejadian yang menyebabkan kondisi berubah. STD juga menggambarkan aksi yang dilakukan karena kejadian tertentu.
Gambar 3.6 State Transition Diagram Layar Utama
Pada Gambar 3.6 diatas memperlihatkan proses kerja sistem yang dapat dilakukan setelah user memulai program aplikasi yang dibentuk. Terdapat tiga fungsi utama yang user dapat lakukan setelah memulai program aplikasi ini, yaitu Record Sound, Insert Song, dan Search Song.
Klik Tombol Insert Song
Klik Tombol Search Song Klik Tombol
Record Sound Layar Utama Singing Muse Start
Gambar 3.7 State Transition Diagram Insert Song
Pada Gambar 3.7 diatas memperlihatkan proses kerja sistem dari fungsi Insert Song. Sitem ini dimulai dengan menampilkan layar Insert Song, yang didalamnya terdapat tombol 'Select Song', 'Play', 'Submit', dan 'Back'. Pada layar ini user dapat memasukkan lagu yang diinginkan, dan setelah proses pemasukkan lagu dilakukan, user dapat memainkan lagu tersebut dengan mengklik tombol 'Play'. Setelah itu user dapat menyimpan lagu tersebut dengan cara mengklik tombol 'Submit'. Tombol 'Back' untuk kembali ke layar utama.
Klik Tombol Back
Pilih Lagu Play Song Save Song
Show Text Klik Tombol Submit
Klik Tombol Play
Klik Tombol Insert Song
Layar Utama Singing Muse Klik Tombol
Insert Song
Layar Insert Song
Layar Select Song Putar Lagu Simpan Lagu
Tampilkan Judul Lagu
Gambar 3.8 State Transition Diagram Record Sound
Pada Gambar 3.8 diatas memperlihatkan proses kerja sistem dari fungsi Record Sound. Sitem ini dimulai dengan menampilkan layar Record Sound, yang didalamnya terdapat tombol 'Start Recording' dan 'Back'. Tombol 'Back' digunakan untuk kembali ke layar utama. Setelah user mengklik tombol 'Start Recording', akan ditampilkan layar Record Sound dengan tambahan sistem untuk melakukan Record Sound. Yang didalamnya terdapat tombol 'Play', 'Pause', 'Save', dan 'Reset'. Pada layar dengan tambahan sistem ini user dapat melakukan proses perekaman suara, memainkan hasil rekaman tersebut, dan kemudian menyimpan hasil rekaman tersebut ke data storage,
Reset Record Selesai
Record Save
Record Selesai
Klik Tombol Reset Klik Tombol Pause
Klik Tombol Play
Klik Tombol Start Recording
Layar Utama Singing Muse Klik Tombol
Record Sound
Layar Record Sound
Muncul Layar Dengan Proses Record Sound Putar Hasil
Record
Klik Tombol Back
Pause Hasil Record
Simpan Hasil Record
Proses Record Ulang Proses Record Klik Tombol
Save Klik Tombol
Record
Klik Tombol Stop
Stop Hasil Record
selain itu sistem juga menyediakan proses untuk mengulang perekaman suara, yaitu melalui tombol 'Reset'.
Gambar 3.9 State Transition Diagram Search Song
Pada Gambar 3.9 diatas memperlihatkan proses kerja sistem dari fungsi Search Song. Sitem ini dimulai dengan menampilkan layar Search Song, yang didalamnya terdapat tombol 'Select Song', 'Play', 'Submit', dan 'Back'. Tombol 'Back' untuk kembali ke layar utama, sedangkan tombol 'Select Song', digunakan untuk memilih hasil rekaman yang telah ada. Setelah itu user dapat memainkan hasil rekaman yang telah dipilih dengan tombol 'Play' untuk memastikan apakah hasil rekaman tersebut benar. Setelah itu user dapat melakukan proses pencarian lagu dengan mengklik tombol 'Submit', sistem akan melakukan proses pencarian lagu dengan cara melakukan perbandingan antara lagu
Show Table Search
Reset Search
Gagal
Berhasil
Klik Tombol Reset
Play Song Show Text
Klik Tombol Submit Klik Tombol Play
Klik Tombol Insert Song
Layar Utama Singing Muse Klik Tombol Search Song
Layar Search Song
Tampilkan Judul Lagu
Putar Lagu Proses Search
Klik Tombol Back
Tampilkan Hasil Search
Ulang Proses Search Layar Select Song
Pilih Lagu
yang ada di data storage dengan hasil rekaman yang telah dimasukkan oleh user.
Setelah proses pencarian selesai, sistem akan memperlihatkan hasil proses pencarian lagu dalam bentuk tabel yang menampilkan lagu-lagu yang memiliki nada yang mirip seperti nada pada hasil rekaman, apabila proses pencarian gagal, yaitu tidak ditemukan lagu dengan nada yang mirip seperti hasil rekaman, sistem akan memberikan pemberitahuan kepada user. Apabila user ingin mengulang proses pencarian lagu dari awal, user dapat mengklik tombol 'Reset'.
3.6.5 Flowchart
Flowchart merupakan gambar atau bagan yang memperlihatkan urutan dan hubungan antar proses beserta pernyataannya. Gambaran ini dinyatakan dengan berbagai jenis simbol. Setiap simbol menggambarkan suatu proses tertentu. Tiap simbol-simbol grafis menyatakan tipe operasi program yang berbeda. Sebagai representasi dari sebuah program, flowchart dapat menjadi alat bantu untuk memudahkan perancangan alur urutan logika suatu program, memudahkan pelacakkan sumber kesalahan program, dan alat untuk menerangkan logika program. Flowchart dari aplikasi yang dirancang dijelaskan melalui gambar-gambar dibawah ini.
Gambar 3.10 Flowchart Insert Song
Pada Gambar 3.10 diatas memperlihatkan urutan dan hubungan antar proses dalam Insert Song. Dimulai dengan tampilan awal Insert Song, kemudian memasukkan lagu dalam format lagu .wav dengan cara mengklik tombol 'Select Song', jika tidak memilikinya dapat melakukan fungsi Record Sound terlebih dahulu. Setelah lagunya dimasukkan, maka akan ditampilkan nama file nya. Setelah itu lagu tersebut dapat
Yes
No Press Select Song Button
Insert Song UI Begin
Have a Song
(*.wav) file Cancel
Open the Song
Appear .wav text
Play Song Press Play Button
Press Submit Button
Save Song .wav
Train Song.wav
End
Insert Song UI
Press Back Button
Exit
End Begin
dimainkan dengan mengklik tombol 'Play'. Dan terakhir lagu tersebut dapat disimpan ke dalam data storage lagu dengan mengklik tombol 'Submit'. Saat proses penyimpanan lagu terjadi juga proses Training dengan menggunakan Backpropagation. Maka proses Insert Song telah selesai.
Gambar 3.11 Flowchart Record Sound
No
Press Start Recording Button Record Sound UI
Begin
Save Sound Record
End
Record Song UI
Press Back Button
Exit
End Begin
Appear Record System
Press Record Button
Record Sound
Press Record Button
Stop Record
Reset Sound Record
Yes
Press Submit Button Press PlayButton
Play Record
Pada Gambar 3.11 diatas memperlihatkan urutan dan hubungan antar proses dalam Record Sound. Dimulai dengan tampilan awal Record Sound, kemudian mengklik tombol Start Recording, yang akan memunculkan form untuk Record Sound, kemudian tinggal mengklik tombol 'Record', untuk melakukan proses perekaman suara, setelah itu tekan tombol 'Record' untuk menghentikan proses perekaman suara. Untuk memainkan hasil record klik tombol 'Play', apabila ingin menghapus dan mengulang proses Record Sound, klik tombol 'Reset'. Setelah selesai melakukan proses Record Sound, klik tombol 'Submit' untuk menyimpan hasil perekaman suara ke dalam data storage. Maka proses Record Sound telah selesai.
Yes
No Press Select Song Button
Seach Song UI Begin
Have a Song
(*.wav) file Cancel
Open the Song
Appear .wav text
Play Song Press Play Button
Press Submit Button
Seach Song UI
Press Back Button
Exit
End Begin
1 2
Gambar 3.12 Flowchart Search Song
Pada Gambar 3.12 diatas memperlihatkan urutan dan hubungan antar proses dalam Search Song. Dimulai dengan tampilan awal Search Song, kemudian memasukkan lagu dalam format lagu .wav dengan cara mengklik tombol 'Select Song', jika tidak memilikinya dapat melakukan fungsi Record Sound terlebih dahulu. Setelah lagunya dimasukkan, maka akan ditampilkan nama file nya. Setelah itu lagu tersebut dapat dimainkan dengan mengklik tombol 'Play'. Setelah yakin dengan lagu yang dimasukkan untuk melakukan proses pencarian tinggal mengklik tombol 'Submit'. Maka akan ditampilkan tabel yang berisikan lagu dari data storage yang memiliki nada mirip seperti lagu yang dimasukkan. Maka proses pencarian lagu telah selesai, untuk mengulang kembali proses pencarian lagu tinggal mengklik tombol 'Reset'.
Yes 1
Search Success
No
Appear Table Search Result
Reset Search Song
No
Press Back Button Exit
End
Yes
2
3.6.6 Input / Output Diagram
Input / Output Diagram adalah suatu diagram yang menunjukkan secara garis besar hubungan dari input, proses, dan output. Gambar 3.4 dibawah akan memperlihatkan Input / Output Diagram dari program aplikasi yang dirancang.
Gambar 3.13 Input / Output Diagram
Gambar 3.13 diatas menjelaskan secara rinci hasil proses dari sistem yang dirancang, dengan menjelaskan secara rinci mengenai input yang akan dimasukkan dan output yang akan dihasilkan dari program aplikasi yang dirancang, serta menjelaskan proses yang dijalankan untuk memproses input menjadi output yang diinginkan. Pada input terdapat suara manusia yang direkam melalui mikrofon dan juga lagu original yang dimasukkan ke dalam data storage oleh user, kemudian akan dilakukan proses Fast Fourier Transform dan Backpropagation, yang akan menghasilkan output yang berupa hasil proses pencarian untuk lagu yang dicari.
Proses
Proses akan mengubah rekaman suara menjadi sinyal digital dengan Fast Fourier Transform,
Training lagu original dengan Backpropagation, dan melakukan
compare keduanya untuk proses searching
Input merupakan suara manusia yang direkam melalui mikrofon,
serta lagu original.
Output yang dihasilkan adalah menampilkan lagu‐lagu yang
memiliki sinyal digital dan aplitudo yang mirip seperti hasil
rekaman suara manusia.
Input Output
3.7 Perancangan User Interface
Perancangan layar akan dibuat dengan sesederhana mungkin untuk memudahkan user dalam menjalankan program ini. Layar-layar yang dapat dilihat oleh user adalah layar menu utama, layar search song, dan layar result. Pada menu utama, user dapat memilih untuk menggunakan aplikasi atau keluar dari aplikasi. Pada layar search song, user dapat merekam suaranya untuk mencari suatu lagu tertentu, dan pada layar result akan ditampilkan hasil pencarian dari lagu yang dicari.
3.7.1 Rancangan Layar Utama
Pada rancangan layar utama user dapat membuka menu 'File' yang dapat digunakan untuk menampilkan pembuat aplikasi ini, yaitu sub-menu 'About', serta untuk dapat keluar dari aplikasi, yaitu sub-menu 'Exit'. Selain itu user juga dapat secara langsung menjalankan fungsi yang ada di menu 'File' tanpa harus membuka sub-menu file. User dapat menjalankan proses Search Song dengan mengklik tombol 'Search Song'.
Gambar 3.14 Rancangan Layar Utama
Keterangan yang ada pada tampilan layar pada Gambar 3.14 tersebut adalah sebagai berikut:
a. Judul form dengan tulisan "Singing Muse"
b. Kotak tanda 'X' di samping judul berfungsi untuk keluar dari aplikasi.
c. Kotak tanda '□' di samping judul berfungsi untuk memaksimumkan layar.
d. Kotak tanda '_' di samping judul berfungsi untuk menyembunyikan aplikasi ke taskbar.
e. Tombol menu 'File' berfungsi untuk membuka sub-menu 'About' dan 'Exit'.
f. Tombol 'Search Song' berfungsi untuk menuju ke menu 'Search Song'.
g. Tombol 'About' berfungsi untuk menampilkan pop-up mengenai aplikasi yang digunakan.
h. Tombol 'Exit' berfungsi untuk keluar dari aplikasi.
3.7.2 Rancangan Layar Search Song
Pada rancangan layar search song, user dapat melakukan proses perekaman suara dengan menggunakan mikrofon. Selain itu user juga dapat menglihat hasil perekaman suara dalam bentuk sinyal digital yang berupa spektrum suara. User juga dapat memainkan kembali suara yang telah direkam, selain itu user juga dapat kembali ke layar utama dengan mengklik tombol 'Back', user juga dapat mengulang proses perekaman suara dengan mengklik tombol 'Reset'. Apabila user sudah selesai melakukan proses dan yakin akan rekaman suaranya, user dapat mengklik tombol 'Submit' untuk menlanjutkan aplikasi.
Gambar 3.15 Rancangan Layar Search Song
Keterangan yang ada pada tampilan layar Gambar 3.15 tersebut adalah sebagai berikut:
a. Judul form dengan tulisan "Search Song"
b. Kotak tanda 'X' di samping judul berfungsi untuk keluar dari aplikasi.
c. Kotak tanda '□' di samping judul berfungsi untuk memaksimumkan layar.
d. Kotak tanda '_' di samping judul berfungsi untuk menyembunyikan aplikasi ke taskbar.
e. Tombol menu 'File' berfungsi untuk membuka sub-menu 'About' dan 'Exit'.
f. Tombol 'Record Sound' berfungsi untuk menampilkan proses perekaman suara, yaitu lf record.
g. Tombol 'Back' berfungsi untuk kembali ke layar menu utama.
h. Tombol ' ' berfungsi untuk enabled lf record, yang berfungsi untuk melakukan proses perekaman suara lewat mikrofon.
i. Diagram ' ' menunjukan sinyal digital dari hasil suara yang direkam.
j. Tombol ' ' berfungsi untuk memainkan kembali diagram dari sinyal digital dari proses perekaman suara manusia.
k. Tombol 'Submit' berfungsi untuk menampilkan pop-up yang memproses pencarian lagu yang sesuai dengan sinyal digital yang telah direkam.
l. Tombol 'Reset' berfungsi untuk menghapus hasil rekaman suara, dan dapat melakukan proses pengrekaman suara kembali.
3.7.3 Rancangan Layar Result
Pada rancangan layar result, user dapat menglihat hasil proses pencarian lagu berdasarkan dari hasil rekaman suara yang dilakukan, lagu yang ditampilkan merupakan hasil perbandingan dari nada yang mirip dari suara rekaman dengan lagu yang ada.
Selain itu user juga dapat memainkan lagu yang diinginkan untuk memastikan apakah lagu tersebut adalah lagu yang dicari oleh user, dengan cara mengklik lagu yang ada di tabel hasil pencarian dan kemudian mengklik tombol 'Play'. Setelah selesai user dapat mengklik tombol 'Back' untuk kembali ke layar utama.
Gambar 3.16 Rancangan Layar Result
Keterangan yang ada pada tampilan layar Gambar 3.16 tersebut adalah sebagai berikut:
a. Judul form dengan tulisan "Result"
b. Kotak tanda 'X' di samping judul berfungsi untuk keluar dari aplikasi.
c. Kotak tanda '□' di samping judul berfungsi untuk memaksimumkan layar.
d. Kotak tanda '_' di samping judul berfungsi untuk menyembunyikan aplikasi ke taskbar.
e. Tabel di tengah berfungsi untuk menampilkan lagu hasil pencarian.
f. Tombol menu 'File' berfungsi untuk membuka sub-menu 'About', dan 'Exit'.
g. Tombol 'Play' berfungsi untuk memainkan lagu yang dipilih.
h. Tombol 'Back' berfungsi untuk kembali ke layar menu utama.
Sesuai dengan tujuan dan manfaat rancangan dari aplikasi ini, pada bab 3 telah memperlihatkan bahwa aplikasi yang dirancang dapat mempermudah keinginan pengguna dalam mencari judul ataupun penyanyi dari lagu yang diinginkan. Aplikasi ini memiliki alur penggunaan yang sederhana dan mudah dimengerti sehingga dapat digunakan oleh semua orang.