Upload
trannguyet
View
236
Download
7
Embed Size (px)
Citation preview
RANCANG BANGUN PEMBUATAN APLIKASI SAMPLING
FREKUENSI FILE AUDIO MENGGGUNAKAN METODE FILTER FIR
(FINITE IMPULSE RESPONSE)
Skripsi
Diajukan untuk Memenuhi Persyaratan Memperoleh
Gelar Sarjana Komputer (S.Kom)
Oleh :
BAGUS AUDITIAKUSUMA
2040.9100.2482
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH
JAKARTA
2011 M / 1432 H
i
RANCANG BANGUN PEMBUATAN APLIKASI SAMPLING
FREKUENSI FILE AUDIO MENGGUNAKAN METODE FILTER FIR
(FINITE IMPULSE RESPONSE)
Skripsi
Diajukan kepada Fakultas Sains dan Teknologi
Untuk memenuhi persyaratan memperoleh
gelar Sarjana Komputer (S.Kom)
Oleh :
BAGUS AUDITIAKUSUMA
2040.9100.2482
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH
JAKARTA
2011 M / 1432 H
ii
RANCANG BANGUN PEMBUATAN APLIKASI SAMPLING
FREKUENSI FILE AUDIO DENGAN MENGGUNAKAN METODE
FILTER FIR (FINITE IMPULSE RESPONSE)
Skripsi
Diajukan kepada Fakultas Sains dan Teknologi
Untuk memenuhi persyaratan memperoleh
gelar Sarjana Komputer (S.Kom)
Oleh
Bagus Auditiakusuma
2040.9100.2482
Menyetujui,
Pembimbing I, Pembimbing II,
Arini, MT, M.Eng Zulfiandri, MMSI
NIP. 19760131 200901 2 001 NIP. 19700130 200501 1 003
Mengetahui,
Ketua Program Studi Teknik Informatika
Yusuf Durrachman, MIT
NIP. 19710522 200604 1 002
iii
PENGESAHAN UJIAN
Skripsi berjudul “RANCANG BANGUN PEMBUATAN APLIKASI
SAMPLING FREKUENSI FILE AUDIO MENGGUNAKAN METODE
FILTER FIR (FINITE IMPULSE RESPONSE)” yang ditulis oleh
Bagus Auditiakusuma, NIM 2040.9100.2482 telah diuji dan dinyatakan lulus
dalam sidang Munaqosyah Fakultas Sains dan Teknologi, Univeritas Islam Negeri
Syarif Hidayatullah Jakarta pada tanggal 28 Februari 2011. Skripsi ini telah
diterima sebagai salah satu syarat untuk memperoleh gelar sarjana Strata Satu (S1)
Program Studi Teknik Informatika.
Jakarta, Maret 2011
Menyetujui :
Tim Penguji,
Penguji I Penguji II
Herlino Nanang, M.T, CCNA Yusuf Durrachman, M.Sc, MIT
NIP.19731209 200501 1 002 NIP. 19710522 200604 1 002
Tim Pembimbing,
Pembimbing I Pembimbing II
Arini, MT, M.Eng Zulfiandri, MMSI
NIP.19760131 200901 2 001 NIP. 19700130 200501 1 003
Mengetahui :
Dekan Ketua
Fakultas Sains dan Teknologi Program Studi Teknik Informatika
Dr. Syopiansyah Jaya Putra, M.Sis Yusuf Durrachman, M.Sc, MIT
NIP. 19680117 200112 1 001 NIP. 19710522 200604 1 002
iv
PERNYATAAN
DENGAN INI SAYA MENYATAKAN BAHWA SKRIPSI INI BENAR-
BENAR HASIL KARYA SENDIRI YANG BELUM PERNAH DIAJUKAN
SEBAGAI SKRIPSI ATAU KARYA ILMIAH PADA PERGURUAN TINGGI
ATAU LEMBAGA MANAPUN.
Jakarta, Maret 2011
Bagus Auditiakusuma
2040.9100.2482
v
ABSTRAK
BAGUS AUDITIAKUSUMA - 204091002482, Rancang Bangun Pembuatan
Aplikasi Sampling Frekuensi File Audio Menggunakan Metode Filter FIR
(FINITE IMPULSE RESPONSE) dibawah bimbingan Ibu Arini dan
Bapak Zulfiandri.
Teknologi dan ilmu pengetahuan berkembang semakin cepat dari waktu ke
waktu, karena penemuan-penemuan teknologi ini bersifat dinamis dan akan ada
penemuan teknologi yang berikutnya. Masalah yang terjadi pada pemrosesan
sampling file audio adalah noise, semakin banyak noise yang ada maka akan
merubah kualitas file audio. Didalam proses digital sample, PCM (Pulse Code
Modulation) sampling dipergunakan untuk menerapkan proses representasi suatu
signal waveform seperti deret bilangan yang merepresentasikan suatu pengukuran
sinyal amplitudo. Pada aplikasi ini metode yang digunakan adalah metode filter
FIR (Finite Impulse Response). Pembuatan aplikasi ini menggunakan bahasa
pemrograman MATLAB. Untuk pengembangan aplikasi, peneliti menggunakan
metode System Development Life-Cycle (SDLC). Hasil akhir yang dicapai dari
pembuatan aplikasi sampling frekuensi ini dapat memudahkan user melihat
aplikasi grafik interface yang ditampilkan dengan GUI MATLAB melalui grafik
frequenzy, waktu pada saat proses deteksi noise dan parameter proses filter FIR
(Finite Impulse Response). Pada proses diatas, terdapat perubahan kualitas file
audio yang mempengaruhi hasil output proses dan dapat dilakukan penyimpanan
output kedalam format MP3, serta memperkecil besarnya gangguan/noise dari
proses deteksi noise dan parameter proses FIR.
Kata kunci : noise, Pulse Code Modulation, signal waveform, Finite Impulse
Response, System Development Life-Cycle, user, interface.
V Bab + xix halaman + 162 halaman + 12 tabel + 56 gambar + 3 lampiran
Daftar Pustaka : 14 (2001-2010)
vi
KATA PENGANTAR
Assalamu’alaikum Wr. Wb.
Alhamdulillah, rasa syukur tiada terkira penulis panjatkan kepada Allah
Subhanahu Wata’ala. Rahmat beserta salam semoga tercurahkan selalu kepada
Rasulullah Muhammad S.A.W beserta keluarga, sahabat, dan pengikut-pengikut
beliau ‘Amin’. Hanya berkat petunjuk dan pertolongan Allah-lah penulis dapat
menyelesaikan skripsi yang berjudul “Rancang Bangun Pembuatan Aplikasi
Sampling Frekuensi File Audio Menggunakan Filter FIR (Finite Impulse
Response)”.
Terwujudnya tulisan dalam bentuk skripsi ini, tentunya tidak terlepas dari
bantuan dan bimbingan dari berbagai pihak. Rasa terima kasih penulis ucapkan
kepada :
1. Bapak Prof. DR. Komarudin Hidayat, selaku Rektor Universitas Islam
Negeri Syarif Hidayatullah Jakarta.
2. Bapak DR. Syopiansyah Jaya Putra, M.SIS, selaku Dekan Fakultas Sains
dan Teknologi.
3. Bapak Yusuf Durrachman, MIT, selaku Ketua Program Studi Teknik
Informasika.
4. Ibu Arini, MT, M.Eng, selaku dosen pembimbing I, dan
vii
5. Bapak Zulfiandri, MMSI, selaku dosen pembimbing II, yang telah
memberikan bimbingan, waktu, dan perhatiannya dalam penyusunan skripsi
ini.
6. Seluruh Dosen dan staf karyawan Program Studi Teknik Informatika,
Fakultas Sains dan Teknologi, Universitas Islam Negeri Syarif Hidayatullah
Jakarta yang telah mengajar atau membantu penulis selama kuliah.
Dalam penyusunan skripsi ini, penulis juga tidak luput dari berbagai
masalah dan menyadari sepenuhnya bahwa penulisan ini masih jauh dari
sempurna dan tidak lepas dari kesalahan dan kekurangan, oleh karena itu dengan
senang hati penulis akan menerima semua saran dan kritik maupun ide-ide yang
membangun dari rekan-rekan pembaca. Akhir kata semoga Allah S.W.T
membalas kebaikan mereka yang telah membimbing penulis dalam membuat
skripsi ini. Semoga skripsi ini berguna bagi penulis dan pada pembaca umumnya.
Wassalamu’alaikum Wr. Wb.
Jakarta, Maret 2011
Penulis
Bagus Auditiakusuma
NIM. 2040 9100 2482
viii
Terimakasih yang Spesial untuk :
Bapak dan Ibuku tercinta : Abah Herman dan ibu Ning (Lies),
adikku tersayang yang kadang ngebelin : Aghil (Tya Wardhani),
myLovely tersayang yang memotivasiku : Neng Dara,
Dan untuk semua keponakanku : shifa, sulthon, tia, wildan, erie, safira, salwa, alisa, ria,
fadly, anggie, ega, iga, farel, reihan, diki n sepupu-sepupu..
(jangan lupa belajar ya sayang..)
Untuk teman-temanku m.ranum, imam maul, wahyu, septian, adie dunge, yadi acho, dimas
koben, hermanto, ilmas, asnul, lidya, anissa, murniwati, lia taslima, yunita, n dede danuria
(terimakasih untuk berbagi-sharing setiap bulan..)
Untuk bang Panca dan teh yeyen (makasih guide matlabnya), bi Nunung sekeluarga
(makasih makanannya),
A Hendar, A Peding, bang Idris,
teh dedeh, teh hera, teh dania (makasih supportnya)
makasih buat semua anak TI A angkatan 2004..
tanpa kalian aku tak bisa berdiri tegak menembus dunia ini..
makasih juga untuk pak lutfi dan seluruh staf (perpus)
terimakasih untuk keluarga besar TI/SI angkatan 2004 yang telah
berteman dan berbagi semuanya kepada penulis..
dan banyak lagi yang tidak dapat saya tuliskan di sini..
terimakasih semuanya..
dan juga terimakasih untuk :
uin syarif hidayatullah jakarta
ix
DAFTAR ISI
Halaman Judul ................................................................................................. i
Lembar Pengesahan Pembimbing .................................................................... ii
Lembar Pengesahan Ujian ............................................................................... iii
Lembar Pernyataan .......................................................................................... iv
Abstrak ........................................................................................................... v
Kata Pengantar ............................................................................................... vi
Lembar Persembahan ...................................................................................... viii
Daftar Isi .......................................................................................................... ix
Daftar Tabel ................................................................................................... xv
Daftar Gambar ............................................................................................... xvi
BAB I PENDAHULUAN ......................................................................... 1
1.1. Latar Belakang Masalah .......................................................... 1
1.2. Rumusan Masalah ................................................................... 2
1.3. Batasan Masalah ...................................................................... 3
1.4. Tujuan Penelitian ..................................................................... 4
1.5. Manfaat Penelitian ................................................................... 5
1.6. Metodologi Penelitian ............................................................. 5
1.7. Sistematika Penulisan .............................................................. 7
x
BAB II LANDASAN TEORI .................................................................... 9
2.1. Rancang-Bangun .................................................................. 9
2.2. Aplikasi ................................................................................. 10
2.3. Sampling Frekuensi .. ............................................................. 10
2.3.1 PCM ( Pulse Code Modulation ) ............................ 15
2.3.2 Audio Filter ............................................................ 16
2.3.3 Audio Codec .......................................................... 17
2.3.4 Audio Sampling ..................................................... 17
2.3.5 Proses Sampling ..................................................... 18
2.3.6 Frekuensi Kerja Audio ........................................... 20
2.4. File Audio Digital ................................................................. 20
2.4.1. Definisi Audio ........................................................ 20
2.4.2. Jenis-jenis Audio / Suara ....................................... 21
2.4.3. Format Audio ......................................................... 22
1. Waveform Audio Format (WAV) ................... 22
2. MPEG-1 Audio Layer 3 (MP3) ...................... 23
2.5. Model Nada .......................................................................... 25
2.5.1. Interval ................................................................... 27
2.5.2. Pasangan Chord (Kunci Tangga Nada) ................. 30
2.6. Filter (Tapis) ......................................................................... 31
2.7. Metode Pemrosesan Sinyal Digital Pada File Audio ........... 34
2.7.1. Korelasi .................................................................. 37
xi
2.7.2. Konvolusi ............................................................... 38
2.7.3. Transformasi ............................................................. 39
2.7.4. DFT dan FFT ............................................................ 39
2.7.5. Filter ......................................................................... 40
2.8. Transformasi Fourier ............................................................ 41
2.8.1. Contoh Hasil Perhitungan Transformasi Fourier
dalam bentuk Sinus ( Sin[x] ) ............................... 42
2.8.2. Contoh Hasil Perhitungan Transformasi Fourier
Satu (1) Dimensi .................................................... 43
2.9. MATLAB ............................................................................. 44
2.9.1. Pengertian MatLab ................................................. 44
2.9.2. Sekilas Sistem Program MatLab ............................ 47
2.9.3. Sintaks MatLab ...................................................... 48
2.10. Perancangan Program ........................................................... 50
2.10.1. System Development Life Cycle (SDLC) ................ 50
2.10.2. State Transition Diagram (STD) ........................... 51
2.10.3. Flow-chart ............................................................. 52
2.10.4. Struktur Navigasi .................................................. 55
2.11. Studi Sejenis ......................................................................... 58
BAB III METODOLOGI PENELITIAN .................................................. 62
3.1. Metode Pengumpulan Data .................................................. 62
xii
3.1.1. Metode Studi Pustaka ............................................ 62
3.2. Metode Pengembangan Sistem ............................................. 63
3.2.1. Perbedaan Model Pengembangan Sistem .............. 63
3.2.2. Pemilihan Model Pengembangan Sistem ................ 67
3.3. Justifikasi Pemilihan Metode Pengembangan Sistem
SDLC ................................................................................... 73
3.4. Perangkat Penelitian ............................................................. 73
3.4.1 Perangkat Keras ..................................................... 74
3.4.2 Perangkat Lunak .................................................... 74
BAB IV PEMBAHASAN DAN IMPLEMENTASI ................................ 76
4.1. Analisa Sistem ....................................................................... 76
4.1.1. Tujuan .................................................................... 76
4.1.2. Ruang Lingkup pada Sistem .................................. 77
4.2. Perancangan Sistem ............................................................. 78
4.2.1. Perancangan Proses ................................................. 78
4.2.1.1. Perancangan Sistem Aplikasi Deteksi
Noise dan Parameter Proses FIR ............ 78
4.2.1.2. Flow-chart Aplikasi Deteksi Noise dan
Parameter Proses FIR ............................. 80
4.2.2. Perancangan Antar Muka ........................................ 83
4.2.2.1. Perancangan Halaman Tampilan ............ 83
xiii
4.2.2.2. Perancangan UiPanel Informasi,
Play Original File dan Button Cari File .. 88
4.2.2.3. Perancangan Radio Button Type
Deteksi Noise ......................................... 89
4.2.2.4. PerancanganUiPanel Parameter Proses ... 90
4.2.2.5. Perancangan axes Time (s) dan axes
Frequenzy (Hz) pada Proses
Deteksi Noise ........................................ 90
4.2.2.6. Perancangan axes Frequenzy (Hz)
pada proses FIR ..................................... 91
4.2.2.7. Perancangan axes Time (s) dan axes
Frequenzy (Hz) pada penyaringan
Parameter Proses ................................... 91
4.2.2.8. Perancangan Button Play Noise File,
Play Noise Reduction File,
Save/Simpan, Exit ................................. 92
4.3. Implementasi Sistem ............................................................ 94
4.4. Operasi dan Perawatan Sistem ............................................. 96
4.4.1. Persiapan Running Program MatLab ..................... 96
4.4.2. Proses Deteksi Noise dan Proses Parameter FIR
(Finite Impulse Response) .................................... 97
xiv
4.4.3. Pengujian Aplikasi Sampling Frekuensi File Audio
(File WAV) ........................................................... 97
BAB V PENUTUP ................................................................................... 110
5.1 Kesimpulan ............................................................................. 110
5.2 Saran ....................................................................................... 111
DAFTAR PUSTAKA .................................................................................... 112
LAMPIRAN A TAMPILAN APLIKASI SAMPLING FREKUENSI FILE
AUDIO .............................................................................. 116
LAMPIRAN B KODE SUMBER APLIKASI SAMPLING FREKUENSI
FILE AUDIO dengan MATLAB ....................................... 154
LAMPIRAN SURAT KEPUTUSAN DOSEN PEMBIMBING SKRIPSI
xv
DAFTAR TABEL
Tabel 2.1. Interval Sampling Rate Audio .................................................. 13
Tabel 2.2. Interval pada musik ................................................................... 28
Tabel 2.3. Tingkat Interval ........................................................................ 29
Tabel 2.4. Triad C mayor ........................................................................... 30
Tabel 2.5. Penggolongan Triad ................................................................. 31
Tabel 2.6. Bagian-bagian kerja MatLab ................................................... 46
Tabel 2.7. Simbol-simbol Program Flow-chart menurut ANSI ................ 53
Tabel 3.1. Perbedaan Pengembangan Sistem ............................................ 63
Tabel 4.1. File wav yang diuji sebelum diuji ............................................. 99
Tabel 4.2. Perbedaan Kualitas File Audio sebelum dan sesudah deteksi
noise dan proses parameter Filter FIR ..................................... 99
Tabel 4.3 Ukuran file dan waktu proses ................................................... 102
Tabel 4.4. Tabel Uji File yang di proses berdasarkan waktu proses ........... 106
xvi
DAFTAR GAMBAR
Gambar 2.1. Aliasing ................................................................................ 12
Gambar 2.2. Konversi Analog ke Digital menggunakan PCM ................. 15
Gambar 2.3. Noise Reduction menggunakan filter adaptive .................... 16
Gambar 2.4. Sinyal Analog ....................................................................... 18
Gambar 2.5. Sinyal Sample ....................................................................... 19
Gambar 2.6. Proses pencuplikan sinyal .................................................... 19
Gambar 2.7. Cara kerja audio secara umum ............................................. 20
Gambar 2.8. Grafik dari amplitudo energy dalam domain waktu untuk
nada single ............................................................................ 26
Gambar 2.9. Visualisasi nada pada domain frekuensi .............................. 26
Gambar 2.10. Respon LPF ......................................................................... 32
Gambar 2.11. Respon HPF ........................................................................ 33
Gambar 2.12. Band Pass Filter ................................................................... 33
Gambar 2.13. Filter Band Elimination ........................................................ 34
Gambar 2.14. Sistem Pengolahan Sinyal Digital ........................................ 35
Gambar 2.15. Skema Konvolusi ................................................................ 38
Gambar 2.16. Contoh hasil proses transformasi fourier ............................. 43
Gambar 2.17. Contoh grafik cosine signal ................................................. 43
Gambar 2.18. Tampilan MatLab ................................................................ 45
xvii
Gambar 2.19. Tampilan Menu Start MatLab .............................................. 46
Gambar 2.20. Command Windows ............................................................. 48
Gambar 2.21. Sintaks program MatLab ..................................................... 49
Gambar 2.22. Tahap-tahap SDLC ............................................................... 50
Gambar 2.23. State Transition Diagram yang disederhanakan untuk
software fotocopy ................................................................ 51
Gambar 2.24. Contoh Diagram Alir ............................................................ 54
Gambar 2.25. Empat struktur navigasi pokok yang digunakan dalam
aplikasi ................................................................................ 57
Gambar 3.1. Model Waterfall ................................................................... 67
Gambar 3.2. Ilustrasi metodologi penelitian pembuatan aplikasi sampling
frekuensi file audio .............................................................. 75
Gambar 4.1. Proses aplikasi deteksi noise dan parameter FIR ................. 79
Gambar 4.2. Flow-chart proses deteksi noise untuk parameter FIR ........ 80
Gambar 4.3. Flow-chart Proses Deteksi noise dengan random noise,
constant picth noise di Sebelah Kiri dan Flow-chart Proses
dengan menggunakan parameter FIR di Sebelah Kanan ..... 82
Gambar 4.4. Rancangan Halaman Tampilan ........................................... 84
Gambar 4.5. State Trantition Diagram Halaman Tampilan ..................... 85
Gambar 4.6. Flow-chart Halaman Tampilan ............................................ 86
Gambar 4.7. Bentuk Rancangan Halaman Tampilan dalam Matlab .......... 87
Gambar 4.8. Rancangan Button Cari File, Informasi dan Play
xviii
Original File Audio .............................................................. 88
Gambar 4.9. Tampilan jika user mengklik Cari File pada tombol Button .. 89
Gambar 4.10. Rancangan Radio Button Type Deteksi Noise ..................... 90
Gambar 4.11. Rancangan UiPanel Parameter Proses ................................ 90
Gambar 4.12. Rancangan axes Time (s) dan axes Frequenzy (Hz) pada
proses deteksi noise ............................................................. 91
Gambar 4.13. Rancangan axes Frequenzy (Hz) pada proses FIR ............... 91
Gambar 4.14. Rancangan axes Time (s) dan axes Frequenzy (Hz) pada
penyaringan parameter proses ............................................. 92
Gambar 4.15. Rancangan Button Play Noise File, Play Reduction File,
Save/Simpan, Exit ............................................................... 92
Gambar 4.16. Menyimpan Hasil Output Sampling Frekuensi dalam format
MP3 ...................................................................................... 93
Gambar 4.17. Konfirmasi apabila user memilih menu Exit ....................... 94
Gambar 4.18. Nama file dan ukuran tipe file wav sebelum diuji ............... 98
Gambar 4.19. Hasil output proses yang disimpan ...................................... 98
Gambar 4.20 Cuplikan Sampling Frekuensi setelah noise dihilangkan ..... 101
Gambar 4.21. Cuplikan penghilangan noise pada file audio yang diproses . 101
Gambar 4.22. Grafik proses file JACKIE.wav berdasarkan ukuran file
dan waktu ............................................................................. 102
Gambar 4.23. Grafik proses file Posh Bell.wav berdasarkan ukuran file
dan waktu ............................................................................ 103
xix
Gambar 4.24. Grafik proses file BIRD.wav berdasarkan ukuran file dan
waktu .................................................................................... 103
Gambar 4.25. Grafik proses file Bells.wav berdasarkan ukuran file dan
waktu ................................................................................... 104
Gambar 4.26. Grafik proses file Suit-suit.wav berdasarkan ukuran file
dan waktu ............................................................................ 104
Gambar 4.27. Grafik proses uji file audio diambil dari 5 sampling file
wav ...................................................................................... 105
Gambar 4.28. Grafik proses uji file audio berdasarkan waktu tertinggi ...... 105
Gambar 4.29. Grafik Perbandingan Ukuran File Audio dengan Waktu
proses .................................................................................. 108
1
BAB I
PENDAHULUAN
1.1 Latar Belakang Masalah
Teknologi dan ilmu pengetahuan berkembang semakin cepat dari
waktu ke waktu, karena penemuan-penemuan teknologi ini bersifat
dinamis dan akan ada penemuan teknologi yang berikutnya. Masalah yang
terjadi pada pemrosesan sampling file audio adalah noise, semakin banyak
noise yang ada maka akan merubah kualitas file audio. Proses tersebut
membutuhkan suatu pem-filteran audio sample. Didalam proses digital
sample, PCM (Pulse Code Modulation) sampling dipergunakan untuk
menerapkan proses representasi suatu signal waveform seperti deret
bilangan yang merepresentasikan suatu pengukuran sinyal amplitudo.
Salah satu cara untuk mengatasi noise pada pemrosesan sampling
frekuensi file audio tersebut adalah dengan menggunakan teori sampling
frekuensi file audio dan metode FIR (Finite Impulse Response). Dimana
didalam teorema sampling haruslah memenuhi kriteria Nyquist, yaitu :
“Frekuensi sampling (Fs) minimum adalah 2 kali frekuensi sinyal analog
yang akan dikonversi (Fin max)”. Metode filter FIR (Finite Impulse
Response) itu sendiri, tertulis signal yang dihasilkan mempunyai impulse
response dengan jumlah nilai tidak nol berhingga. (Smith dan Bose 2004).
2
Untuk mengatasi hal ini biasanya digunakan suatu filter untuk membuang
nilai ganda ini dalam bentuk filter (biasanya low pass filter) atau anti
aliasing, sehingga dalam proses sampling nantinya dapat dihasilkan nilai
digital yang diharapkan.
Pada penelitian yang telah dilakukan (Agfianto, 2007), dibuat
aplikasi sampling dengan filter IIR (Infinite Impulse Response). Dimana
file audio yang diteliti merupakan file audio berskala besar, serta
membutuhkan cost yang diperhitungkan. Oleh karena itu, beberapa teori
sampling hanya diadopsi saja, dan membuat aplikasi dengan menggunakan
filter FIR (Finite Impulse Response).
Untuk itu peneliti berupaya mewujudkan implementasi sampling
frekuensi file audio dengan menggunakan metode FIR (Finite Impulse
Response) kedalam suatu aplikasi yang mudah digunakan, dalam skripsi
yang berjudul : “RANCANG BANGUN PEMBUATAN APLIKASI
SAMPLING FREKUENSI FILE AUDIO MENGGUNAKAN
METODE FILTER FIR (FINITE IMPULSE RESPONSE)”.
1.2 Rumusan Masalah
Dalam kajian ini peneliti ingin memberikan suatu solusi dengan
membuat aplikasi perkiraan dari sampling frekuensi file audio dan
mengimplementasikan suatu aplikasi data frekuensi dengan cara
menggabungkan teori Nyquist pada sampling frekuensi dan metode
penyaringan filter FIR (Finite Impulse Response) frekuensi.
3
Sesuai dengan tema penelitian skripsi ini, yaitu “Rancang Bangun
Pembuatan Aplikasi Sampling Frekuensi File Audio Menggunakan
Metode Filter FIR (Finite Impulse Response)”, dapat dirumuskan menjadi
beberapa masalah sebagai berikut :
1. Bagaimana membuat aplikasi dari metode penyaringan/filter FIR
(Finite Impulse Response) pada sampling frekuensi file audio.
2. Apakah terjadi perubahan kualitas, besar gangguan (noise) dan berapa
lama waktu yang dibutuhkan pada file audio setelah melalui proses
penyaringan/filter.
1.3 Batasan Masalah
Untuk menghindari meluasnya materi pembahasan tugas akhir ini,
maka peneliti membatasi permasalahan hanya mencakup hal-hal berikut :
1. Penelitian dibatasi dengan menggunakan teori sampling frekuensi
Nyquist dan mengadopsi metode filter FIR (Finite Impulse
Response) untuk teknik penyaringan/filter noise pada frekuensi file
audio.
2. Pada aplikasi ini proses deteksi noise dan filter FIR hanya dilakukan
pada singlefile. Jumlah file yang diuji dibatasi sebanyak 5 file
dengan maksimum ukuran file 100 KB pada sekali proses deteksi
noise dan filter FIR, untuk menghindari proses yang terlalu lama dan
efisiensi pengujian aplikasi.
4
3. File audio yang digunakan sebagai media input adalah file berformat
WAV ( Waveform Audio Format ).
4. Hasil akhir file deteksi noise dan filter FIR akan menghasilkan file
audio (*.mp3), dan dapat disimpan sebagai output.
5. Objek penelitian aplikasi dititik-beratkan pada deteksi noise
sampling frekuensi file audio dan menghilangkan besarnya ganguan
noise.
6. Aplikasi dibuat menggunakan bahasa pemrograman MatLab 7.6.0
(R2008a).
1.4 Tujuan Penelitian
1. Dapat mengimplementasikan metode filter FIR (Finite Impulse
Response) pada sampling frekuensi file audio yang berformat audio
WAV.
2. Dapat membandingkan kualiatas frekuensi audio, serta meningkatkan
performance dan lama waktu yang dibutuhkan output audio
berdasarkan hasil sampling frekuensi dari pemrosesan
penyaringan/filter.
5
1.5 Manfaat Penelitian
Manfaat yang didapat dalam penelitian skripsi ini adalah :
1. Bagi Penulis
a. Penulisan ini diajukan sebagai salah satu syarat untuk
menyelesaikan Program Strata 1 (S-1) pada jurusan Teknik
Informatika.
b. Menerapkan ilmu sampling frekuensi file audio khususnya
teknik deteksi noise dan teknik penyaringan/filter FIR (Finite
Impulse Response).
2. Bagi Universitas
Memberikan sumbangan ilmiah bagi perkembangan teknologi
sampling frekuensi file audio.
1.6 Metodologi Penelitian
Pada penelitian tugas akhir ini, diperlukan data-data yang lengkap
sebagai bahan pendukung kebenaran materi uraian dan pembahasan. Oleh
karena itu diperlukan metodologi pengumpulan data dan metodologi
pengembangan sistem.
1.6.1. Metodologi Pengumpulan Data
1. Studi Pustaka
Membaca dan mempelajari referensi yang ada sebagai
pelengkap, serta mencari referensi tambahan dari internet.
6
2. Studi Literatur
Metode studi literatur digunakan dengan melihat
penelitian yang sudah ada. Melalui studi literatur, peneliti
dapat terhindar dari melakukan penelitian yang sudah
pernah dilakukan, dan pengulangan kesalahan-kesalahan
masa lalu.
1.6.2. Metodologi Pengembangan Sistem
Metode pengembangan sistem yang digunakan dalam
penelitian ini adalah metode pengembangan model SDLC (System
Development Life Cycle). SDLC adalah siklus yang harus dilalui
untuk mendesain dan implementasi sistem yang baru, siklusnya
sebagai berikut :
1) Analisa Sistem
Pada tahap ini dilakukan analisa-analisa dari informasi
terhadap sistem yang akan didesain.
2) Perancangan Sistem
Pada tahap ini dilakukan perancangan sistem yaitu proses-
proses yang akan terjadi di dalam sistem, yang terdiri dari
perancangan proses dan perancangan antarmuka pemakai
(user interface).
7
3) Implementasi Sistem
Pada fase ini dilakukan pengkodean terhadap rancangan-
rancangan yang telah didefinisikan.
4) Operasi dan Perawatan Sistem
Pada fase ini dilakukan pengujian operasi terhadap sistem
dan melakukan pengenalan sistem kepada pengguna.
1.7 Sistematika Penulisan
Dalam penyusunan skripsi ini dibagi menjadi menjadi beberapa
bab, yaitu :
BAB I PENDAHULUAN
Bab ini terdiri dari latar belakang masalah, rumusan masalah,
batasan masalah, tujuan, manfaat, metodologi penelitian dan
sistematika penulisan.
BAB II LANDASAN TEORI
Pada bab ini akan menguraikan secara garis besar beberapa teori
yang menjadi dasar pembuatan aplikasi diantaranya mengenai
teori-teori pendukung untuk sampling frekuensi file audio,
metode filter FIR (Finite Impulse Response).
BAB III METODOLOGI PENELITIAN
Bab ini menguraikan secara rinci metodologi yang digunakan
dalam pembuatan sistem aplikasi.
8
BAB IV PEMBAHASAN DAN IMPLEMENTASI
Bab ini menjelaskan spesifikasi perangkat keras dan perangkat
lunak yang digunakan, implementasi program, dan
pengembangan sistem aplikasi sampling frekuensi yang dibuat.
BAB V PENUTUP
Bab ini berisi kesimpulan akhir dan saran-saran untuk
membangun sistem sampling frekuensi lebih lanjut.
9
BAB II
LANDASAN TEORI
2.1 Rancang-Bangun
Definisi awal dari rancang-bangun perangkat lunak diutarakan oleh
Fritz Bauer dalam suatu konferensi, definisinya adalah :
The establishment and use of sound engineering principles in order
to obtain economically software that is reliable and works
efficiently on real machines. (Pressman, 2001).
Rancang-bangun perangkat lunak merupakan suatu pertumbuhan
diluar perangkat keras dan rancang-bangun sistem. yang meliputi tiga
kunci pokok yaitu : cara, alat dan prosedur yang memungkinkan manajer
untuk mengendalikan proses pengembangan software dan menyediakan
praktisi dengan tujuan untuk membangun perangkat lunak yang
berkualitas.
Metoda rancang-bangun perangkat lunak menyediakan cara teknis
"bagaimana cara" untuk membangun perangkat lunak, caranya meliputi
suatu rangkaian tugas yang meliputi: perencanaan proyek dan penilaian;
analisa sistem dan software yang dibutuhkan; perancangan struktur data,
perancangan program, dan algoritma program; pengkodean; pengujian;
dan pemeliharaan. Metoda untuk rancang-bangun perangkat lunak sering
memperkenalkan suatu notasi grafis atau berorientasi bahasa khusus dan
satu set kriteria untuk perangkat lunak yang berkualitas.
10
Alat rancang-bangun perangkat lunak menyediakan pendukung
semiotomatis atau otomatis untuk mendukung suatu metode. Alat yang
telah ada untuk mendukung masing-masing metoda diatas, ketika peralatan
sudah terintegrasi sedemikianrupa sehingga informasi yang diciptakan
oleh satu alat dapat digunakan oleh alat yang lain, suatu sistem untuk
menunjang pengembangan software.
2.2 Aplikasi
Perangkat lunak (aplikasi) adalah program yang ditulis oleh
pemrogram komputer untuk memecahkan suatu masalah tertentu dengan
menggunakan bahasa pemrograman (Hartono, 2005).
“Program Aplikasi merupakan perangkat lunak yang menentukan
bagaimana sumber data digunakan untuk menyelesaikan masalah para
pengguna”. [3].
Program aplikasi berbeda dengan sistem operasi (yang
menjalankan komputer) dan utility (yang melaksanakan perawatan atau
tugas-tugas umum). Tergantung dari tujuan pekerjaan yang dimaksudkan,
suatu aplikasi dapat digunakan untuk memanipulasi teks, angka, grafik
atau kombinasi dari unsur-unsur tersebut.
2.3 Sampling Frekuensi
Pada tahun 1949, Nobert Wiener telah mengembangkan konsep
baru yang sampai sekarang masih tetap dipakai. Wiener meneliti dengan
11
cara : “Jika diketahui suatu signal kemudian ditambahkan dengan noise
yang ada, lalu bagaimanakah kita memperkirakan keadaan signal tersebut
pada waktu sebelum dan sesudah diterima”. Penelitian ini dilakukan pada
ujung penerima saja. Teori ini disebut sebagai “Detection Theory”. [7]
Kemudian Claude Shannon pada tahun 1948, dimana signal
processing dapat terjadi baik pada penerima maupun pada pengirim.
Shannon meneliti dengan cara : “Jika diketahui suatu berita, lalu diteliti
bagaimana berita tersebut dapat terwakilkan sedemikian rupa sehingga
dapat membawa informasi melalui suatu sistem yang diberikan dengan
keterbatasan-keterbatasannya.” (Robert, 2004).
Dengan cara ini yang dipentingkan bukan signalnya, melainkan
informasinya yang terkandung didalam signal tersebut. Pendekatan ini
disebut sebagai “Teori Informasi”.
Teori informasi adalah suatu pelajaran matematik yang terbagi
menjadi 3 bagian konsep dasar, yaitu:
1. Pengukuran dari informasi,
2. Kapasitas saluran komunikasi untuk menyalurkan informasi,
3. Penyandian (coding) sebagai cara untuk mendayagunakan saluran
agar dapat berkapasitas penuh.
Pada teori sampling kecepatan pengambilan sampel (frekuensi
sampling) dari sinyal analog yang akan dikonversi haruslah memenuhi
kriteria Nyquist yaitu :
Fs > 2 Finmax
12
Dimana “Frekuensi sampling (Fs) minimum adalah 2 kali frekuensi sinyal
analog yang akan dikonversi (Finmax)”.(Robert, 2004). Atau dapat di
jelaskan bahwa Teori Sampling : “Transmisi dilakukan setelah dilakukan
sample dengan frekuensi lebih dari dua kali frekuensi maksimum dari
komponen frekuensi, sinyal asli dapat dibentuk kembali dengan fidelitas
tinggi”. Apabila kriteria Nyquist tidak dipenuhi maka akan timbul efek
aliasing yang di-ilustrasikan oleh Gambar 2.1.
Gambar 2.1 Aliasing [7]
Disebut aliasing karena frekuensi tertentu terlihat sebagai frekuensi yang
lain (menjadi alias dari frekuensi lain).
Sebagai contoh misalnya :
1. Bila sinyal analog yang akan dikonversi mempunyai frekuensi
sebesar 50Hz maka frekuensi sampling minimum dari ADC adalah
100Hz. Atau bila dibalik, bila frekuensi sampling ADC (Analog
13
Digital Converter) sebesar 100Hz maka sinyal analog yang akan
dikonversi harus mempunyai frekuensi maksimum 50Hz. [9].
2. Contoh Berapa interval waktu ? (125μsec ! ), (Band Width= 4kHz)
Untuk transmisi telepon, frekuensi maksimum adalah 4kHz.
・ Sesuai dengan teori sampling,
Frekuensi sampling adalah, f=4kHz×2= 8kHz
・ Waktu dan frekuensi saling berkebalikan. T=1/F
・ T=1/8000=125μsec
・ “Sampling” berarti mengukur nilai amplitudo setiap 125μsec.
Sampling frekuensi atau sampling rate didefinisikan sebagai suatu
nilai sample per detik yang dihasilkan dari signal tak putus menjadi signal
diskrit. Notasinya adalah hertz (Hz) [10].
Kebalikan dari sampling frekuensi adalah periode sampling atau
waktu sampling, yaitu waktu yang dibutuhkan untuk melakukan sampling.
Tidak ada aturan baku yang mengatur berapa batas sampling yang
diperkenankan pada suatu periode sampling. Berikut adalah tabel macam
karakteristik sampling rate audio diantaranya ;
Tabel. 2.1 Interval Sampling Rate Audio [10].
No Interval Sampling Rate
Audio
Kegunaan Interval
1.
8,000 Hz
Telepon, terutama untuk kualitas
pembicaraan orang.
2. 11,025 Hz - 22,050 Hz Radio
14
3.
32,000 Hz
miniDV, digital video camcorder
4.
44,100 Hz
Audio CD, biasanya menggunakan
MPEG-1 audio (VCD,SVCD,MP3).
5.
47,250 Hz
Perekam suara berbasis PCM pertama di
dunia oleh Nippon Columbia (Denon).
6.
48,000 Hz
Digital sound untuk digital
TV,DVD,DAT, films dan professional
audio.
7.
50,000 Hz
Digital audio recorder komersil pertama
di akhir 70-an dari 3M dan
Soundstream.
8.
50,400 Hz
Sampling rate yang digunakan
Mitsubishi X-80 digital audio recorder.
9.
96,000 Hz atau 192,400 Hz
DVD – audio, LPCM DVD tracks, BD-
ROM (Blue-ray Disc) audio tracks, dan
HD-DVD (High-Definition DVD) audio
tracks.
10.
2.8224 MHz SACD, 1-bit sigma-delta modulation
atau lebih dikenal sebagai Direct Stream
Digital, dikembangkan oleh Sony dan
Philips.
Dalam melakukan proses sampling biasanya tidak seluruhnya
berhasil dengan baik, ada beberapa jenis distorsi yang mungkin timbul
dalam proses ini diantaranya ; [10].
a. Jitter : deviasi keakuratan karena waktu interval sampel.
b. Integration effect : terjadi saat sampler tidak dapat melakukan
sampling karena data yang tak terdefinisi.
c. Noise : thermal sensor noise, analog circuit noise, dll.
15
d. Quantization error : kesalahan round-off karena sampel yang
representasikan sebagai integer pada ouput ADC (Analog to Digital
Converter) .
e. Slew rate limit error : kesalahan karena ketidak-sanggupan ADC
(Analog to Digital Converter) merepresentasikan secara cepat.
f. Clipping : disebabkan saat input signal/sinyal diluar rentang nilai ADC
(Analog to Digital Converter) yang dapat direpresentasikan.
2.3.1 PCM ( Pulse Code Mudulation )
Pulse Code Modulation (PCM) juga dikenal sebagai Linear PCM
adalah standar untuk format CD Audio. Karena sifatnya yang tidak
terkompresi, maka format PCM ini mempunyai ukuran file yang cukup
besar bila dibandingkan dengan format MP3. (Ferdinando, 2010).
Gambar 2.2 Konversi Analog ke Digital menggunakan PCM [13]
16
Gambar 2.3 Noise Reduction menggunakan filter adaptive. [13]
2.3.2 Audio Filter
Audio filter adalah suatu yang dimanfaatkan pada pemrosesan
sinyal suara. Terminologi audio filter dapat diartikan suatu perubahan
yang terjadi bisa treable, muatan harmonik, pitch atau waveform dari suatu
sinyal audio. Banyak jenis filter yang sering digunakan pada berbagai
aplikasi seperti ; graphic equalizers, synthesizers, sound effects, CD
players dan virtual reality systems. Bisa dikatakan suatu audio filter
didesign untuk meloloskan beberapa area frekuensi yang diperlukan, baik
yang belum dikuatkan ataupun yang sudah dikuatkan. Misalkan pada
grafik ekualiser atau CD player, filter didesign untuk beberapa kriteria,
seperti pass band, pass band attenuation, stop band, dan stop band
attenuation, dimana pass band adalah area frekuensi untuk audio dapat
dikuatkan dengan spesifikasi minimum.
Dalam beberapa kasus yang kompleks, suatu audio filter dapat
menampilkan audio feedback loop dimana terjadi resonansi saat penguatan
sinyal. Audio filter pun dapat juga didesign menampilkan penguatan gain
FI R
Noise
Suara
Sinus
Sinyal
referensi
LMS
errorkoefisien
Output
17
(boost) sebaik penguatan attenuation. Audio filter dapat
diimplementasikan pada rangkaian analog seperti ; analog filter atau pada
DSP code atau computer software sebagai digital filter.
Banyak non-linier filter digunakan pada aplikasi audio, seperti ;
compressors, fuzzy boxes, ring modulators. (Binanto, 2010).
2.3.3 Audio Codec
Suatu audio codec adalah sebuah program komputer yang
melakukan proses kompresi dan dekompresi dari audio digital yang
nantinya didapatkan suatu format audio file dan audio streaming.
Umumnya codec diimplementasikan sebagai bagian dari interface bagi
banyak pemutar multimedia, seperti ; Winamp, Windows Media Player
ataupun XMMS. Dalam konteks yang sama audio codec dapat dianggap
sebagai sebuah perangkat implementasi yang bisa berbentuk card audio,
yang dapat digunakan encoding/decoding dari dan ke audio analog
menjadi audio digital (AD/DA converter). Contoh : AC‟97 standar
keluaran Intel Corp. (Binanto, 2010).
2.3.4 Audio Sampling
Pada dasarnya semua suara audio, baik vokal maupun bunyi
tertentu merupakan suatu bentukan dari getaran. Ini menandakan semua
audio memiliki bentuk gelombangnya masing-masing. Umumnya
18
bentukan gelombangnya disebut dengan sinyal analog. Sinyal analog
adalah sinyal yang bentuknya seperti pada Gambar 2.4.
Namun sebuah teknik memungkinkan sinyal ini diubah dan
diproses sehingga menjadi lebih baik. Teknik ini memungkinkan
perubahan sinyal analog menjadi bit-bit digital. Teknik itu disebut teknik
sampling. Jika telah menjadi sinyal digital maka sinyal ini jauh lebih baik,
sedikit noisenya dan juga dapat diproses dengan mudah. Digital Signal
Prosessing merupakan perkembangan dari teknik ini yang memungkinkan
kita membentuk sample-sample yang berupa suara seperti yang ada pada
keyboard, syntitizer, Audio Prosessing, dll.
Gambar 2.4 Sinyal Analog [1].
2.3.5 Proses Sampling
Pada proses ini terjadi suatu pencuplikan dari bentukan sinyal
analog. Pencuplikan dilakukan pada bagian-bagian sinyal analog. Ini
dilakukan dengan sinyal-sinyal sample. Bentukan sinyal sample dapat
dilihat pada Gambar 2.5. Ada suatu aturan tertentu dari sinyal ini. Teori
Shannon menyatakan frekuensi sinyal ini paling sedikit adalah 2 kali
frekuensi sinyal yang akan disampling/sinyal analog. (Binanto, 2010).
19
Ini adalah batas minimum dari frekuensi sample agar nantinya
cuplikan yang diambil menunjukkan bentukan sinyal yang asli (analog).
Lebih besar tentunya lebih baik, karena cuplikan akan lebih
menggambarkan sinyal yang asli. Seperti terlihat pada Gambar 2.6. adalah
bentukan proses pencuplikan. Setelah dilakukan proses ini maka
terbentuklah suatu sinyal analog-diskrit yang bentuknya menyerupai
aslinya namun hanya diambil diskrit-diskrit saja. (Binanto, 2010)
Gambar 2.5 Sinyal Sample [1].
Gambar 2.6 Proses pencuplikan sinyal [1].
20
2.3.6 Frekuensi Kerja Audio
Suatu audio frekuensi (AF) bekerja pada frekuensi 20 Hz s/d
sekitar 20 KHz dan pada frekuensi inilah dapat didengar manusia. Salah
satu variabel dari frekuensi yang dapat terukur dan secara fisik berosilasi
pada range frekuensi ini, diantaranya ; aliran listrik, tekanan udara ataupun
getaran mekanis. (Ferdinando, 2010)
Gambar 2.7 Cara kerja audio secara umum. [13]
2.4 File Audio Digital
2.4.1 Definisi Audio
Audio adalah vibrasi yang dihasilkan oleh suatu benda dan dapat
didengarkan dengan jelas, contohnya pita suara manusia. Frekuensi suara
yang dapat didengar manusia terletak diantara 20 dan 20.000 Hz. Range
ini berbeda-beda secara individu dan umumnya tergantung usia. Biasanya
manusia mendengar pada frekuensi sekitar 3.500 Hz, diatas kemampuan
dasar pendengaran ataupun dibawahnya disebut sebagai ultrasound dan
infrasound. (Binanto, 2010)
21
Ultrasound adalah suara dengan frekuensi diatas batas pendengaran
manusia 20 KHz. Beberapa binatang seperti anjing, ikan lumba-lumba,
kelelawar dan tikus dapat mendengarkan frekuensi ini. Hal ini
dimungkinkan karena telinga bagian tengahnya memiliki kemampuan low
pass filter sehingga frekuensi sampai dengan 200 KHz dapat didengar.
Infrasound adalah suara dengan frekuensi dibawah batas
pendengaran manusia. Beberapa penelitian mengenai suara rendah ini
bekerja pada 16 s/d 17 Hz mengarah kepada 0,001 Hz. Pada range
frekuensi ini seismograf digunakan untuk memonitoring terjadinya gempa
bumi, gelombang laut, gunung meletus, dan pergerakan meteor. Beberapa
hewan dapat mendengar frekuensi ini walaupun sumber suara berada jauh
dari binatang, diantaranya ikan paus, gajah, badak, jerapah, dan buaya.
(Binanto, 2010).
2.4.2 Jenis - jenis Audio / Suara
Terdapat 2 (dua) macam klasifikasi jenis suara, (Ferdinando, 2010)
diantarannya ;
1) Noise
Noise adalah vibrasi yang tidak umum dan tidak diinginkan
yang masuk dalam setiap frekuensi. Noise memiliki aperiodic
berurutan dalam gelombang. Sedangkan suara memiliki
gelombang sinus dengan frekuensi dan amplitudo yang tetap,
yang biasa dinamakan pure tones (tone dengan frekuensi
22
tunggal tanpa muatan harmonik). Contoh untuk pure tones
adalah suara piano, dimana nada C pada bagian tengah piano
akan memiliki frekuensi 440 Hz.
2) Pitch
Pitch pada suara adalah range yang mungkin dihasilkan
akibat terjadinya gelombang dan membentuk frekuensi jenis
suara tertentu. Frekuensi ini dapat dikelompokan sebagai ;
a) Low (bass), frekuensi ini biasanya menghasikan suara
yang penuh tenaga dan hangat. Misalnya suara petir
dan tembakan peluru.
b) Midrange, frekuensi ini biasanya menghasilkan suara
yang berenergi. Pada umumnya orang akan terganggu
dengan frekuensi ini, misalnya suara ring telepon.
c) High (treble), frekuensi ini biasanya menghasilkan
suara yang agak berkualitas, terdengar jelas dan dikenal
asal suaranya. Contohnya suara bel kecil dan simbal
drum. [10]
2.4.3 Format Audio
1. Waveform Audio Format (WAV)
WAV merupakan standar format container file yang
digunakan oleh Windows. Wav umumnya digunakan untuk
menyimpan audio tak termampatkan, file suara berkualitas CD,
23
yang berukuran besar (sekitar 10MB per menit). File .wav juga
dapat berisi data terkodekan dengan beraneka ragam codec untuk
mengurangi ukuran file. (Binanto, 2010).
File Audio WAV mirip dengan PCM, namun bisa
terkompresi maupun tidak terkompresi. File Wav juga mirip
dengan file AIFF yaitu file Audio yang digunakan komputer Mac.
Format WAV banyak digunakan oleh handphone, sehingga
popularitas bisa menyamai file MP3. (Binanto, 2010)
WAV adalah singkatan dari istilah dalam bahasa Inggris
waveform audio format merupakan format standar berkas audio
yang dikembangkan oleh Microsoft dan IBM. Walaupun WAV
dapat menampung audio dalam bentuk terkompresi, umumnya
format WAV merupakan audio yang tidak terkompres.
Kualitas produksi waveform audio bergantung pada sampling
rate (banyaknya sample per-detik). Waveform audio disebut juga
pulse code modulator (pcm) audio. WAV merupakan standar untuk
komputer berbasis Windows, namun dapat digunakan di komputer
berbasis Machitosh. [6].
2. MPEG-1 Audio Layer 3 (MP3)
Format MPEG Layer-3 merupakan format yang sangat
populer untuk pengunduhan dan penyimpanan music. Dengan
mengurangi bagian-bagian dari file audio yang tidak terdengar, file
24
.mp3 dimampatkan secara signifikan sampai 1/10 dari ukuran yang
ekuivalen dengan PCM, tetapi dengan tetap mempertahankan
kualitas audio yang baik. (Binanto, 2010).
MPEG sendiri merupakan singkatan dari Moving Pictures
Experts Group, yaitu sebuah organisasi yang mengembangkan
standar untuk kode program audio dan video. Sebuah file MP3
mempunyai bit rates mulai dari yang rendah yaitu 32 kbits/detik
hingga 320 kbits/detik. Format File MP3 merupakan yang paling
terkenal di kalangan umum, karena ukuran filenya yang kecil tapi
dengan kualitas suara yang masih terjaga dengan baik. Selain itu
format file MP3 banyak didukung pemutar-pemutar musik yang
banyak beredar di pasaran, sehingga MP3 lebih dikenal. [6]
Standar MPEG-1 tidak menspesifikasikan secara spesifik
cara melakukan encode MP3, sebaliknya algoritma decode serta
format file didefinisikan secara spesifik. Oleh karena itu cara
encode setiap encode berlainan dan menghasilkan kualitas hasil
yang berlainan juga. MP3 mempunyai beberapa batasan limit,
antara lain ;
a. Bit rate terbatas, maksimum 320 kbit/s (beberapa encoder
dapat menghasilkan bit rate yang lebih tinggi, tetapi sangat
sedikit yang memiliki bit rate tinggi).
25
b. Resolusi waktu yang digunakan MP3 dapat menjadi terlalu
rendah untuk sinyal-sinyal suara yang sangat transient,
sehingga dapat menyebabkan noise
c. Resolusi frekuensi terbatasi oleh ukuran window yang
panjang kecil mengurangi efisiensi coding
d. Tidak ada scale factor band untuk frekuensi diatas 15,5 atau
15,8 kHz
e. Mode joinstereo dilakukan pada basis per frame
f. Delay bagi encoder / decoder tidak didefinisikan, sehingga
tidak ada dorongan untuk gapless playback (pemutaran audio
tanpa gap). Tetapi, beberapa encoder seperti LAME dapat
menambahkan metadata tambahan yang memberikan
informasi kepada MP3 player untuk mengisi hal itu. [6]
2.5 Model Nada
Untuk piano dan alat musik petik atau gesek, representasi nada
memiliki profil energi yang sama. Nada tersebut mulai dengan sebuah
attack dengan overshoot yang cukup tinggi dan berakhir dengan keadaan
sustain dan akhirnya menurun. Panjang dari attack dan sustain akan
menentukan durasi dari nada. (Ferdinando, 2010)
26
Gambar 2.8 Grafik dari amplitudo energi dalam domain waktu
untuk nada single. [4]
Karakteristik spectrum untuk tiap nada bervariasi bergantung pada
instrument musik yang dimainkan. Gambar 2.6 menunjukkan puncak
tertinggi merupakan frekuensi fundamental dimana terletak pada frekuensi
rendah. Puncak-puncak yang lainnya merupakan harmonik dari frekuensi
fundamental yang muncul saat n * f dimana n adalah nilai integer lebih
besar dari satu.
Gambar 2.9 Visualisasi nada pada domain frekuensi [4].
27
2.5.1 Interval
Interval adalah jarak / selang antara dua buah nada. Ada banyak
ukuran interval yang dapat dibuat untuk membuat tangga nada.
(Ferdinando, 2010). Dalam subbab sebelumnya interval yang dipakai
(dalam satuan semitone) untuk membentuk tangga nada mayor adalah :
2-2-1-2-2-2-1. Tangga nada tidak hanya tangga nada mayor. Ada banyak
jenis tangga nada yang lain, dan itu semua dibuat berdasarkan aturan
terhadap interval. [4]
Ukuran interval yang bervariasi akan memberikan tidak hanya
suara terdengar yang berbeda, tapi juga memberi kesan „rasa‟ yang juga
berbeda. Untuk ukuran interval tertentu campuran nada dapat „dirasakan‟
begitu „pas‟ atau cocok (consonant). Tetapi campuran nada yang lain bisa
saja terdengar „kurang enak‟ atau kurang cocok (dissonant). Kombinasi
consonant dan dissonant sangat diperlukan dalam musik.
Musik yang hanya berisi consonant akan terdengar lembut dan
lunak. Pemberian dissonant membuat ada „tekstur‟ dalam musik. Berikut
ini tabel mengenai ukuran interval (dalam semitone) dan namanya serta
penjelasan singkat.
28
Tabel 2.2 Interval pada musik. [4]
Nama dan ukuran interval diatas sangat penting, khususnya ketika
membuat sebuah chord. Chord dibuat dengan mengkombinasikan interval
yang ada dan memainkan tiga atau lebih nada secara serentak. Ada banyak
jenis chord, dan masing-masing dibuat berdasarkan formula yang unik dari
pengkombinasian interval nada. Tiap interval diukur dari nada awal
(dikenal sebagai nada dasar) dari tipe chord yang akan disusun. Misalkan
ingin membuat chord D, maka nada D dihitung sebagai nada awal (dasar)
dalam perhitungan interval.
29
Interval dari tipe chord yang disusun dari nada dasar dikenal
sebagai tingkat (degree). Penamaan tingkat ini mirip dengan nama
interval, hanya tingkat ini lebih sering dipakai karena penulisannya yang
singkat. Berikut ini daftar penamaan tingkat dan ekivalennya dengan
interval dan ukuran interval (dalam satuan semitone).
Tabel 2.3 Tingkat Interval. [4]
Sangatlah penting mengingat tingkat ini, karena sangat berkaitan
dalam penyusunan sebuah chord.
Misalkan, untuk membuat chord mayor diperlukan nada dari
tingkat 1,3, dan 5. Maka jika ingin menyusun chord C mayor, nada yang
dimainkan adalah nada C, E, dan G (tingkat 1, 3, dan 5 dari tangga nada C
mayor ).
30
2.5.2 Pasangan Chord (Kunci Tangga Nada)
Dalam mengiringi sebuah lagu maka jenis chord yang dimainkan
tentu juga tergantung dari nada dasar lagu tersebut. Selain itu, untuk
menentukan pasangan chord yang dipakai untuk mengiringi lagu juga
memiliki aturan tersendiri. [4]
Untuk memudahkan pencarian formulanya, ada baiknya dimulai
dengan menganalisis dari sistem tangga nada C mayor.
Tangga nada C mayor : C – D – E – F – G – A – B – C
Masing-masing nada dalam tangga nada C mayor ini dicari triad-
nya, maka :
Tabel 2.4 Triad C mayor, Sumber : Dokumentasi Bagus Ak
Triad : C – E – G
Tingkat : 1 – 3 – 5 C mayor
Triad : D – F – A
Tingkat : 1 – b3 – 5 D minor
Triad : E – G – B
Tingkat : 1 – b3 – 5 E minor
Triad : F – A – C
Tingkat : 1 – 3 – 5 F mayor
Triad : G – B – D
Tingkat : 1 – 3 – 5 G mayor
Triad : A – C – E
Tingkat : 1 – b3 – 5 A minor
Triad : B – D – F
31
Tingkat : 1 – b3 – b5 B diminished
Triad : C – E – G
Tingkat : 1 – 3 – 5 C mayor
Dari penurunan diatas terdapat 3 buah triad mayor yaitu pada
tingkat 1, 4, dan 5 relatif terhadap tangga nada C mayor. Ini berarti bila
mengiringi dari C mayor, pasangan chord mayor lainnya adalah F mayor,
dan G mayor (biasanya cukup ditulis dengan F dan G saja). Kemudian
didapati juga ada 3 buah chord minor, yaitu pada tingkat 2,3, dan 6 relatif
terhadap tangga nada C mayor. Ini juga berarti pasangan chord lainnya
yang dapat mengiringi chord C mayor adalah : D minor (Dm), E minor
(Em), dan A minor (Am). Kemudian terdapat satu chord diminished, yaitu
B diminis (Bdim). Bagian ini sering digolongkan sebagai berikut;
Tabel 2.5 Penggolongan Triad [4].
2.6 Filter (Tapis)
Filter adalah adalah sebuah rangkaian yang dirancang agar
melewatkan suatu pita frekuensi tertentu, kemudian memperlemah semua
isyarat di luar pita frekuensi. Pengertian lain dari filter adalah rangkaian
32
pemilih frekuensi agar dapat melewatkan frekuensi yang diinginkan dan
menahan (couple) / membuang (bypass) frekuensi lainnya. (Robert, 2004).
Jaringan-jaringan filter bisa bersifat aktif maupun pasif.
Jaringan filter pasif hanya berisi tahanan, inductor dan kapasitor saja,
sedangkan jaringan filter aktif berisikan transistor atau op-amp ditambah
tahanan, inductor dan kapasitor. Jenis filter ada 4 (empat) macam dalam
pengaturan-pengaturan frekuensi, (Robert, 2004) yaitu :
1) Band Pass Filter : membagi kedua komponen frekuensi atas maupun
bawah dan meneruskan komponen frekuensi.
2) Band Stop Filter : membuang frekuensi tengah, dan meneruskan
komponen frekuensi atas dan frekuensi bawah.
3) High Pass Filter : meneruskan komponen frekuensi atas pada
keluaran (output), dan menghilangkan komponen frekuensi bawah.
4) Low Pass Filter : meneruskan komponen frekuensi bawah sebagai
keluaran (output), dan mengurangi komponen frekuensi atas.
Penyaringan/filter sinyal dilakukan dengan 2 (dua) tahap, [8] yaitu :
1. Masukan (input) penyaringan sinyal.
2. FFT (Fast Filter Transform), dalam tahap ini data digital gelombang
di transformasikan kepada domain frekuensi.
Gambar 2.10 Respon LPF [8].
33
Pita Lewat : Jangkauan frekuensi yang dipancarkan.
Pita Stop : Jangkauan frekuensi yang diperlemah.
Frekuensi cutoff (fc) : disebut frekuensi 0.707, frekuensi 3-dB, frekuensi
pojok, atau frekuensi putus.
Bentuk respon HPF seperti ditunjukkan gambar di bawah ini.
Gambar 2.11 Respon HPF [8].
Dalam perancangannya diperhitungkan nilai Q(faktor mutu).
dengan;
Q = faktor mutu
fo = frekuensi cutoff
B = lebar pita frekuensi
seperti berikut ini :
Gambar 2.12 Band Pass Filter [8].
34
Gambar 2.13 Filter Band Elimination [8].
Ada 3 macam desain yang cukup dikenal pada penggunaan
rangkaian filter pada sistem audio yaitu : Chebycev, Bessel dan
Butterwoth.
Filter butterwoth lebih banyak digunakan dalam sistem audio.
Rancangan rangkaian yang akan dibahas adalah low pass filter butterwoth
dan high filter butterwoth karena filter butterwoth memiliki tingkat ke-
linieran yang lebih baik.
Beberapa cara untuk merancang suatu filter :
a. Menentukan spesifikasi filter : penguatan, frekuensi cut-off, frekuensi
stop band.
b. Tentukan frekuensi cut off (Fc) untuk merancang low pass filter dan
high pass filter dengan bantuan tabel dan harga komponen.
2.7 Metode Pemrosesan Sinyal Digital Pada File Audio
Pemrosesan Sinyal Digital (PSD) adalah teknologi yang sudah
mendasari hampir seluruh bidang dalam kehidupan manusia. Sinyal yang
diolah pada umumnya berasal dari proses sampling, kuantisasi, dan
35
coding. Proses ini membutuhkan alat yang bernama ADC (Analog to
Digital Converter). Setelah sinyal menjadi bentuk digital, barulah diproses
secara digital oleh prosesor DSP. Hasil keluaran dari proses ini selanjutnya
diubah kembali menjadi analog kembali oleh DAC (Digital to Analog
Converter), karena pada umumnya sinyal yang bisa kita lihat atau dengar
adalah sinyal analog (Budi, 2004).
DSP
ADC DACOutput
(Sinyal Analog)
Output
(Sinyal Digital)
Input
(Sinyal Digital)
Input
(Sinyal Analog)
Gambar 2.14 Sistem Pengolahan Sinyal Digital (Tri,Budi; Modul
Sampling dan Aliasing)
Pada penerapannya, pemrosesan sinyal banyak melibatkan bidang-
bidang ilmu yang lain seperti teori telekomunikasi, analisis numerik,
probabilitas/statistika, elektronik digital, elektronika analog, dan
sebagainya. (Budi, 2004).
Adapun aplikasinya sebagai berikut :
1. Telekomunikasi
Misalnya pada multiplexing, kompresi; signal tone generation,
filtering, dan sebagainya.
36
2. Pemrosesan Audio
Misalnya pada music; speech recognition, speech synthetis, dan
sebagainya.
3. Medis
Misalnya analisis elektrokardiogram; diagnostic imaging, medical
image storage/retrieval.
4. Militer
Misalnya radar, sonar; secure communication, dan sebagainya.
Pada prinsipnya pemrosesan sinyal digital hanya memakai kurang
lebih 5 operasi dasar, yaitu : korelasi, konvolusi, transformasi, Discreate
Fourier Tranform (DFT) dan Fast Fourier Transform (FFT), dan Filter.
Ada beberapa alasan mengapa digunakan pemrosesan sinyal digital
pada suatu sinyal analog, yaitu : [8],
1) Suatu sistem digital terprogram memiliki fleksibilitas dalam
merancang-ulang operasi-operasi pemrosesan sinyal digital hanya
dengan melakukan perubahan pada program yang bersangkutan,
sedangkan proses merancang-ulang pada sistem analog biasanya
melibatkan rancang-ulang perangkat keras, uji coba dan verifikasi
agar dapat bekerja seperti yang diharapkan. Penggunaan yang
berulang-ulang terhadap informasi tidak mempengaruhi kualitas
dan kuantitas informasi itu sendiri.
37
2) Pemrosesan sinyal digital menawarkan pengendalian akurasi yang
lebih baik. Faktor toleransi yang terdapat pada komponen-
komponen rangkaian analog menimbulkan kesulitan bagi
perancang dalam melakukan pengendalian akurasi pada sistem
pemrosesan sinyal analog. Di lain pihak, sistem digital
menawarkan pengendalian akurasi yang lebih baik.
3) Informasi dapat dengan mudah diproses dan dimodifikasi ke dalam
berbagai bentuk. Sinyal-sinyal digital dapat disimpan pada media
magnetik (berupa tape atau disk) tanpa mengalami pelemahan atau
distorsi data sinyal yang bersangkutan. Dengan demikian sinyal
tersebut dapat dipindah pindahkan serta diproses secara offline di
laboratorium. Metode-metode pemrosesan sinyal digital juga
membolehkan implementasi algoritma-algoritma pemrosesan sinyal
yang lebih canggih.
4) Implementasi digital sistem pemrosesan sinyal lebih murah
dibandingkan secara analog. Hal ini disebabkan karena perangkat
keras digital lebih murah, atau mungkin karena implementasi
digital memiliki fleksibilitas untuk dimodifikasi.
2.7.1 Korelasi
Korelasi adalah formula yang dapat menunjukkan hubungan
kemiripan antara 2 sinyal. Nilai korelasi yang sudah dinormalisasi berkisar
38
antara -1 sampai 1. Jika korelasi bernilai 1, maka kedua sinyal sama persis.
Sebaliknya jika bernilai -1 maka kedua sinyal saling berkebalikan.
Formula untuk korelasi dapat dilihat dibawah ini : (Ferdinando, 2010).
Secara umum, terdapat 2 macam korelasi, yaitu:
a. Auto-correlation
Korelasi sebuah sinyal dengan sinyal itu sendiri. Jika dilihat dari
rumus, berarti x1 (n) sama dengan x2 (n).
b. Cross-correlation
Korelasi sebuah sinyal dengan sinyal lainnya. Dari sini dapat dilihat
kemiripan kedua sinyal tersebut.
2.7.2 Konvolusi
Pada dasarnya, konsep konvolusi adalah penggabungan 2 buah
sinyal secara matematis untuk membentuk suatu sinyal baru. Konvolusi
dapat menunjukkan bagaimana interaksi antara input dengan sistem untuk
membentuk output.
Sistem
h(n)Input x(n) Output y(n)
Gambar 2.15 Skema Konvolusi (Ferdinando, 2010).
39
Formula konvolusi dapat dilihat berikut ini : (Ferdinando, 2010).
2.7.3 Transformasi
Semua sinyal baik analog maupun digital pada umumnya
direpresentasikan dalam domain waktu. Dalam domain waktu, sulit
dilakukan analisis frekuensi suatu sinyal. Transformasi digunakan untuk
mengubah domain suatu sinyal dari domain waktu ke domain frekuensi.
Transformasi biasanya digunakan untuk mempermudah analisis maupun
perhitungan. Dalam PSD, transformasi yang biasa dipakai adalah
transformasi Z. (Ferdinando, 2010).
Tranformasi ini berguna untuk merepresentasikan, menganalisis,
serta mendesain sistem dan siyal diskrit. Formula transformasi Z sebagai
berikut (Ferdinando, 2010).
2.7.4 DFT dan FFT
DFT termasuk salah satu jenis transformasi. Dengan menerapkan
formula DFT, suatu sinyal dalam domain waktu dapat diubah ke dalam
domain frekuensi. Pada domain frekuensi, sinyal direpresentasikan dalam
frekuensi (sumbu x) dan magnitude (sumbu y). Jadi dapat dilihat dengan
40
jelas frekuensi kerja dan power suatu sinyal ataupun sistem. Formula DFT
sebagai berikut : (Ferdinando, 2010).
FFT sebenarnya memiliki fungsi yang sama dengan DFT, hanya
FFT menggunakan algoritma perhitungan yang lebih efisien dibandingkan
dengan DFT. Hal ini diperlukan dalam aplikasi untuk meningkatkan
efisiensi kerja suatu prosesor DSP.
2.7.5 Filter
Filter adalah sistem yang secara selektif dapat mengubah bentuk
sinyal, menghilangkan sinyal tertentu, maupun berbagai karakteristik
sinyal lainnya. Penggunaan filter ini banyak dan luas sekali. Pada PSD,
filter yang didesain adalah filter digital. Pada filter ini, penentu
karakteristik dari filter adalah koefisien-koefisien filter.
Secara umum filter digital dibagi 2 jenis, yaitu :
1. Finite Impulse Response (FIR)
FIR dipakai ketika jumlah koefisien tidak terlalu besar dan tidak
diinginkan distorsi fasa. Formula FIR dapat dilihat dibawah ini
(Ferdinando, 2010).
41
2. Infinite Impulse Response (IIR)
IIR dipakai jika ingin didapatkan frekuensi cutoff yang tajam dan
throughput yang tinggi. Formula IIR dapat dilihat dibawah ini
(Ferdinando, 2010).
Jika diperhatikan, semua operasi dasar ini hanya berupa perkalian
dan penjumlahan sederhana saja. Namun kedua operasi yang dilakukan ini
sangat banyak jumlahnya, sehingga untuk menerapkannya dalam aplikasi
diperlukan suatu prosesor yang sangat cepat dalam melakukan perhitungan
matematis. Untuk itulah didesain suatu mikroprosesor yang bekerja khusus
untuk memproses sinyal digital yang disebut Digital Signal Prosessor
(DSP) (Ferdinando, 2010).
2.8 Transformasi Fourier
Sejarah transformasi fourier berawal pada tahun 1822, Joseph
Fourier, ahli matematika dari Prancis menemukan bahwa : “Setiap fungsi
periodik (sinyal) dapat dibentuk dari penjumlahan gelombang-gelombang
sinus/cosinus”. Setiap orang pada suatu saat pernah menggunakan suatu
teknik analisis dengan tranformasi untuk menyederhanakan penyelesaian
suatu masalah (Bose, 2004).
42
Transformasi Fourier merupakan metode tradisional untuk
menentukan kandungan frekuensi dari sebuah sinyal. Transformasi Fourier
pada dasarnya membawa sinyal dari dalam kawasan waktu ( time-domain)
ke dalam kawasan frekuensi (frekuensi-domain). Pada sisi lain
transformasi fourier dapat dipandang sebagai alat yang mengubah sinyal
menjadi jumlahan sinusoidal dengan beragam frekuensi.
Tranformasi Fourier menggunakan basis sinus dan kosinus yang
memiliki frekuensi berbeda. Hasil Transformasi Fourier adalah distribusi
densitas spectral yang mencirikan amplitudo dan fase dari beragam
frekuensi yang menyusun sinyal. Hal ini merupakan salah satu kegunaan
Transformasi Fourier, yaitu untuk mengetahui kandungan frekuensi sinyal.
(Ferdinando, 2010).
2.8.1 Contoh Hasil Perhitungan Transformasi Fourier dalam bentuk
Sinus ( Sin [x] )
Berikut ini adalah contoh perhitungan dengan transformasi fourier
beserta grafik tampilannya adalah sebagai berikut;
Sinyal kotak merupakan penjumlahan dari fungsi-fungsi sinus diatas. Lihat
Gambar 2.16
43
Gambar 2.16 Contoh hasil proses transformasi fourier. (Ferdinando, 2010).
2.8.2 Contoh Hasil Perhitungan Transformasi Fourier Satu (1)
Dimensi
Misalkan kita memiliki sinyal x(t) dengan rumus sebagai berikut;
x(t) = cos ( 2 * pi * 5 * t ) + cos ( 2 * pi * 10 * t ) +
cos ( 2 * pi * 20 * t ) + cos ( 2 * pi * 50 * t )
Sinyal tersebut memiliki empat komponen frekuensi yaitu; 5, 10,
20, 50.
Gambar sinyal dengan satu dimensi dengan rumus;
x(t) = cos(2*pi*5*t) + cos(2*pi*10*t) + cos(2*pi*20*t) + cos(2*pi*50*t)
Gambar 2.17 Contoh grafik cosine signal, Sumber : Polikar [2].
44
2.9 MATLAB
2.9.1 Pengertian MatLab
MATLAB (Matrix Laboratory) merupakan salah satu bahasa
pemrograman yang dikembangkan oleh MathWorks (Erick P & Yessica
Nataliani, 2007:1-2). Matlab adalah sebuah bahasa pemrograman dengan
unjuk kerja tinggi (high-performance) untuk komputasi teknis, yang
mengintegrasikan komputasi, visualisasi, dan pemrograman di dalam
lingkungan yang mudah penggunaannya dalam memecahkan persoalan
dengan solusinya yang dinyatakan dengan notasi matematik (Erick P &
Yessica Nataliani, 2007:1-2). Awalnya merupakan interface untuk koleksi
rutin-rutin numerik LINPACK dan EISPACK yang menggunakan
FORTRAN. Sekarang menjadi produk komersial Mathworks Inc. yang
menggunakan C++.
Salah satu yang cukup menarik dari MatLab adalah kemudahan dan
kejelasannya dalam memahami contoh dan demo serta help yang ada pada
MatLab. MatLab dapat berlaku seperti bahasa pemrograman C ataupun
pascal yang mempunyai struktur kontrol program. Pemrograman dengan
MatLab memerlukan lebih dari satu baris dan dimungkinkan untuk
didokumentasikan dalam m-file, kontrol program ini digunakan untuk
memperbaiki tampilan yang diinginkan.
Ada beberapa macam kebutuhan yang sering digunakan pada
MatLab diantaranya (Saluky, 2006) :
1) Matematika dan komputasi.
45
2) Pengembangan dan algoritma.
3) Pemrograman modeling, simulasi dan pembuatan prototype.
4) Analisa data, eksplorasi dan visualisasi.
5) Analisa numerik dan statistik.
6) Pengembangan aplikasi teknik.
Untuk mengenal lebih dekat tentang Matrix Laboratory (MatLab)
dapat dilihat pada Gambar 2.15 yang menampilkan ruang kerja MatLab
2008 dengan berbagai tools dan fasilitas yang disediakannya. Sedangkan
gambar 2.16 merupakan menu start aplikasi, yang berisi berbagai macam
pilihan perintah.
Gambar 2.18. Tampilan MatLab [5].
1
3
2
4
5
46
Gambar 2.19 Tampilan Menu Start MatLab [5].
Pada kedua gambar tersebut diatas, bagian yang ditunjuk oleh panah
bernomor adalah bagian dari halaman kerja MatLab dengan fungsi yang
berbeda-beda. Berikut dibawah ini disajikan fungsinya, adalah sebagai
berikut;
Tabel 2.6 Bagian-bagian halaman kerja MatLab 2008 [5].
NO NAMA BAGIAN KETERANGAN
1 MenuBar Berisi daftar menu (perintah) yang umum
digunakan oleh setiap aplikasi berbasis
windows, misalnya : Menu File.
2 Figuras Berisi tampilan output dalam bentuk grafik
3 Command Windows Berisi daftar perintah-perintah yang
dijalankan dan diproses.
4 Command History Berisi hasil ringkasan perintah yang telah
dijalankan dan sedang berjalan/proses.
5 ToolBox Start Merupakan kumpulan dari beberapa menu
aplikasi yang dipakai berdasarkan kegunaan.
5
47
2.9.2 Sekilas Sistem Program MatLab
Sistem MATLAB terdiri dari 5 bagian utama, yaitu :
1. Bahasa (pemrograman) MATLAB
Bagian ini adalah bahasa (pemrograman) tingkat tinggi yang
menggunakan matriks/array dengan pernyataan aliran
kendali program, struktur data, masukan/ keluaran, dan fitur-
fitur pemrograman berorientasi objek.
2. Lingkungan kerja MATLAB
Bagian ini adalah sekumpulan tools dan fasilitas MATLAB
yang digunakan oleh pengguna atau pemrogram. Fasilitas
yang dimaksudkan misalkan untuk mengelola variable di
dalam ruang kerja (workspace) dan melakukan impor dan
ekspor data.
3. Penanganan Grafik
Bagian ini adalah sistem grafik MATLAB, termasuk
perintah-perintah (program) tingkat tinggi untuk visualisasi
data dimensi 2 dan dimensi 3, pengolahan citra, animasi, dan
presentasi grafik.
4. Pustaka (library) fungsi matematis MATLAB
Bagian ini adalah koleksi algoritma komputasi mulai dari
fungsi dasar seperti menjumlahkan (sum), menentukan nilai
sinus (sine), kosinus (cosine), dan aritmatika bilangan
kompleks.
48
5. API (Application Program Interface)
Bagian ini adalah pustaka (library) untuk menuliskan
program dalam bahasa C dan Fortran yang berinteraksi
dengan MATLAB, termasuk fasilitas untuk memanggil rutin
program dari MATLAB (dynamic linking), memanggil
MATLAB sebagai mesin komputasi (computational engine),
dan untuk pembacaan serta penulisan MAT-files. (Marvin,
hal.2-3).
2.9.3 Sintaks MatLab
Untuk mengetahui program dalam MatLab, perhatikan
Gambar dibawah ini yang menampilkan beberapa sintaksis yang
ada didalam pemrograman MatLab.
Gambar 2.17 Commad Windows, (Sumber: Dokumentasi Bagus Ak)
49
Untuk lebih jelasnya, perhatikan sintaksis dari kode program
berikut ini :
>> !dir Volume in drive C has no label. Volume Serial Number is 5C8B-7700 Directory of C:\Documents and Settings\ROOM\MyDocuments\MATLAB 16/10/2009 08:01 <DIR> . 16/10/2009 08:01 <DIR> .. 14/10/2009 13:40 20.147 DemoAnalisisKualitasFrek.fig 14/10/2009 13:36 19.077 DemoAnalisisKualitasFrek.m 20/07/2009 15:17 16.904 hs_err_pid2824.log 14/10/2009 09:55 6.391 simulasi1.fig 14/10/2009 09:55 7.365 simulasi1.m 20/07/2009 15:12 <DIR> slprj 5 File(s) 69.884 bytes 3 Dir(s) 42.065.526.784 bytes free >> >> x=1; y=2, plot(x,y,... 'r.') y = 2 >>
Gambar 2.18 Sintaks program MatLab, (Sumber: Dokumentasi Bagus)
Command perintah pada MatLab hampir sama dengan
perintah pada commad prompt windows, ini bisa dilihat dari
perintah !dir , dimana digunakan untuk menampilkan di direktori
mana file tersebut disimpan dan apa saja yang disimpan di direktori
tersebut.
Syntax :
- ; adalah tanda akhir perintah, suppress output.
50
- , adalah tanda akhir perintah tetapi dilanjutkan , allows
output.
- … adalah memasukkan perintah selanjutnya, tetapi pada
line(baris) berikutnya.
2.10 Perancangan Program
Di dalam penulisan skripsi ini peneliti menggunakan metode
pengembangan sistem System Development Life Cycle (SDLC), diagram
state-transition (STD), flow-chart dan Struktur Navigasi.
2.10.1 System Development Life Cycle (SDLC)
Model pengembangan SDLC sebagai metode pengembangan
sistem. SDLC adalah siklus yang harus di lalui untuk mendisain
dan mengimplementasikan sistem yang baru, SDLC di mulai dari
suatu tahapan sampai tahapan terakhir dan kembali lagi ketahapan
awal membentuk suatu siklus atau daur hidup. Adapun metode
pengembangan SDLC (System Development Life Cycle) mencakup
tahapan sebagai berikut :
Analisa SistemPerancangan
Sistem
Implementasi
Sistem
Operasi dan
Perawatan Sistem
Gambar 2.22 Tahap-tahap SDLC (sumber : Jugiyanto H.M, 2003)
51
Model SDLC digunakan dengan melakukan pendekatan
berorientasi objek terhadap pengembangan sistem yang mencakup
keseluruhan aplikasi sistem yang dibuat dalam mengembangan
perangkat-perangkat lunak.
2.10.2 State-Transition Diagram (STD)
State-transition diagram (STD) adalah sebuah model tingkah
laku yang bertumpu pada definisi dari serangkaian keadaan sistem
dan digambarkan dengan persegi panjang yang merepresentasikan
keadaan sistem dan anak panah yang merepresentasikan transisi
antar keadaan (Pressman, 2002). Gambar 2.20 akan
memperlihatkan contoh diagram state-transition pada software
mesin fotokopi yang telah disederhanakan.
Membaca
perintah
Mengkopi Mengisi Kembali
Kertas
Mendiagnosis
Masalah
jammed
memanggil
Perform problem-diagnosis
full
memanggil read-op-input
not jammed
memanggil
read-op-input
copies done
memanggil read-op-
input
full & start
memanggil manage-copyingidle
memanggil read-op-
input
empty
memanggil reload
paper
Gambar 2.23 State Transition Diagram yang disederhanakan
untuk software foto copy (Sumber: Roger S. Pressman, 2002)
52
Notasi-notasi yang dipergunakan dalam diagram state-
transition (STD) adalah :
1. Keadaan sistem (state) suatu kumpulan dari tingkah laku
yang dapat diobservasi.
2. Perubahan sistem untuk menghubungkan suatu keadaan lain,
digunakan jika sistem memiliki transisi dalam perilakunya.
3. Kondisi dan aksi kondisi (condition) adalah suatu keadaan
pada lingkungan luar (external environment) yang dapat
dideteksi oleh sistem, sedangkan aksi (action) merupakan
reaksi terhadap kondisi bila terjadi perubahan state.
2.10.3 Flow-Chart
Bagan alir program (program flow-chart) adalah suatu
bagan yang menggambarkan arus logika dari data yang akan
diproses dalam suatu program dari awal sampai akhir (Hartono,
2005). Bagan alir program merupakan alat yang berguna bagi
seorang perancang program untuk mempersiapkan program yang
rumit. Bagan alir terdiri dari simbol-simbol yang mewakili fungsi-
fungsi langkah program dan garis alir (flow lines) menunjukkan
urutan dari simbol-simbol yang akan dikerjakan. Jadi, flow-chart
adalah gambaran aliran data suatu program dengan mengunakan
simbol-simbol suatu fungsi yang telah ditentukan.
53
Tabel 2.7. Simbol-simbol Program Flow-Chart Menurut ANSI (American National Standard Institute), (Sumber: Jogiyanto Hartono,
2005)
SIMBOL NAMA FUNGSI
TERMINATOR
Permulaan atau akhir program
GARIS ALIR
(FLOW LINE)
Arah aliran program
PREPARATION
Proses inisialisasi atau pemberian
harga awal
PROSES
Proses perhitungan atau proses
pengolahan data
INPUT/OUTPUT
DATA
Proses input atau output data,
parameter, informasi
PREDEFINED
PROSES
(SUB PROGRAM)
Permulaan sub program atau proses
menjalankan sub program
DECISION
Perbandingan pernyataan,
penyeleksian data yang memberikan
pilihan untuk langkah selanjutnya
ON PAGE
CONNECTOR
Penghubung bagian-bagian flow-
chart yang berada pada satu
halaman
OFF PAGE
CONNECTOR
Penghubung bagian-bagian flow-
chart yang berada pada halaman
berbeda
ANNOTATION
FLAG
Digunakan untuk memberikan
keterangan guna memperjelas
simbol-simbol yang lain
54
Gambar dibawah ini merupakan contoh bagan alir yang
didalamnya terdapat bentuk-bentuk dasar struktur logika.
mulai
for
selesai
ya
tidak
ya
tidak
yatidak
Struktur
Perulangan
FOR
Struktur
Seleksi IF
Struktur
Perulangan
DO-UNTIL
Struktur seleksi
IF-THEN-ELSE
Struktur urut
sederhana
Struktur
Perulangan
DO-WHILE
Gambar 2.24 Contoh Diagram Alir
(Sumber: Jogiyanto Hartono, 2005)
55
2.10.4 Struktur Navigasi
Struktur navigasi adalah struktur alur cerita dari sebuah
program. Sebelum menyatukan semua elemen-elemen yang
digunakan dalam aplikasi multimedia, diharuskan mendefinisikan
objek-objek, dan merancang tampilan agar semua objek yang
berada dalam suatu tampilan tidak menimbulkan kekeliruan
informasi. (Binanto, 2010)
Versi Vaught ada empat macam bentuk dasar dari struktur
navigasi yang biasa digunakan di dalam proses pembuatan aplikasi,
(Binanto, 2010) yaitu :
a. Linier
Merupakan struktur yang hanya mempunyai satu
rangkaian cerita yang berurut. Struktur ini menampilkan satu
demi satu tampilan layar secara berurut sesuai dengan
urutannya. Pada struktur navigasi ini tidak diperkenankan
adanya percabangan. Biasanya struktur ini digunakan untuk
membuat multimedia presentasi karena tidak terlalu menuntut
keinteraksian, tetapi hanya memerlukan keindahan dan
kemudahan menampilkan data sebagai informasi.
b. Hierarkis
Merupakan suatu struktur yang mengandalkan
percabangan untuk menampilkan data. Pada struktur navigasi
ini tidak diperkenankan adanya tampilan secara linier.
56
c. Non-Linier
Merupakan pengembangan dari struktur navigasi
Linier. Pada struktur ini diperkenankan membuat navigasi
bercabang, sehingga pengguna dapat melakukan navigasi
dengan bebas melalui isi aplikasi tidak terkait dengan rute yang
telah ditetapkan sebelumnya.
d. Komposit
Merupakan gabungan dari ketiga struktur sebelumnya
yaitu Linier, Non-Linier, dan Hierarkis. Struktur navigasi ini
juga biasa disebut struktur navigasi bebas. Struktur navigasi ini
banyak digunakan dalam pembuatan aplikasi sebab struktur ini
dapat memberikan ke-interaksian yang lebih tinggi.
57
Gambar 2.25. Empat struktur navigasi pokok yang digunakan dalam aplikasi
(Juhaeri, 2008)
58
2.11 Studi Sejenis.
Studi sejenis maksudnya adalah studi yang sama yang sudah
dilakukan oleh para peneliti dalam hal ini penelitian tentang sampling
frekuensi file audio. Terdapat banyak penelitian yang berdasarkan konsep
sampling frekuensi file audio. Hal ini dilakukan untuk mengetahui
kekurangan dan kelebihan dari penelitian yang sama.
Penelitian yang dilakukan oleh Agfianto Eko Putra (2007) tentang
“Pembuatan Ekualiser 10-Band Stereo Digital dengan Algoritma
Penapis Lolos-pita Tanggap Impuls Tak-hingga (IIR - Infinite
Impulse Response). Penelitian ini dilakukan di Universitas Gadjah Mada
dengan permasalahan yaitu masih kurangnya komponen fungsi yang dapat
mengatur penguatan masing-masing pita frekuensi secara terpisah. Dengan
ekualiser tersebut dapat diubah penguatan pada tingkat frekuensi tertentu,
sehingga dapat ditonjolkan suara bass, trebel maupun vokal dari suatu
sinyal audio. Salah satu teknik dasar yang merupakan komponen utama
dalam pembuatan sebuah ekualiser adalah penapisan. Teknik penapisan
digunakan untuk meloloskan beberapa sinyal tertentu dan memblokade
lainnya.
Penelitian ini bertujuan untuk membuat sebuah aplikasi program
yang diusulkan untuk mempermudah ekualiser yang tentu lebih murah
dengan kualitas yang tidak kalah dari ekualiser secara perangkat keras,
berupa pemutar audio digital yang dilengkapi dengan ekualiser 10 band
kanal frekuensi , meliput pita frekuensi 31 Hz, 62 Hz, 125 Hz, 250 Hz, 500
59
Hz, 1 kHz, 2 kHz, 4 kHz, 8 kHz dan 16 kHz. Tipe berkas yang dapat
dimainkan adalah semua tipe berkas yang dapat dimainkan oleh bass.dll
yaitu : MP3, MP2, MP1, WAV, MO3, IT, XM, S3M, MTM, MOD dan
UMX. Program mempunyai playlist untuk menyimpan daftar judul lagu
yang bisa ditambah atau dikurangi, selain itu program dapat digunakan
untuk menyimpan nilai-nilai pada pita-pita frekuensi dalam ekualiser.
Dalam penelitian yang dilakukan oleh Tri Budi Santoso, et all
(2006) tentang “Implementasi Filter FIR secara Real Time pada TMS
32C5402”. Penelitian ini dilakukan di Laboratorium Sinyal Poltek ITS
dengan permasalahan bagaimana sebuah filter dirancang dengan
menggunakan perangkat lunak Matlab. Tujuan dari penelitian ini adalah
sulitnya proses pembelajaran mata kuliah pengolahan sinyal digital untuk
mencapai keseimbangan antara penyampaian materi di kelas dan penyajian
praktikum menggunakan perangkat keras DSP di laboratorium.
Satu implementasi Filter Digital dengan teknik perancangan FIR
sengaja dipilih sebagai topik pada paper ini karena merupakan materi
kunci dalam materi Pengolah Sinyal Digital. Berawal dari perancangan
FIR Filter menggunakan alat Bantu perangkat lunak Matlab kemudian
koefisien-koefisien respon impulse yang telah diperoleh dimasukkan ke
perangkat lunak DSP Starter Kit untuk dilakukan kompilasi.
Hasil kompilasi berupa kode hexa selanjutnya di downloadkan ke
DSP Card untuk melihat implementasi realnya pada sinyal yang
sebenarnya. Hasil yang diperoleh dari sistem ini menunjukkan
60
karakteristik respon frekuensi yang mendekati dengan rumusan yang ada
pada teori. Dari hasil yang diperolah dalam pengujian sistem diatas
menunjukkan sistem FIR untuk low pass filter (LPF), band pass filter
(BPF), dan high pass filter (HPF) cukup mewakili sistem ideal dan telah
menunjukkan kinerja yang bagus.
Dalam penelitian yang dilakukan oleh Wahyu Kusuma, et all
(2005) tentang “Representasi Nada Sinyal Suara Melodi Senandung
Sebagai Fitur Identifikasi Lagu”. Penelitian ini dilakukan di Universitas
Gunadarma dengan permasalahan bagaimana cara memproses senandung
sehingga mendapatkan representasi fitur lagu yang disenandungkan dalam
bentuk sekuens nada. Penelitian ini bertujuan untuk mengidentifikasi dan
mencari lagu menggunakan senandung sebagai kueri. Sebuah aplikasi
yang berfungsi untuk mengekstraksi sinyal senandung, sehingga
menghasilkan nada yang merepresentasikan senandung tersebut. Data
masukan aplikasi ini menjalani beberapa proses, sebelum akhirnya
menghasilkan nada.
Proses ini antara lain mendeteksi onset senandung tiap nada . Posisi
onset yang diperoleh digunakan untuk mensegmentasi sinyal. Selanjutnya
setiap segmen menjalani proses nada tracking melalui analisis frekuensi
dengan bantuan transformasi fourier dan logika kabur, sehingga akhirnya
diperoleh keluaran berupa sekuens nada. Sekuens nada yang dihasilkan
dari sinyal suara melodi senandung dianalisis dan dicocokkan dengan
61
sinyal audio dari beberapa instrumen musik. Sinyal audio musik dibuat
menggunakan program aplikasi Cakewalk Pro Audio 9.
Dari beberapa penelitian diatas menggunakan beberapa metode dan
teknologi yaitu Algoritma Penapis Lolos-pita Tanggap Impulse Tak-
Hingga (IIR - Infinite Impulse Response), Filter FIR dengan memanfaatkan
DSP Card TMS 32C5400 dalam pengolahan sinyal, deteksi onset yang
berfungsi untuk melacak posisi waktu dimana suatu not mulai berbunyi.
Berdasarkan metode dan teknologi penelitian yang digunakan pada
penelitian diatas belum terdapat metode dan teknologi yang berbasis
deteksi noise dan pemberian proses parameter FIR (Finite Impulse
Response), dimana pada proses pemberian parameter FIR memiliki
keuntungan tersendiri yaitu hasil dari proses deteksi noise kemudian di-
filter/saring kembali sampai noise/ganguan suara yang ada pada file audio
input terdengar jernih, bersih dibandingkan file audio sebelum diproses
dengan aplikasi sampling frekuensi file audio ini. Sehingga bisa
menghindari noise pada file audio yang menyebabkan tidak sampainya
informasi yang terkandung pada file audio.
62
BAB III
METODOLOGI PENELITIAN
Pada penelitian ini, diperlukan data-data yang lengkap sebagai bahan
pendukung kebenaran materi uraian dan pembahasan. Oleh karena itu diperlukan
metodologi pengumpulan data dan metode pengembangan sistem.
3.1 Metode Pengumpulan Data
Penyusunan skripsi ini dilakukan dengan menggunakan beberapa
metode yang dapat mendukung penulisan, baik dalam pengumpulan data
maupun informasi yang diperlukan, untuk mendapatkan kebenaran materi
uraian pembahasan.
Adapun metode pengumpulan data yang digunakan dalam
pembahasan skripsi ini adalah dengan menggunakan :
3.1.1 Metode Studi Pustaka
Metode studi pustaka digunakan dengan membaca dan
mempelajari referensi yang ada, e-book, serta mencari referensi
tambahan dari internet. Buku utama yang digunakan peneliti
yaitu : Pemrograman GUI dengan MATLAB (Sugiharto, 2006),
Cepat Mahir GUI MATLAB disertai Studi Kasus (Paulus, 2007).
63
3.2 Metode Pengembangan Sistem
Dalam sebuah perancangan perangkat lunak diperlukan model-
model proses atau paradigm rekayasa perangkat lunak berdasarkan sifat
aplikasi dan proyeknya, metode dan alat bantu yang dipakai dan kontrol
serta penyampaian yang dibutuhkan. Pressman (2005:79) ada beberapa
proses model diantaranya Sequential linier, Prototype, Rapid Application
Development (RAD), Incremental, Iterative, Spiral, Concurrent,
Component-Based Development, Model Metode Fomral, Aspect Oriented
Development, Unified Process, dan Extreme Programming (XP).
3.2.1 Perbedaan Model Pengembangan Sistem
Untuk menyelesaikan masalah didalam sebuah sistem harus
dilakukan strategi pengembangan yang melingkupi proses, metode, dan
alat bantu serta fase-fase generik. Berikut tabel perbedaan model-model
pengembangan sistem.
Tabel 3.1 Perbedaan Pengembangan Sistem
Metode Kelebihan Kekurangan Penggunaan
secara umum
Sequential Linier
(Waterfall) oleh
Winston W. Royce
(1929-1995) pada
tahun 1970
Metode ini baik
digunakan untuk
kebutuhan yang
sudah diketahui
dengan baik.
Iterasi yang sering
terjadi
menyebabkan
masalah baru.
Bagi pelanggan
sulit menentukan
kebutuhan secara
eksplisit dan
harus bersabar
Waterfall bekerja
dengan baik pada
proyek skala kecil.
64
karena memakan
waktu yang lama.
Prototype oleh
Eleanor Rosch
(1938-N) pada tahun
1970
Metode ini
cukup efektif
dengan
mendapatkan
kebutuhan dan
aturan yang jelas
dan pelanggan
bisa langsung
melihat sistem
yang
sebenarnya.
Pengembangan
kadang-kadang
membuat
implementasi
sembarangan,
karena ingin
working version
selesai dengan
cepat.
Prototyping dapat
bekerja dengan
baik jika kerja
sama yang baik
antara pengembang
dan pelanggan.
Rapid Application
Development
(RAD) oleh James
Martin (1933-N)
pada tahun 1991
Metode ini lebih
cepat dari
waterfall jika
kebutuhan dan
batasan proyek
sudah diketahui
dengan baik,
bisa untuk
dimodularisasi.
Karena proyek
dipecah menjadi
beberapa bagian,
maka dibutuhkan
banyak orang
untuk membentuk
suatu tim karena
komponen-
komponen yang
sudah ada,
fasilitas-fasilitas
pada tiap
komponen belum
tentu digunakan
seluruhnya
sehingga fasilitas
program bisa
menurun.
RAD cocok untuk
aplikasi yang tidak
mempunyai resiko
teknis yang tinggi.
RAD cocok untuk
proyek yang
memiliki SDM
yang baik dan
sudah
berpengalaman.
Incremental oleh
Schlimmer, et all.
Pada tahun 1986
Fleksibel dan
mudah untuk
dikelola dan
pengujiannya
mudah.
Semua kebutuhan
tidak
dikumpulkan pada
tahap awal
sehingga
menimbulkan
masalah serta sulit
untuk mengukur
progress karena
tidak ada
milestone.
Cocok untuk
aplikasi yang
kebutuhan telah di-
identifikasi dengan
baik.
65
Iterative
Fase desain
pengkodean dan
pengujian lebih
cepat.
Butuh waktu yang
banyak untuk
menganalisis dan
terlalu banyak
langkah yang
dibutuhkan
model.
Hanya cocok untuk
skala besar.
Spiral oleh Barry
W. Boehm (1933-
N) pada tahun 1986
Model ini
digunakan untuk
sistem skala
besar,
membutuhkan
konsiderasi
langsung
terhadap resiko
teknis, sehingga
dapat
mengurangi
resiko besar.
Resiko utama
tidak ditemukan,
maka masalah
bisa timbul
kemudian
sehingga
membutuhkan
managemen dan
perkiraan resiko
(risk assessment)
yang cukup
tinggi.
Hanya cocok untuk
software skala
besar.
Concurrent oleh
C.A.R. Hoare, et
all pada tahun 1960
Peningkatan
aplikasi yang
sudah selesai
pada umumnya
satu periode.
Sangat
memperhatikan
pada input-
output dari
aplikasi. Dapat
dieksekusi
secara pararel.
Tidak bisa
mendeteksi error
pada sub-program
(fungsi-fungsi
program).
Membutuhkan
waktu lama.
Cocok untuk
aplikasi yang
membutuhkan
ketelitian dalam
proses input-output
program.
Component-Based
Development oleh
Malcolm Douglas
Mcllroy (1932-N)
pada tahun 1998
Komponen-
komponen
program
dijadikan satu
set paket
sehingga dapat
memudahkan
para
pengembang
dalam
Cukup
menyulitkan
dalam membuat
paket-paket
program yang
dibutuhkan dalam
mengembangkan
aplikasi.
Baik digunakan
untuk aplikasi yang
banyak
menggunakan
program-program
yang pernah dibuat.
66
pengkodeaan
dan penggunaan
kembali kode
program
tersebut.
Model Metode
Fomral
Sistem
diekspresikan
dengan teori
matematika
sehingga mudah
di pahami.
Sulit di pahami
bagi orang yang
tidak mengerti
ekspresi
matematika dan
logikanya.
Baik digunakan
untuk
pengembangan
aplikasi
matematika atau
perhitungan.
Aspect Oriented
Software
Development oleh
Gregor Kiczales et
all.
Mendukung
modularisasi
perhatiannya
sejak dari
pembuatan kode
program.
Waktu pengerjaan
kode program
akan lebih lama
karena lebih
memperhatikan
modul-modul
program yang
tersusun rapi.
Baik digunakan
untuk proyek skala
besar. Aplikasi
yang berbasis
object oriented.
Unified Process
oleh Ivar Hjalmar
Jacobson et all
(1939-N) pada tahun
1990
Team proyek
fokus pada
alamat yang
memiliki banyak
resiko paling
tinggi lebih
awal. Sehingga
dapat
meminimalisir
resiko pada saat
aplikasi sudah
jadi.
Waktu pengerjaan
proyek lebih lama
karena
menggabungkan
konsep iterative
dan incremental.
Baik digunakan
untuk aplikasi yang
dibuat berbasis
object oriented
dengan notasi
rational rose.
Extreme
Programming (XP)
oleh Kent Beck
(1943-N) pada tahun
1999
Peningkatan
kualitas
software dan
memfokuskan
pada perubahan-
perubahan yang
diminta oleh
pelanggan.
Para pengembang
tidak bisa
mengembangkan
kualitas software
karena tidak ada
feedback dari
pelanggan.
Baik untuk
software yang
sudah ada tetapi
masih dibutuhkan
pengembangan
kualitas karena
kebutuhan-
kebutuhan dari
pelanggan.
67
3.2.2 Pemilihan Model Pengembangan Sistem
Model waterfall biasa disebut juga dengan The Classic Life Cycle,
menyarankan sistematik, pendekatan berurutan untuk pengembangan
software yang memulai dengan spesifikasi pelanggan terhadap syarat-
syarat dan perkembangan melewati planning, modeling, construction, dan
deployment menaik dalam mendukung terhadap kelengkapan software
(Pressman 2005:79).
Dalam penelitian ini penulis menggunakan model waterfall
karena dalam model waterfall pengembangan perangkat lunak disusun
secara berurutan dimana hal ini akan memudahkan penulis dalam
pembuatan perangkat lunak sehingga model waterfall tepat untuk
digunakan karena tahap-tahapnya jelas dan berurutan dan yang lebih
penting adalah perangkat lunak yang dikembangkan oleh penulis tidak
terlalu kompleks atau kecil. Dan berikut ini merupakan gambar dari model
waterfall.
Communication
Project initiation
Requirement
Gathering
Planning
Estimating
Schedjuling
Tracking
Modeling
Analisys
Design Construction
Code
Test Develoyment
Delivery
Support
Feedback
Gambar 3.1 Model Waterfall
68
1. Komunikasi (Communication)
Tahapan pertama untuk mengembangkan perangkat lunak pada
model waterfall adalah komunikasi, komunikasi ini merupakan
pembicaraan awal antara pengembangan perangkat lunak dan
pelanggan. Dalam tahap komunikasi ini ada beberapa point yang
perlu di perhatikan yaitu :
a. Nama projek (Project Initiation)
Pembicaraan awal mengenai pembuatan suatu perangkat lunak
harus dilakukan karena menentukan perangkat lunak apa yang akan
dibuat. Pada penulisan skripsi ini penulis telah menentukan
perangkat lunak apa yang akan dibuat untuk penelitian ini. Perangkat
lunak yang akan dikembangkan dalam penelitian ini adalah
perangkat lunak sampling frekuensi file audio.
b. Syarat-syarat atau kebutuhan (Requirement)
Telah disebutkan diatas nama perangkat lunak yang akan
dibuat adalah perangkat lunak sampling frekuensi file audio.
Langkah selanjutnya dalam bagian dari komunikasi ini adalah
mendefinisikan syarat-syarat atau kebutuhan-kebutuhan yang
dibutuhkan dalam pengembangan perangkat lunak ini. Dalam
penelitian ini penulis mendefinisikan kebutuhan berdasarkan studi
pustaka dan studi literatur.
69
c. Pengumpulan (Gathering)
Pengumpulan (gathering) merupakan langkah berikutnya dari
bagian komunikasi atau pembicaraan awal, pengumpulan ini
maksudnya adalah mengumpulkan semua syarat-syarat atau
keperluan-keperluan yang telah dijelaskan oleh pelanggan.
Pengumpulan data-data yang di perlukan dalam proses
pengembangan perangkat lunak sampling frekuensi file audio
penting adanya karena dapat dijadikan informasi penting dalam
pembuatan perangkat lunak sampling frekuensi file audio dan
nantinya perangkat lunak akan sesuai dengan keinginan pelanggan.
2. Perencanaan (Planning)
Perencanaan (planning) merupakan langkah perencanaan pembuatan
perangkat lunak, perencanaan dalam pembuatan perangkat lunak meliputi
perkiraan (estimating), penjadwalan (schedjuling), dan perjalanan
(tracking).
a. Perkiraan (estimating)
Perkiraan merupakan langkah awal dari perencanaan
pembuatan perangkat lunak sampling frekuensi file audio, perkiraan
pembuatan perangkat lunak yang dilakukan untuk mengetahui kira-
kira terselesaikan berapa bulan dalam pembuatan perangkat lunak
ini. Tetapi pada kenyataannya penelitian selalu tidak sesuai dengan
perkiraan yang sudah di tetapkan.
70
b. Penjadwalan (schedjuling)
Proses selanjutnya dari bagian planning adalah penjadwalan
disini merupakan penentuan waktu dari masing-masing tahapan yang
ada dalam model waterfall, maksudnya adalah memberikan waktu
dan batas akhir dari semua kegiatan yang ada dalam pengembangan
perangkat lunak ini.
c. Perjalanan (tracking)
Perjalanan (tracking) disini merupakan penjajakan tahapan
demi tahapan berurutan dari tahap awal sampai dengan tahap akhir
dari model waterfall ini. Pembuatan perangkat lunak dalam
penelitian ini dilakukan tahap demi tahap dari mulai tahap awal
dilalui dan sampai pada tahap akhir.
3. Pemodelan (Modeling)
Pemodelan (modeling) merupakan langkah ketiga dari model
waterfall, pemodelan ini untuk memodelkan semua syarat-syarat atau
kebutuhan yang ada pada tahap komunikasi dan dilakukan sesuai apa yang
telah direncanakan. Terdapat dua bagian dalam pemodelan ini yaitu
analisis (analisys) dan perancangan (design).
a. Analisis (Analisys)
Dalam memodelkan perangkat lunak samping frekuensi file
audio perlu dilakukan analisis syarat-syarat atau kebutuhan-
71
kebutuhan baik itu input, proses maupun output yang telah
dijelaskan oleh pelanggan. Analisis ini dilakukan guna pembuatan
sistem yang ada pada perangkat lunak berjalan sesuai apa yang
diinginkan. Dalam pembuatan perangkat lunak sampling frekuensi
file audio ini dilakukan analisis sistem usulan. Analisis sistem usulan
merupakan analisis untuk mengetahui syarat-syarat atau kebutuhan
apa yang ada pada sistem usulan nanti.
b. Perancangan (Design)
Perancangan (Design) merupakan bagian dari pemodelan,
perancangan sampling frekuensi file audio meliputi perancangan
proses dan perancangan tampilan antar-muka. Hal ini dilakukan
untuk memudahkan dalam pembuatan kode program.
4. Pembuatan (Construction)
Pembuatan (construction) merupakan tahap pengalihan dari
perancangan ke dalam bahasa pemrograman. Bahasa pemrograman yang
digunakan dalam penelitian ini adalah MatLab dan MATLAB Compiler
Runtime (MCR). Dalam pembuatan perangkat lunak sampling frekuensi
file audio meliputi dua aspek yaitu kode (coding) dan test (testing).
72
a. Kode (Coding)
Kode merupakan tahapan ke-empat dari model proses
waterfall. Pengkodean merupakan kegiatan pengalihan dari tahap
analisis dan perancangan kedalam bentuk bahasa pemrograman
dalam hal ini bahasa pemrograman yang dipakai MatLab dan
MATLAB Compiler Runtime (MCR).
b. Test (Testing)
Test (testing) atau pengujian merupakan kegiatan yang
menguji kode program yang sudah dibuat apakah berjalan sesuai
dengan keinginan atau tidak, ada beberapa bentuk pengujian yaitu
white box testing dan black box testing. White box testing merupakan
pengujian yang dilakukan dengan cara menguji masing-masing
fungsi dan memastikan apakah fungsi-fungsi atau modul-modul
tersebut sesuai yang diinginkan atau belum, sedangkan black box
testing adalah pengujian yang dilakukan setalah semua fungsi-fungsi
atau modul-modul program dijadikan satu bagian yang membentuk
suatu perangkat lunak yaitu perangkat lunak sampling frekuensi file
audio. Dalam penelitian ini penulis melakukan pengujian dengan
cara black box testing untuk memastikan apakah perangk lunak yang
dibuat sudah berjalan sesuai harapan atau tidak.
73
5. Penyebaran (Deployment).
Penyebaran (deployment) merupakan tahapan paling akhir dari
model waterfall. Penyebaran dilakukan setelah perangkat lunak sudah diuji
coba dan siap untuk dipakai oleh pelanggan. Penyebaran pada model
waterfall meliputi pengiriman (Delivery), utility pendukung (Support),
umpan balik (Feedback). Dalam penelitian perangkat lunak sampling
frekuensi file audio ini penulis hanya sampai pada tahapan konstruksi
(construction) karena penelitian ini dilakukan bukan untuk diproduksi atau
digunakan langsung oleh pelanggan akan tetapi hanya untuk penelitian
studi dalam hal ini skripsi.
3.3 Justifikasi Pemilihan Metode Pengembangan Sistem SDLC
Penelitian pada penulisan tugas akhir ini memilih metode SDLC
(System Development Life-Cycle) dalam melakukan pembuatan aplikasi.
Alasan pemilihan metode pengembangan sistem SDLC adalah metode
SDLC memiliki tahapan yang mewakilkan dari pembuatan suatu aplikasi,
serta efisien dalam pelaksanaannya didalam pengembangan sistem.
3.4 Perangkat penelitian
Penelitian pada penulisan tugas akhir ini menggunakan perangkat
keras dan perangkat lunak/software yang spesifikasinya sebagai berikut :
74
3.4.1 Perangkat Keras
Pada penelitian ini perangkat keras menggunakan notebook yang
spesifikasinya sebagai berikut :
1. Processor AMD Turion™ X2 Dual Core Mobile RM-70 2.0
GHz.
2. Harddisk 160 GB.
3. Memory 1 GB.
4. Monitor dengan resolusi 1280x800 pixel.
5. CD RW.
3.4.2 Perangkat Lunak
Pada penulisan penelitian ini penulis menggunkan perangkat lunak
yang terdiri dari :
1. MatLab R2008.
2. Microsoft Visio 2007.
3. MATLAB Compiler Runtime (MCR).
4. Adobe Photoshop Portable.
Ilustrasi metodologi penelitian yang dilakukan dalam pembuatan
aplikasi sampling frekuensi file audio ini dapat dilihat pada gambar 3.3.
75
Metode
Pengumpulan Data
Ruang Lingkup pada Sistem
Tujuan :
Membuat Sebuah Aplikasi Sampling
Frekuensi File Audio menggunakan Metode
FIR (Finite Impulse Response) untuk
memberikan salah satu solusi dalam mengatasi
masalah noiseAnalisa Sistem
Perancangan Sistem
Implementasi
Operasi dan Perawatan
Sistem
Aplikasi Sampling
Frekuensi File Audio
menggunakan Metote FIR
(Finite Impulse Response)
Perancangan
Proses
Perancangan
Antar Muka
Flowchart
State
Transition
Diagram
Tahap Pengkodean
Pengujian
Analisa Hasil
Pengujian
Gambar 3.3 Ilustrasi Metodologi Penelitian Pembuatan Aplikasi Sampling Frekuensi File Audio.
76
BAB IV
PEMBAHASAN DAN IMPLEMENTASI
Pengembangan sistem terdiri atas tahap analisa sistem, perancangan
sistem, implementasi sistem, operasi dan perawatan sistem. Tahap ini dilakukan
untuk mengetahui apa saja syarat-syarat dan kebutuhan yang diperlukan dalam
pembuatan aplikasi untuk memenuhi tujuan dari pembuatan aplikasi ini.
4.1 Analisa Sistem
Pada tahap ini dilakukan suatu perbandingan dari beberapa aplikasi
sampling frekuensi yang sudah ada. Perbandingan dilakukan untuk
mengidentifikasikan tujuan-tujuan aplikasi serta mengetahui syarat-syarat
informasi yang ditimbulkan dari tujuan-tujuan tersebut. Aplikasi sampling
frekuensi yang akan dibuat adalah aplikasi sampling frekuensi file audio yang
menggunakan metode filter Finite Impulse Response.
4.1.1 Tujuan
Tujuan dari perancangan ini telah dijelaskan sebelumnya, dimana
peneliti bertujuan untuk membuat suatu aplikasi sampling frekuensi file
audio yang mengimplementasikan metode filter Finite Impulse Response,
diantaranya yaitu :
77
1) Membuat suatu grafik output kualitas sampling frekuensi dengan
mendeteksi noise dan mengunakan metode filter FIR (Finite
Impulse Response) pada file audio yang berekstensi WAV.
2) Untuk menganalisis perubahan kualitas informasi sinyal frekuensi
audio berdasarkan sampling dari suara yang didapat dan besarnya
ganguan (noise) pada file audio setelah melalui proses
penyaringan/filter.
4.1.2 Ruang Lingkup pada Sistem
Ruang lingkup pada sistem disini untuk mencapai tujuan dalam
pengembangan aplikasi Sampling Frekuensi File Audio, dengan
menggunakan bahasa pemrograman MatLab versi R2008A.
Bahasa pemrograman MatLab adalah bahasa pemrograman yang
mampu untuk menampilkan GUI (Grafik User Interface), baik itu
tampilan yang berbentuk 2D maupun 3D. Bahasa pemrograman ini
didesain untuk memberikan kemudahan kepada para pengguna (user).
Spesifikasi perangkat lunak dan perangkat keras yang digunakan
peneliti dalam perancangan aplikasi ini adalah sebagai berikut :
Perangkat Lunak :
1. MatLab R2008
2. Microsoft Visio 2007
3. Adobe Photoshop Portable
4. MATLAB Compiler Runtime (MCR).
78
Perangkat Keras :
1. Processor AMD Turion™ X2 Dual Core Mobile RM-70 2.0 GHz
2. Harddisk 160 GB
3. Memory 1 GB
4. Monitor dengan resolusi 1280x800 pixel
5. CD RW
4.2 Perancangan Sistem (System Design)
Pada tahap ini dilakukan perancangan, evaluasi, dan perbaikan sistem
sesuai dengan kebutuhan agar sistem yang sedang dibuat dapat dimanfaatkan
secara optimal.
4.2.1 Perancangan Proses
4.2.1.1 Perancangan Sistem Aplikasi Deteksi Noise dan Parameter
Proses FIR
Aplikasi ini menggunakan kombinasi dari deteksi noise
dan parameter FIR (Finite Impulse Response). Penggunaan
parameter filter FIR untuk aplikasi ini karena filter FIR mudah
dibuat dengan koefisien pada matrik, mudah untuk
diimplementasikan, dan dapat dirancang untuk fasa tunggal
yang akan mencegah distorsi. Sebuah sampling frekuensi
menghasilkan sebuah filter berdasarkan respon frekuensi yang
79
diinginkan. Diberikan sebuah matriks dari point yang
mendefinisikan bentuk respon frekuensi.
Pada proses deteksi noise, noise disisipkan di audio
sampling. Dimana didalamnya terdapat random noise dan
constant pitch noise. Kedua noise ini berfungsi untuk merubah
baik secara acak maupun tetap nilai time dan frekuensi dari
audio sample yang di input dari file wav.
Tahap selanjutnya adalah pemrosesan dengan
parameter Filter FIR (Finite Impulse Response). Proses
didalam FIR ini terdapat nilai-nilai awal pem-filteran, dB
Down audio sample adalah konstanta audio, dan interval First
Zero adalah intervalnya. Nilai ini bisa kita ubah untuk melihat
se-signifikan apa audio sample yang telah di deteksi oleh
noise. Kemudian output di tampilkan dalam bentuk grafis time
dan frekuensi dari audio sample-nya.
Deteksi Noise
Input File Audio (WAV)
Deteksi Noise
Random Noise Constant Pitch Noise
Output deteksi noise 1(WAV)
Parameter FIR
Output deteksi noise 1 (WAV)
Filter dB Down Interval First Zero
Output parameter FIR 2 (MP3)
simpan / SAVE (MP3)
Gambar 4.1 Proses aplikasi Deteksi Noise dan Parameter FIR
80
4.2.1.2 Flow-chart Aplikasi Deteksi Noise dan Parameter Proses
FIR
Pada tahapan ini akan digambarkan alur proses deteksi
audio noise dan proses FIR (Finite Impulse Response) dengan
menggunakan Flow-chart.
Input File Audio
WAV
YaIf (null)
Tidak
Start
1
Error Input
Input Deteksi
Noise
If (null)
If (null)
Ya Error Input
Tidak
Input Parameter
Proses FIR
Ya Error Input
Panggil ( gui_Singleton = 1; )
Tidak
Gambar 4.2 Flow-chart Proses Deteksi Noise untuk parameter FIR
Gambar 4.2 menjelaskan informasi apa saja yang harus
di input untuk memulai proses deteksi noise dan parameter
FIR. Informasi harus lengkap, apabila tidak lengkap maka akan
81
muncul error input untuk mengingatkannya. Setelah semua
informasi terisi lengkap program akan memanggil
gui_Singleton(1) untuk menjalankan deteksi noise. Kemudian
setelah semua tahap dijalankan, maka program akan
memanggil parameter FIR(2) untuk mereduksi noise yang
telah disisipkan ke dalam audio sampling. Disini hasil dari
outputnya dapat di play untuk didengarkan perbedaannya dari
sebelum proses reduksi noise, dan menyimpan hasil output-nya
dalam bentuk format MP3.
Hal ini digambarkan oleh Gambar 4.3 dibawah ini,
82
1
global x ( gui_Singleton = 1; )
global fs
f2 = fs/2*linspace(0,1,NFFT2/2);
fnew2 = 20*log10(abs(Y2(1:length(f2))));
fnew2(1:(length(fnew2)/2))=0;
q1=ifft(Y2,NFFT2);
q2=abs(q1);
q3=max(q2);
q4=q2/q3;
pin=str2double(get(handles.freqn,'String'));
cpnoise =0.1* cos(2*pi*pin*(0:length(x)-1)/fs)';
if (get(handles.radiobutton1,'Value') == get(hObject,'Max'))
u = u + q5';
global q5
q5=0.1*(real(q4(1:length(x))));
global x
white = 0.1*rand(1,(length(x)));
NFFT2 = 2^nextpow2(length(white));
Y2=fft(white,NFFT2);
if (get(handles.radiobutton2,'Value') == get(hObject,'Max'))
u = u + cpnoise;
Panggil Parameter FIR
Ya
Tidak
Ya
2
2
Read file audio, time dan
frequenzy
Proses FIR
Sample file audio >=
Lenght (x)Pesan Error
End
Tidak
Ambil time dan frequenzy dari
audio sample
Masukkan noise ke audio
sample
Play hasilnya ke Output file
Simpan file di lokasi yang telah
ditentukan
End
Gambar 4.3 Flow-chart Proses Deteksi noise dengan random noise, constant picth
noise di Sebelah Kiri dan Flow-chart Proses dengan menggunakan
parameter FIR di Sebelah Kanan.
83
4.2.2 Perancangan Antar Muka
Dalam perancangan antarmuka aplikasi sampling frekuensi file
audio, dibuat beberapa halaman tampilan yang akan ditampilan.
4.2.2.1 Perancangan Halaman Tampilan
Halaman tampilan merupakan tampilan utama dalam
program sampling frekuensi audio, yang didalamnya terdapat 7
buah tombol sebagai berikut :
1. Tombol Cari File : berfungsi untuk mencari file lokasi media
penampung.
2. Tombol Play Original File : berfungsi untuk memainkan file
audio sebelum diberikan noise.
3. Tombol Proses : berfungsi untuk memproses file audio
setelah diberikan parameter deteksi noise.
4. Tombol Play Noise File : berfungsi untuk memainkan file
audio setelah ditambahkan beberapa noise.
5. Tombol Play Reduction File : berfungsi untuk memainkan
file audio yang telah dihilangkan noise nya setelah
memasukan nilai parameter.
6. Tombol Save/Simpan : berfungsi untuk menyimpan file
audio hasil output dalam bentuk format MP3.
7. Tombol Keluar : berfungsi untuk keluar dari aplikasi.
84
Gambar 4.4 Rancangan Halaman Tampilan
File Wav
SAMPLING FREKUENSI FILE AUDIO
Informasi File
Nama File :
Cari File..
GRAFIK Frekuensi
Pilih Type Deteksi Noise
Radio Button1
Radio Button2
In Hertz
Parameter Proses FIR
Filter
db Down
First Zero
footer langkah-langkah penggunaan
pitch
Play Original..
Proses
4
3000
40
Grafik File Audio Setelah Proses
Deteksi Noise
Grafik File WAV Dengan Proses
Filter FIR
Grafik File Audio Setelah Noise
diperkecil (Penyaringan Parameter
Proses)
Tools
GRAFIK
terhadap
Time (s)
GRAFIK
terhadap
Frequenzy (Hz)
GRAFIK terhadap Frequenzy (Hz)
GRAFIK
terhadap
Time
(s)
GRAFIK
terhadap
Frequenzy
(Hz)
Play Noise Play Reduction Save Exit
85
Berikut gambaran State Transition Diagram Halaman Tampilan :
H
a
l
a
m
a
n
T
a
m
p
i
l
a
n
Silahkan Pilih File Audio .WAV Cari File Klik
Open Klik
Cancel Klik
Play Original File Klik
Window Grafik File Audio Setelah
Proses Deteksi Noise
Time (s) dan Frequenzy (Hz)
Window Grafik Informasi File
Halaman Tutup Exit Klik
Save Klik Window Save File Audio .MP3
Save Klik
Cancel Klik
Pilih Type Deteksi Noise Klik
Constant Pitch Noise Klik
OK Klik
Random Noise Klik
Proses Klik
Window Grafik File WAV dengan
Proses Filter FIR
Frequenzy (Hz)
Window Grafik File Audio Setelah
Noise diperkecil (Penyaringan
Parameter Proses FIR)
Time (s) dan Frequenzy (Hz)
Play Noise File Klik
Play Noise Reduction File Klik
Gambar 4.5 State Trantition Diagram Halaman Tampilan
86
Mulai
Menu
Halaman
Tampilan
Pilih Menu
Pilih
Cari File .WAV
Pilih
Play Original
File
Pilih Type
Deteksi Noise
Pilih
Parameter
Proses
Pilih
Play Noise
Pilih
Play Reduction
File
Pilih
Keluar
Keluar
Tampilan Pencarian File .WAV
Tampilkan Grafik Frekuensi dan Suara
Original File
Tampilkan Grafik File Setelah Proses
Deteksi Noise
Tampilkan Grafik File Wav dengan
Proses Filter FIR
Isikan Parameternya
interval : First Zero
1000 – 3000, dst
Isikan Parameternya
Random Noise atau
Constant Pitch Noise
Tampilkan Grafik File Audio Setelah
Noise diperkecil
Tampilkan Suara Noise File
Tampilkan Penghilangan Suara Noise
File
Pilih
Save/SimpanTampilan Save File dalam format .MP3
Gambar 4.6 Flow-chart Halaman Tampilan
87
Gambar 4.7 Bentuk Rancangan Halaman Tampilan dalam Matlab
88
4.2.2.2 Perancangan UiPanel Informasi, Play Original File dan Button
Cari File
UiPanel ini dilengkapi dengan dua buah tombol dan satu
buah axes grafis, yaitu :
1. Tombol Cari File : berfungsi untuk mencari file audio yang
berada didalam direktori media audio.
2. Tombol Play Original File : berfungsi untuk mendengarkan
suara file audio aslinya sebelum proses deteksi noise.
3. Axes Grafis : berfungsi untuk menampilkan grafik frekuensi
file audio.
Gambar 4.8 Rancangan Button Cari File, Informasi dan Play
Original File Audio
89
Gambar 4.9 Tampilan jika user mengklik Cari File pada tombol Button.
4.2.2.3 Perancangan Radio Button Type Deteksi Noise
Panel ini berfungsi untuk memilih type deteksi noise pada
proses analisis kualitas frekuensi. Panel ini dilengkapi dengan
dua buah radio button, yaitu :
1. Random Noise : berfungsi untuk memetakan secara acak
audio noise yang akan di proses.
2. Constant Pitch Noise : berfungsi untuk memetakan secara
konstan/tetap audio noise yang di proses.
90
Gambar 4.10 Rancangan Radio Button Type Deteksi Noise
4.2.2.4 Perancangan UiPanel Parameter Proses
Panel ini berfungsi untuk proses analisis kualitas frekuensi
setelah mengganti nilai dari Filter, dB Down dan First Zero.
Panel ini dilengkapi dengan satu buah tombol proses.
1. Tombol Proses : berfungsi untuk menampilkan hasil dari
nilai yang di input pada order filter, dB Down dan First
Zero.
Gambar 4.11 Rancangan UiPanel Parameter Proses
4.2.2.5 Perancangan axes Time (s) dan axes Frequenzy (Hz) pada Proses
Deteksi Noise
Panel ini dilengkapi dengan dua buah axes grafis, yaitu :
1. Axes Time (s) : berfungsi untuk menampilkan grafik audio
berdasarkan waktu/Time.
2. Axes Frequenzy (Hz) : berfungsi untuk menampilkan grafis
audio berdasarkan frekuensinya.
91
Gambar 4.12 Rancangan axes Time (s) dan axes Frequenzy (Hz) pada proses
deteksi noise.
4.2.2.6 Perancangan axes Frequenzy (Hz) pada proses FIR
Panel ini dilengkapi dengan satu buah axes grafis, yaitu :
1. Axes Frequenzy : berfungsi untuk menampilkan grafik audio
pada proses FIR.
Gambar 4.13 Rancangan axes Frequenzy (Hz) pada proses FIR
4.2.2.7 Perancangan axes Time (s) dan axes Frequenzy (Hz) pada
penyaringan Parameter Proses
Panel ini dilengkapi dengan dua buah axes grafis, yaitu :
1. Axes Time : berfungsi untuk menampilkan grafik audio
waktu pada proses penyaringan parameter.
92
2. Axes Frequenzy : berfungsi untuk menampilkan grafik audio
frekuensi.
Gambar 4.14 Rancangan axes Time (s) dan axes Frequenzy (Hz) pada penyaringan
Parameter Proses
4.2.2.8 Perancangan Button Play Noise File, Play Noise Reduction File,
Save/Simpan, Exit
Panel ini dilengkapi dengan empat buah tombol, yaitu :
1. Tombol Play Noise File : berfungsi untuk mendengarkan file
audio yang telah diberikan noise.
2. Tombol Play Noise Reduction File : berfungsi untuk
mendengarkan file audio yang noise nya telah direduksi.
3. Tombol Save/Simpan : berfungsi untuk menyimpan hasil
output file audio dalam format MP3.
4. Tombol Exit : berfungsi untuk keluar dari aplikasi.
Gambar 4.15 Rancangan Button Play Noise File, Play Reduction File, Save/Simpan, Exit.
93
Jika user mengklik Play Noise File, maka akan di
dengarkan suara file audio yang disisipkan noise.
Jika user mengklik Play Noise Reduction File, maka akan
didengar suara file audio yang telah di reduksi/dihilangkan suara
noise- nya.
Jika user mengklik Save / Simpan, maka file hasil pem-
filteran akan di simpan dalam format MP3.
Jika user mengklik Exit, maka user akan keluar dari
aplikasi sampling frekuensi file audio.
Gambar 4.16 Menyimpan Hasil Output Sampling Frekuensi dalam format MP3.
94
Gambar 4.17 Konfirmasi apabila user memilih menu Exit.
4.3 Implementasi Sistem
Pada tahap ini, dilakukan pengkodean terhadap rancangan-rancangan
yang telah didefinisikan sebelumnya dengan menggunakan bahasa pemrograman
MatLab. Dalam melakukan penelitian, adobe photoshop portable digunakan
untuk mendesain user interface sederhana sebelum dibuat didalam MatLab
figure. Kode sumber / source code yang peneliti rancang menggunakan
perangkat lunak MatLab, Simulink MatLab 2008, dan sebagian kode peneliti
mendapatkannya di http://www.codeproject.com.
Aplikasi ini dibuat dengan memanfaatkan guidata, function dan global
yang sudah tersedia. Guidata yang digunakan adalah guidata deteksi noise audio
yang terdapat pada interpreter MatLab yang digunakan. Pemanfaatan guidata
tersebut ditunjukkan pada potongan kode sumber berikut ini :
gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @wavreduction_OpeningFcn, ... 'gui_OutputFcn', @wavreduction_OutputFcn, ... 'gui_LayoutFcn', [] , ... 'gui_Callback', []);
95
Sedangkan function dan global yang digunakan untuk membangun
aplikasi adalah function deteksi noise dan global parameter Filter FIR.
Penggunaan fungsi tersebut ditunjukkan dengan potongan kode sumber berikut :
function varargout = wavreduction_OutputFcn(hObject, eventdata,
handles) varargout{1} = handles.output;
function pushbutton1_Callback(hObject, eventdata, handles) canvas=guidata(gcbo); clear global; refresh; delete projectnoise.wav; delete projectfinal.wav; delete tmp638.wav; global FileName global PathName
global x global fs [x,fs]=wavread(fullfile(PathName, FileName)); set(canvas.text4,'String', FileName); global t3 t3=(0:length(x)-1)/fs;
Function deteksi noise audio dan global parameter Filter FIR yang lain,
dapat dilihat selengkapnya didalam kode sumber (source code) pada lampiran B.
Spesifikasi perangkat lunak dan perangkat keras yang digunakan peneliti
dalam perancangan aplikasi ini adalah sebagai berikut :
Perangkat Lunak :
1. MatLab R2008
2. Microsoft Visio 2007
3. Adobe Photoshop Portable
4. MATLAB Compiler Runtime (MCR).
96
Perangkat Keras :
1. Processor AMD Turion™ X2 Dual Core Mobile RM-70 2.0 GHz
2. Harddisk 160 GB
3. Memory 1 GB
4. Monitor dengan resolusi 1280x800 pixel
5. CD RW
4.4 Operasi dan Perawatan Sistem
Pengujian yang dilakukan terhadap aplikasi sampling frekuensi file
audio ini adalah pengujian dengan metode blackbox. Pengujian dilakukan
dengan menjalankan semua fungsi dan fitur yang ada dari aplikasi ini dan
kemudian dilihat apakah hasil dari fungsi-fungsi tersebut sesuai dengan yang
diharapkan. Aplikasi dijalankan melalui program running MatLab di komputer
stand alone dan user mencoba melakukan proses deteksi noise dan proses
parameter FIR.
4.4.1 Persiapan Running Program MatLab
Pada implementasi ini, peneliti melakukan setting pada komputer
yang sudah terdapat program MatLab-nya, kemudian mencari sumber
folder MatLab yang didalamnya terdapat aplikasi ini. User dapat
langsung menggunakan aplikasi sampling frekuensi file audio ini tanpa
perlu menginstal aplikasi terlebih dahulu dan dijalankan secara stand
alone pada program Running GUI MatLab.
97
4.4.2 Proses Deteksi Noise dan Proses Parameter FIR
(Finite Impulse Response)
Proses deteksi noise dan proses parameter FIR pada program
sampling frekuensi file audio ini dapat berjalan dengan baik. Dan
memberikan informasi file audio dalam mencegah munculnya noise pada
file yang diproses. Untuk tampilan program selengkapnya dapat dilihat
pada lampiran A.
4.4.3 Pengujian Aplikasi Sampling Frekuensi File Audio (File WAV)
Setelah melakukan proses setting MatLab kemudian dilakukan
pengujian terhadap aplikasi sampling frekuensi file audio, pada tahap
pengujian proses deteksi noise dan proses parameter FIR ini dilakukan
pada tipe jenis audio file wav dengan ukuran file maksimal 200 KB dan
proses deteksi noise, parameter FIR maksimal 30 menit.
Apabila telah dilakukan proses deteksi noise dan parameter FIR
akan disimpan menjadi file yang berekstensi (*.mp3). Pengujian ini dapat
dilihat pada tampilan program pada lampiran A.
1. Analisis dan pengujian deteksi noise dan parameter proses FIR
terhadap tipe file wav.
Pada tahap ini, peneliti akan melihat apakah aplikasi dapat
melakukan deteksi noise pada tipe file wav yang lain, dan apakah
proses tersebut membutuhkan waktu yang lama terhadap ukuran
98
file yang diproses. Tipe file yang akan diuji adalah hanya file
yang berekstensi (*.wav).
Gambar 4.18 Nama file dan ukuran tipe file wav sebelum diuji.
Gambar 4.19 Hasil output proses yang disimpan
Proses deteksi noise berjalan lancar, semua file audio bisa
diproses tanpa ada kesalahan aplikasi. Terdapat perbedaan yang
meningkatkan kualitas dan performance file audio menjadi lebih
baik setelah melalui proses penyaringan noise tersebut. Untuk
lama waktu yang digunakan tergantung pada besar kecilnya
ukuran file audio yang diproses. Namun, jika ukuran file audio
yang diproses kecil (<=200 KB), maka prosesnya tidak memakan
waktu yang lama. File audio yang diproses ternyata ada yang
99
memakan waktu yang sangat lama, sampai batas maksimal waktu
yang dibutuhkan yaitu 30 menit. Untuk itu peneliti membatasi
waktu prosesnya sehingga file audio yang diuji hanya 5 (lima)
buah file audio untuk mengefisiensikan waktu prosesnya. Waktu
ditampilkan dalam hitungan menit dan detik. Tabel 4.1 File audio
wav yang dipilih untuk pengujian proses.
Tabel 4.1 File wav yang diuji sebelum diuji
Tabel 4.2 Perbedaan Kualitas File Audio sebelum dan sesudah deteksi noise dan
proses Filter FIR.
File Audio .wav sebelum di proses File Audio .wav setelah di proses
1
File Jackie.wav yang di deteksi noise-
nya.
Hasil akhir File Jackie.wav setelah di
reduksi noise-nya.
2
File Posh Bell.wav yang di deteksi noise-
nya.
Hasil akhir File Posh Bell.wav setelah di
reduksi noise-nya.
100
3
File BIRD.wav yang di deteksi noise-nya.
Hasil akhir File BIRD.wav setelah di
reduksi noise-nya.
4
File Bells.wav yang di deteksi noise-nya.
Hasil akhir File Bells.wav setelah di
reduksi noise-nya.
5
File Suit-suit.wav yang di deteksi noise-
nya.
Hasil akhir File Suit-suit.wav setelah di
reduksi noise-nya.
Dari Tabel 4.2 yang telah ditunjukkan diatas, terlihat
perbedaan file audio yang dihasilkan. Dapat dilihat hasil akhir
(output) dari proses tersebut membuat halus frekuensi yang
dihasilkan, dan noise yang sebelumnya terdeteksi pada file audio
berhasil dihilangkan dengan proses diteksi noise dan parameter
proses FIR. Ini menandakan bahwa file output yang telah
dihasilkan lebih baik tingkat kualitas dan performance-nya dari
file sebelumnya.
Untuk melihat sejernih apa kualitas yang didapatkan dari
outputnya, maka peneliti mengambil 1 (satu) cuplikan proses
101
sampling penghilangan noise-nya. Berikut ini dapat dilihat
hasilnya pada Gambar 4.20 dan Gambar 4.21.
Gambar 4.20. Cuplikan Sampling Frekuensi setelah noise dihilangkan.
Gambar 4.21 Cuplikan penghilangan noise pada File audio yang diproses.
102
2. Pengujian deteksi noise dan proses parameter FIR terhadap tipe
file wav berdasarkan lamanya proses bekerja.
Analisis ini bertujuan untuk mengetahui seberapa lama
waktu yang dibutuhkan untuk memproses file audio wav,
berdasarkan ukuran file dari masing-masing file audio.
Tabel 4.3 Ukuran file dan waktu proses.
No. Nama File Ukuran File Waktu Proses
1 JACKIE.wav 25 KB 4 detik
2 Posh Bell.wav 56 KB 7 detik
3 BIRD.wav 92 KB 23 detik
4 Bells.wav 166 KB 2 menit, 35 detik
5 Suit-suit.wav 191 KB 2 menit, 22 detik
Gambar 4.22 Grafik proses file JACKIE.wav berdasarkan ukuran file dan waktu
103
Gambar 4.23 Grafik proses file Posh Bell.wav berdasarkan ukuran file dan waktu
Gambar 4.24 Grafik proses file BIRD.wav berdasarkan ukuran file dan waktu
104
Gambar 4.25 Grafik proses file Bells.wav berdasarkan ukuran file dan waktu
Gambar 4.26 Grafik proses file Suit-suit.wav berdasarkan ukuran file dan waktu
105
Gambar 4.27 Grafik proses uji file audio diambil dari 5 sampling file wav
Grafik diatas diambil berdasarkan input file audio yang
terdapat didalam Tabel 4.2, dimana hasil tersebut didapat setelah
dilakukannya proses deteksi noise dan parameter filter FIR.
Gambar 4.28 Grafik proses uji file audio berdasarkan waktu tertinggi
106
Tabel 4.4 Tabel Uji File yang di proses berdasarkan waktu proses
No. Nama File Ukuran File Parameter Proses Waktu Proses
1
JACKIE.wav
25 KB
Filter = 1
dB Down = 40
First Zero = 1500
2 detik
Filter = 4
Db Down = 40
First Zero = 1500
4 detik
Filter = 10
Db Down = 40
First Zero = 1500
4 detik
Filter = 20
Db Down = 40
First Zero = 1500
4 detik
JACKIE.wav
25 KB
Filter = 1
Db Down = 40
First Zero = 3000
2 detik
Filter = 4
Db Down = 40
First Zero = 3000
2 detik
Filter = 10
Db Down = 40
First Zero = 3000
2 detik
Filter = 20
Db Down = 40
First Zero = 3000
3 detik
2
Posh Bell.wav
56 KB
Filter = 1
Db Down = 40
First Zero = 1500
5 detik
Filter = 4
Db Down = 40
First Zero = 1500
7 detik
Filter = 10
Db Down = 40
First Zero = 1500
7 detk
Filter = 20
Db Down = 40
First Zero = 1500
7 detik
Posh Bell.wav
56 KB
Filter = 1
Db Down = 40
First Zero = 3000
7 detik
Filter = 4
Db Down = 40
First Zero = 3000
7 detik
Filter = 10
Db Down = 40
First Zero = 3000
7 detik
Filter = 20
Db Down = 40
First Zero = 3000
7 detik
107
3
BIRD.wav
92 KB
Filter = 1
Db Down = 40
First Zero = 1500
20 detik
Filter = 4
Db Down = 40
First Zero = 1500
20 detik
Filter = 10
Db Down = 40
First Zero = 1500
21 detik
Filter = 20
Db Down = 40
First Zero = 1500
23 detik
BIRD.wav
92 KB
Filter = 1
Db Down = 40
First Zero = 3000
20 detik
Filter = 4
Db Down = 40
First Zero = 3000
20 detik
Filter = 10
Db Down = 40
First Zero = 3000
21 detik
Filter = 20
Db Down = 40
First Zero = 3000
22 detik
4
Bells.wav
166 KB
Filter = 1
Db Down = 40
First Zero = 1500
2 menit, 16 detik
Filter = 4
Db Down = 40
First Zero = 1500
2 menit, 30 detik
Filter = 10
Db Down = 40
First Zero = 1500
2 menit, 30 detik
Filter = 20
Db Down = 40
First Zero = 1500
2 menit, 30 detik
Bells.wav
166 KB
Filter = 1
Db Down = 40
First Zero = 3000
2 menit, 29 detik
Filter = 4
Db Down = 40
First Zero = 3000
2 menit, 35 detik
Filter = 10
Db Down = 40
First Zero = 3000
2 menit, 35 detik
Filter = 20
Db Down = 40
First Zero = 3000
2 menit, 35 detik
5
Suit-suit.wav
191 KB
Filter = 1
Db Down = 40
First Zero = 1500
2 menit, 15 detik
108
Filter = 4
Db Down = 40
First Zero = 1500
2 menit, 15 detik
Filter = 10
Db Down = 40
First Zero = 1500
2 menit, 16 detik
Filter = 20
Db Down = 40
First Zero = 1500
2 menit, 18 detik
Suit-suit.wav
191 KB
Filter = 1
Db Down = 40
First Zero = 3000
2 menit, 17 detik
Filter = 4
Db Down = 40
First Zero = 3000
2 menit, 17 detik
Filter = 10
Db Down = 40
First Zero = 3000
2 menit, 20 detik
Filter = 20
Db Down = 40
First Zero = 3000
2 menit, 22 detik
Dari tabel diatas dapat dibuat suatu grafik yang ditunjukkan pada
Gambar 4.29
Gambar 4.29 Grafik Perbandingan Ukuran File Audio dengan Waktu proses
Dari tabel 4.4 terlihat bahwa proses deteksi noise dan
parameter filter FIR (Finite Impulse Response) hanya dapat
109
dilakukan apabila ukuran byte yang tersedia pada file audio wav
kurang dari 200 KByte. Jadi, semakin besar ukuran file audio
yang akan diproses maka lama waktu yang dibutuhkan untuk
proses tersebut akan lebih banyak dan tidak efisien, hal ini dapat
dilihat oleh Gambar 4.29.
110
BAB V
PENUTUP
5.1 KESIMPULAN
Berdasarkan uraian bab-bab sebelumnya, maka dapat diambil
kesimpulan dari penelitian skripsi ini sebagai berikut :
1. Aplikasi sampling frekuensi file audio berhasil
mengimplementasikan teori sampling frekuensi audio dan metode
filter Finite Impulse Response (FIR) dalam mereduksi noise pada
file audio. Hal ini dibuktikan melalui hasil pengujian pada Tabel
4.2 dan Tabel 4.4, yang memperlihatkan bahwa semua file audio
berekstensi (*.wav) yang diproses dapat berjalan serta output
hasilnya dapat disimpan ke dalam format (*.mp3), dengan tingkat
keberhasilan 90%.
2. Berdasarkan hasil pengujian proses deteksi noise dan parameter
proses FIR, terdapat perbedaan kualitas file audio menjadi lebih
baik dan mengalami peningkatan performance hasil akhir (output)
file audio, serta dari proses ukuran file yang semakin besar akan
mempengaruhi lama proses deteksi dan parameter proses FIR.
Semakin besar ukuran file akan semakin lama proses filter FIR.
Analisis yang dapat diambil dari pengujian diatas adalah
terdapatnya perubahan kualitas file audio yang mempengaruhi
performance hasil akhir serta memperkecil besar gangguan/noise
111
dari proses deteksi noise dan parameter proses FIR. Hal tersebut
ditunjukkan pada Tabel 4.2 dan Tabel 4.4.
3. Aplikasi Sampling Frekuensi File Audio yang telah dibuat tidak
memerlukan proses instalasi aplikasi terlebih dahulu, dan juga
dapat dijalankan dari sistem operasi apapun karena Aplikasi
Sampling Frekuensi File Audio ini dilakukan dengan komputer
stand alone.
5.2 SARAN
Berdasarkan penelitian yang diperoleh, ada beberapa saran untuk
pengembangan sistem lebih lanjut, saran-saran tersebut yaitu :
1. Aplikasi sampling frekuensi file audio hanya dapat mengupload 1
(satu) file audio untuk 1 (satu) proses deteksi noise dan proses filter
FIR dengan ukuran maksimal 100 KB. Untuk proses deteksi noise
dan proses filter FIR, diharapkan dapat dikembangkan sehingga
dapat mengupload file lebih dari 1 (satu) file audio dengan ukuran
lebih besar tanpa harus memperlambat proses deteksi noise dan
proses filter FIR secara signifikan.
2. Aplikasi sampling frekuensi file audio dapat bervariasi
menggunakan bahasa pemprograman dan metode yang lain.
Sehingga dapat dikembangkan untuk input proses share
pengiriman file audio dari server ke client atau dari client ke client
lain.
112
DARTAR PUSTAKA
Referensi Artikel dan Buku :
Bose, Tamal. 2004. DIGITAL SIGNAL AND IMAGE PROCESSING. Utah State
University : John Wiley&Sons, Inc.
Binanto, Iwan. 2010. MULTIMEDIA DIGITAL, Dasar Teori + Pengembangan.
Yogyakarta : Andi Offset.
Ferdinando, Hany. 2010. Dasar-dasar Sinyal & Sistem. Yogyakarta : Andi Offset.
Hartono, Jogiyanto. 2005. Pengenalan Komputer : Dasar Ilmu Komputer,
Pemrograman, Sistem Informasi dan Inteligensi Buatan. Yogyakarta : Andi
Offset.
Kenneth E. Kendall., Jullie E. Kendall. 2003. Systems Analysis and Design. Fifth
Edition. Dialihbahasakan oleh Thamir Abdul Hafed Al-Hamdany, B.Sc, M.Sc
dalam buku Analisa dan Perancangan Sistem Jilid 1. Jakarta : Prenhallindo.
Marvin., dan Prijono, Agus. 2007. Pengolahan Citra Dijital Menggunakan
MATLAB. Bandung : Informatika.
Putra, Agfianto, Eko. 2007. Pembuatan Ekualiser 10-Band Stereo Digital dengan
Algoritma Penapis Lolos-pita Tanggap Impuls Tak-hingga (IIR – Infinite
Impulse Response). Yogyakarta : Univesitas Gadjah Mada.
113
Paulus, Erick., dan Nataliani, Yessica. 2007. Cepat Mahir GUI MATLAB.
Yogyakarta : Andi.
Pressman, Roger S. 2002. Rekayasa Perangkat Lunak Pendekatan Praktisi (Buku
Satu). Yogyakarta : Andi.
Pressman, Roger S. 2001. Software Engineering A Practitioner’s Approach.
Singapore : McGraw-Hill Companies, Inc.
Robert, M.J. 2004. Signals and Systems, Analysis Using Transform Methods and
MATLAB®. New York : McGraw-Hill Companies, Inc.
Saluky. 2006. Modul Praktikum MATLAB Versi 6.5 .STMIK CIC Jakarta.
Santoso, Budi, Tri. 2004. Modul Sampling dan Aliasing.
Sugiharto, Aris. 2006. Pemrograman GUI dengan MATLAB. Yogyakarta : Andi.
Referensi On-Line (internet dan paper e-book file pdf) :
[1] Anonim. “Audio Sampling”. Artikel diakses pada 19 Maret 2009 pkl 15.00 WIB
dari http://www.elektroindonesia.com/elektro/elek35a.html
[2] Anonim. “Cosine Signal”. Artikel diakses pada 25November 2010 pkl 14.10 WIB
dari http://engineering.rowan.edu/~polikar/WAVELETS/WTtutorial.html
114
[3] Anonim. “Definisi Aplikasi”. Artikel diakses pada 13 Januari 2011 pkl 13.45 WIB
darihttp://bebas.vlsm.org/v06/kuliah/sistemoperasi/buku/sistemoperasi/p1c
1.html
[4] Anonim. “Interval Nada”. Artikel diakses pada 25 November 2010 pkl 14.10 WIB
dari http://www.chordwizard.com/theory.html
[5] Anonim. “Matlab Tutorial”. Artikel diakses pada 25 November 2010 pkl
14.10 WIB dari http://www.ml.uni-
saarland.de/MatlabTutorial/MatlabTutorial.pdf
[6] Anonim. “MP3”. Artikel diakses pada 13 Januari 2011 pkl 13.45 WIB dari
http://www.tasikisme.com/index.php?view=article&id=1023:apa-itu-file-mp3-
aac-wma-wav-dan-pcm&option=com_content&Itemid=58
[7] Anonim. “Pengantar Telekomunikasi”. Artikel diakses pada 18 Januari 2011 pkl
14.15 WIB dari
http://bsavitri.staff.gunadarma.ac.id/files/Pengantar+Telekomunikasi.doc
[8] Anonim. “Penyaringan / Filter Sinyal”. Artikel diakses pada 25 November 2010 pkl
14.10 WIB dari http://agfi.staff.ugm.ac.id/blog/index.php/karya-ilmiah-
saya/2007_10band_equalizer.pdf
[9] Anonim. “Praktikum Pengolahan Sinyal – Codec dan Sampling”. Artikel diakses
pada 25 November 2010 pkl 14.10 WIB dari http://lecturer.eepis-
its.edu/~bima/materi%20praktikum%20dsp/ps2_codec_sampling.pdf
[10] Anonim. “Penggunaan Audio dan Pemanfaatannya”. Artikel diakses pada 19 Maret
2009 pkl 15.00 WIB dari http://syopian.net/blog/?p=983
115
[11] Anonim. “Triad / Pasangan Nada”. Artikel diakses pada 25 November 2010 pkl
14.10 WIB dari http://www.zentao.com/guitar/index.html
[12] Anonim. “WAV”. Artikel diakses pada 13 Januari 2011 pkl 13.45 WIB dari
(http://www.tasikisme.com/index.php?view=article&id=1023:apa-itu-file-mp3-
aac-wma-wav-dan-pcm&option=com_content&Itemid=58)
[13] Anonim. “Komunikasi Digital”. Artikel diakses pada 3 Maret 2011 pkl 15.00 WIB
dari(www.ee.ui.ac.id/wasp/wp-content/uploads/Komunikasi-Digital_1.ppt)
116
LAMPIRAN A
TAMPILAN APLIKASI SAMPLING FREKUENSI FILE AUDIO
A.1. Tampilan Design Aplikasi Sampling Frekuensi File Audio
A.1.1. Halaman Tampilan Form designer MatLab.
117
A.1.2. Halaman Tampilan Design Aplikasi dengan Form design.
A.1.3. Halaman Form design dan Property Inspector Button Cari File.
118
A.1.4. Halaman Form design dan Property Inspector Grafik Informasi File.
119
A.1.5. Halaman Form design dan Property Inspector Play Original File.
120
A.1.6. Halaman Form design dan Property Inspector Random Noise.
121
A.1.7. Halaman Form design dan Property Inspector Constant Pitch Noise.
122
A.1.8. Halaman Form design dan Property Inspector Parameter Proses.
123
A.1.9. Halaman Form design dan Property Inspector Button Proses.
124
A.1.10. Halaman Form design dan Property Inspector Grafik Deteksi Noise Time(s).
125
A.1.11. Halaman Form design dan Property Inspector Grafik Diteksi Noise Frekuenzy.
126
A.1.12. Halaman Form design dan Property Inspector Grafik Proses FIR Frekuenzy.
127
A.1.13. Halaman Form design dan Property Inspector Grafik setelah noise diperkecil
Time(s).
128
A.1.14. Halaman Form design dan Property Inspector Grafik setelah noise diperkecil
Frekuenzy.
129
A.1.15. Halaman Form design dan Property Inspector Button Play Noise File.
130
A.1.16. Halaman Form design dan Property Inspector Button Play Noise Reduction.
131
A.1.17. Halaman Form design dan Property Inspector Button Save / Simpan.
132
A.1.18. Halaman Form design dan Property Inspector Button Exit.
133
134
A.2. Tampilan Hasil Proses Aplikasi Sampling Frekuensi File Audio
A.2.1. Ukuran File = 25 KB ; Filter = 1 ; dB Down = 40 ; First Zero = 1500
A.2.2. Ukuran File = 25 KB ; Filter = 4 ; dB Down = 40 ; First Zero = 1500
135
A.2.3. Ukuran File = 25 KB ; Filter = 10 ; dBDown = 40 ; First Zero = 1500
A.2.4. Ukuran File = 25 KB ; Filter = 20 ; dB Down = 40 ; First Zero = 1500
136
A.2.5. Ukuran File = 25 KB ; Filter = 1 ; dB Down = 40 ; First Zero = 3000
A.2.6. Ukuran File = 25 KB ; Filter = 4 ; dB Down = 40 ; First Zero = 3000
137
A.2.7. Ukuran File = 25 KB ; Filter = 10 ; dB Down = 40 ; First Zero = 3000
A.2.8. Ukuran File = 25 KB ; Filter = 20 ; dB Down = 40 ; First Zero = 3000
138
A.2.9. Ukuran File = 56 KB ; Filter = 1 ; dB Down = 40 ; First Zero = 1500
A.2.10. Ukuran File = 56 KB ; Filter = 4 ; dB Down = 40 ; First Zero = 1500
139
A.2.11. Ukuran File = 56 KB ; Filter = 10 ; dB Down = 40 ; First Zero = 1500
A.2.12. Ukuran File = 56 KB ; Filter = 20 ; dB Down = 40 ; First Zero = 1500
140
A.2.13. Ukuran File = 56 KB ; Filter = 1 ; dB Down = 40 ; First Zero = 3000
A.2.14. Ukuran File = 56 KB ; Filter = 4 ; dB Down = 40 ; First Zero = 3000
141
A.2.15. Ukuran File = 56 KB ; Filter = 10 ; dB Down = 40 ; First Zero = 3000
A.2.16. Ukuran File = 56 KB ; Filter = 20 ; dB Down = 40 ; First Zero = 3000
142
A.2.17. Ukuran File = 92 KB ; Filter = 1 ; dB Down = 40 ; First Zero = 1500
A.2.18. Ukuran File = 92 KB ; Filter = 4 ; dB Down = 40 ; First Zero = 1500
143
A.2.19. Ukuran File = 92 KB ; Filter = 10 ; dB Down = 40 ; First Zero = 1500
A.2.20. Ukuran File = 92 KB ; Filter = 20 ; dB Down = 40 ; First Zero = 1500
144
A.2.21. Ukuran File = 92 KB ; Filter = 1 ; dB Down = 40 ; First Zero = 3000
A.2.22. Ukuran File = 92 KB ; Filter = 4 ; dB Down = 40 ; First Zero = 3000
145
A.2.23. Ukuran File = 92 KB ; Filter = 10 ; dB Down = 40 ; First Zero = 3000
A.2.24. Ukuran File = 92 KB ; Filter = 20 ; dB Down = 40 ; First Zero = 3000
146
A.2.25. Ukuran File = 166 KB ; Filter = 1 ; dB Down = 40 ; First Zero = 1500
A.2.26. Ukuran File = 166 KB ; Filter = 4 ; dB Down = 40 ; First Zero = 1500
147
A.2.27. Ukuran File = 166 KB ; Filter = 10 ; dB Down = 40 ; First Zero = 1500
A.2.28. Ukuran File = 166 KB ; Filter = 20 ; dB Down = 40 ; First Zero = 1500
148
A.2.29. Ukuran File = 166 KB ; Filter = 1 ; dB Down = 40 ; First Zero = 3000
A.2.30. Ukuran File = 166 KB ; Filter = 4 ; dB Down = 40 ; First Zero = 3000
149
A.2.31. Ukuran File = 166 KB ; Filter = 10 ; dB Down = 40 ; First Zero = 3000
A.2.32. Ukuran File = 166 KB ; Filter = 20 ; dB Down = 40 ; First Zero = 3000
150
A.2.33. Ukuran File = 191 KB ; Filter = 1 ; dB Down = 40 ; First Zero = 1500
A.2.34. Ukuran File = 191 KB ; Filter = 4 ; dB Down = 40 ; First Zero = 1500
151
A.2.35. Ukuran File = 191 KB ; Filter = 10 ; dB Down = 40 ; First Zero = 1500
A.2.36. Ukuran File = 191 KB ; Filter = 20 ; dB Down = 40 ; First Zero = 1500
152
A.2.37. Ukuran File = 191 KB ; Filter = 1 ; dB Down = 40 ; First Zero = 3000
A.2.38. Ukuran File = 191 KB ; Filter = 4 ; dB Down = 40 ; First Zero = 3000
153
A.2.39. Ukuran File = 191 KB ; Filter = 10 ; dB Down = 40 ; First Zero = 3000
A.2.40. Ukuran File = 191 KB ; Filter = 20 ; dB Down = 40 ; First Zero = 3000
154
LAMPIRAN B
KODE SUMBER APLIKASI SAMPLING FREKUENSI FILE AUDIO
“Kode Sumber Teknik Membaca dan Mengolah File Suara”
%-------------------------------------------------------- %------------menentukan frekuensi sampling %-------------------------------------------------------- Fs = 11025; y = wavrecord(2*Fs, Fs, 'int16'); coba=questdlg('Test Hasil Rekaman Anda ?',... 'Pertanyaan','Ya','Tidak','Ya'); %-------------------------------------------------------- %------------mainkan hasil rekaman %-------------------------------------------------------- if strcmp(coba,'Ya'), wavplay(y, Fs); end
“Kode Sumber dalam Implementasi Aplikasi Sampling Frekuensi File Audio ”
function varargout = wavreduction(varargin) % WAVREDUCTION M-file for wavreduction.fig % WAVREDUCTION, by itself, creates a new WAVREDUCTION or raises the
existing singleton*. % % H = WAVREDUCTION returns the handle to a new WAVREDUCTION or the handle
to the existing singleton*. % % WAVREDUCTION('CALLBACK',hObject,eventData,handles,...) calls the local % function named CALLBACK in WAVREDUCTION.M with the given input
arguments. % % WAVREDUCTION('Property','Value',...) creates a new WAVREDUCTION or
raises the existing singleton*.
% Starting from the left, property value pairs are % applied to the GUI before wavreduction_OpeningFcn gets called. An % unrecognized property name or invalid value makes property application
stop.
% All inputs are passed to wavreduction_OpeningFcn via varargin. % % *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only % one
instance to run (singleton)". % % See also: GUIDE, GUIDATA, GUIHANDLES
% Edit the above text to modify the response to help wavreduction
% Last Modified by GUIDE v2.5 02-Dec-2009 03:15:32
155
% Begin initialization code - DO NOT EDIT gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @wavreduction_OpeningFcn, ... 'gui_OutputFcn', @wavreduction_OutputFcn, ... 'gui_LayoutFcn', [] , ... 'gui_Callback', []); if nargin && ischar(varargin{1}) gui_State.gui_Callback = str2func(varargin{1}); end
if nargout [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else gui_mainfcn(gui_State, varargin{:}); end
% --- Executes just before wavreduction is made visible. function wavreduction_OpeningFcn(hObject, eventdata, handles, varargin) % This function has no output args, see OutputFcn. % hObject handle to figure % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % varargin command line arguments to wavreduction (see VARARGIN)
% Choose default command line output for wavreduction handles.output = hObject;
% Update handles structure guidata(hObject, handles);
function varargout = wavreduction_OutputFcn(hObject, eventdata, handles) varargout{1} = handles.output;
function pushbutton1_Callback(hObject, eventdata, handles) canvas=guidata(gcbo); clear global; refresh; delete projectnoise.wav; delete projectfinal.wav; delete tmp638.wav; global FileName global PathName [FileName,PathName] = uigetfile('*.wav','Silahkan pilih file *.wav yang
akan diproses');
% reading wav file global x global fs [x,fs]=wavread(fullfile(PathName, FileName)); set(canvas.text4,'String', FileName); global t3 t3=(0:length(x)-1)/fs;
156
% plotting original signal set(handles.axes1,'HandleVisibility','ON'); axes(handles.axes1); axis on; plot(t3,x/(max(x)),'Color',[1.0 0.0 0.0]); grid on; clc;
% --- Executes on button press in play1. function play1_Callback(hObject, eventdata, handles) % hObject handle to play1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) global x global fs wavplay(x,fs);
% --- Executes on button press in stop1. function stop1_Callback(hObject, eventdata, handles) % hObject handle to stop1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) global x global fs wavstop(x,fs);
% --- Executes on button press in radiobutton1. function radiobutton1_Callback(hObject, eventdata, handles) % hObject handle to radiobutton1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) global x white = 0.1*rand(1,(length(x))); NFFT2 = 2^nextpow2(length(white)); Y2=fft(white,NFFT2); global fs f2 = fs/2*linspace(0,1,NFFT2/2); fnew2 = 20*log10(abs(Y2(1:length(f2)))); fnew2(1:(length(fnew2)/2))=0; q1=ifft(Y2,NFFT2); q2=abs(q1); q3=max(q2); q4=q2/q3; global q5 q5=0.1*(real(q4(1:length(x))));
pin=str2double(get(handles.freqn,'String')); cpnoise =0.1* cos(2*pi*pin*(0:length(x)-1)/fs)'; global u u = x;
157
if (get(handles.radiobutton1,'Value') == get(hObject,'Max')) u = u + q5'; end if (get(handles.radiobutton2,'Value') == get(hObject,'Max')) u = u + cpnoise; end % saving the noisy file wavwrite(u,fs,'projectnoise.wav'); t=(0:length(u)-1)/fs; set(handles.axes5,'HandleVisibility','ON'); axes(handles.axes5); axis on; plot(t,u/(max(u)),'Color',[1.0 1.0 0.0]); grid on; % plotting frequecy spectrum
L=length(x);
% fourier transform of signal NFFT = 2^nextpow2(L); Y=fft(u,NFFT); f = fs/2*linspace(0,1,NFFT/2); om22 = str2double(get(handles.order,'String')); be = str2double(get(handles.db,'string')); fq = str2double(get(handles.cutoff,'string')); be2=10^(be/20); Fs2=length(f); temp1=(fq*Fs2)/max(f); temp2=(pi*temp1)/Fs2; yelpha=(cos(pi/(2*om22)))/((cos(temp2/2))*(cosh((1/om22)*acosh(be2)))); set(handles.alpha,'String',yelpha) fnew=20*log10(abs(Y(1:length(f))));
set(handles.axes6,'HandleVisibility','ON'); axes(handles.axes6); plot(f,fnew,'Color',[1.0 1.0 0.0]); grid on; % Hint: get(hObject,'Value') returns toggle state of radiobutton1
% --- Executes on button press in radiobutton2. function radiobutton2_Callback(hObject, eventdata, handles) % hObject handle to radiobutton2 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
% Hint: get(hObject,'Value') returns toggle state of radiobutton2
function order_Callback(hObject, eventdata, handles) % hObject handle to order (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
158
% Hints: get(hObject,'String') returns contents of order as text % str2double(get(hObject,'String')) returns contents of order as a
double
% --- Executes during object creation, after setting all properties. function order_CreateFcn(hObject, eventdata, handles) % hObject handle to order (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns
called
% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'),
get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
function db_Callback(hObject, eventdata, handles) % hObject handle to db (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of db as text % str2double(get(hObject,'String')) returns contents of db as a
double
% --- Executes during object creation, after setting all properties. function db_CreateFcn(hObject, eventdata, handles) % hObject handle to db (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns
called
% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'),
get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
function cutoff_Callback(hObject, eventdata, handles) % hObject handle to cutoff (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
159
% Hints: get(hObject,'String') returns contents of cutoff as text % str2double(get(hObject,'String')) returns contents of cutoff as
a double
% --- Executes during object creation, after setting all properties. function cutoff_CreateFcn(hObject, eventdata, handles) % hObject handle to cutoff (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns
called
% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'),
get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
% --- Executes on button press in pushbutton4. function pushbutton4_Callback(hObject, eventdata, handles) % hObject handle to pushbutton4 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) global u global x global fs t=(0:length(x)-1)/fs; L=length(x);
% fourier transform of signal NFFT = 2^nextpow2(L); Y=fft(u,NFFT);
% plotting frequecy spectrum f = fs/2*linspace(0,1,NFFT/2); om22 =str2double(get(handles.order,'String')); be = str2double(get(handles.db,'string')); fq = str2double(get(handles.cutoff,'string')); be2=10^(be/20); Fs2=length(f); temp1=(fq*Fs2)/max(f); temp2=(pi*temp1)/Fs2; yelpha=(cos(pi/(2*om22)))/((cos(temp2/2))*(cosh((1/om22)*acosh(be2)))); set(handles.alpha,'String',yelpha) fnew=20*log10(abs(Y(1:length(f)))); set(handles.axes6,'HandleVisibility','ON'); axes(handles.axes6); plot(f,fnew,'Color',[0.3137 0.3137 0.3137]); grid on;
%Filter Design Starts Here b=be2; m=om22;
160
a=1:m; i=1; freq=0; Fs2=length(f);
h=1; p=1; omegak=((2*a-1)*pi)/(2*m); omegam=2*acos((cos(omegak))/(((yelpha)*(cosh(1/m*acosh(b)))))); while(freq<Fs2) om=2*pi*freq/(2*Fs2); k=exp(j*om); while(i<=m) h=h*(k-exp(j*omegam(i))); i=i+1; end h1(p)=abs(h); p=p+1; freq=freq+1; h=1; i=1; end h2=(h1/max(h1)); h3=20*log10(h2); set(handles.axes9,'HandleVisibility','ON'); axes(handles.axes9); axis tight; plot(f,h3,'Color',[0.3137 0.3137 0.3137]); grid on; mul=(Y(1:length(f))).*h2'; mul2=abs(mul); mulnew=20*log10(mul2); set(handles.axes8,'HandleVisibility','ON'); axes(handles.axes8); axis tight; plot(f,mulnew,'Color',[0.3137 0.3137 0.3137]); grid on; mul3=ifft(mul,NFFT); mul4=abs(mul3); mul5=max(mul4); mul6=mul4/mul5;
rmul=real(mul3(1:length(x))); set(handles.axes7,'HandleVisibility','ON'); axes(handles.axes7); axis tight; plot(t,rmul/(max(rmul)),'Color',[0.3137 0.3137 0.3137]); grid on; global rfinal rfinal=rmul/(max(rmul));
% storing the final filtered signal wavwrite(rfinal(1:length(x)),fs,'projectfinal.wav'); clc;
161
function freqn_Callback(hObject, eventdata, handles) % hObject handle to freqn (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
% Hints: get(hObject,'String') returns contents of freqn as text % str2double(get(hObject,'String')) returns contents of freqn as a
double
% --- Executes during object creation, after setting all properties. function freqn_CreateFcn(hObject, eventdata, handles) % hObject handle to freqn (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns
called
% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER. if ispc && isequal(get(hObject,'BackgroundColor'),
get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end
% --- Executes during object creation, after setting all properties. function alpha_CreateFcn(hObject, eventdata, handles) % hObject handle to alpha (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles empty - handles not created until after all CreateFcns
called
% --- Executes on button press in pushbutton5. function pushbutton5_Callback(hObject, eventdata, handles) % hObject handle to pushbutton5 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) global u global fs wavplay(u,fs);
% --- Executes on button press in pushbutton6. function pushbutton6_Callback(hObject, eventdata, handles) % hObject handle to pushbutton6 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) global x global fs global rfinal wavplay(rfinal(1:length(x)),fs);
162
% --- Executes on button press in pushbutton7. function pushbutton7_Callback(hObject, eventdata, handles) % hObject handle to pushbutton7 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA)
[SaveName,PathSaveName] = uiputfile('*.mp3','Save File dalam format
Mp3'); [d,sr] = wavread('projectfinal.wav'); mp3write(d,sr,SaveName); movefile(SaveName,PathSaveName);
% --- Executes on button press in pushbutton8. function pushbutton8_Callback(hObject, eventdata, handles) % hObject handle to pushbutton8 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) button = questdlg('Apakah anda yakin akan keluar dari program
ini','Ask','Yes','No','No'); switch button, case 'Yes', close all; case 'No' return end