ANALISIS DAN IMPLEMENTASI SONG RECOGNITION MENGGUNAKAN ALGORITMA FAST FOURIER TRANSFORM SKRIPSI FATAH ABDELLA SUTARA 111421047

ANALISIS DAN IMPLEMENTASI SONG RECOGNITION MENGGUNAKAN ALGORITMA FAST FOURIER TRANSFORM SKRIPSI FATAH ABDELLA SUTARA 111421047 PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN 2013

  ANALISIS DAN IMPLEMENTASI SONG RECOGNITION MENGGUNAKAN ALGORITMA FAST FOURIER TRANSFORM SKRIPSI Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah

  Sarjana Ilmu Komputer FATAH ABDELLA SUTARA

  111421047 PROGRAM STUDI EKSTENSI S1 ILMU KOMPUTER FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN

  2013

  

PERSETUJUAN

  Judul : ANALISIS DAN IMPLEMENTASI SONG RECOG-

  NITION MENGGUNAKAN ALGORITMA FAST FOURIER TRANSFORM

  Kategori : SKRIPSI Nama : FATAH ABDELLA SUTARA Nomor Induk Mahasiswa : 111421047 Program Studi : EKSTENSI S1 ILMU KOMPUTER Fakultas : ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

  UNIVERSITAS SUMATERA UTARA Diluluskan di Medan,

  Komisi Pembimbing : Pembimbing 2 Pembimbing 1 Dian Wirdasari, S.Si, M.Kom Drs. Marihat Situmorang, M.Kom NIP. 19820923 201012 2 002 NIP. 19631214 198903 1 001 Diketahui/disetujui oleh Program Studi Ekstensi S1 Ilmu Komputer Ketua, Dr. Poltak Sihombing, M.Kom NIP. 19620317 199103 1 001

  

PERNYATAAN

  ANALISIS DAN IMPLEMENTASI SONG RECOGNITION MENGGUNAKAN ALGORITMA FAST FOURIER

  

TRANSFORM

  SKRIPSI Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya.

  Medan. Oktober 2013 Fatah Abdella Sutara 111421047

  

PENGHARGAAN

  Alhamdulillah, puji syukur penulis panjatkan kehadirat Allah SWT, yang telah memberikan rahmat dan hidayah-Nya serta segala sesuatunya dalam hidup. Sehingga penulis dapat menyelesaikan penyusunan skripsi ini, sebagai syarat untuk memperoleh gelar Sarjana Komputer, Program Studi S1 Ilmu Komputer Universitas Sumatera Utara.

  Ucapan terima kasih penulis sampaikan kepada semua pihak yang telah membantu penulis selama pengerjaan skripsi ini, antara lain kepada:

  1. Bapak Drs. Marihat Situmorang, M.Kom dan Ibu Dian Wirdasari, S.Si, M.Kom sebagai Dosen Pembimbing yang telah memberikan bimbingan, saran, masukkan kepada penulis untuk menyempurnakan kajian ini.

  2. Bapak Dr. Poltak Sihombing, M.Kom selaku Ketua Departemen Ilmu Komputer, Fakultas Ilmu Komputer dan Teknologi Informasi, Universitas Sumatera Utara dan sebagai Dosen Pembanding.

  3. Bapak Drs. Agus Salim Harahap, M.Si sebagai Dosen Pembanding.

  4. Dekan dan Pembantu Dekan Fakultas Ilmu Komputer dan Teknologi Informasi serta seluruh dosen dan pegawai Program Studi Ekstensi S1 Ilmu Komputer Universitas Sumatera Utara.

  5. Seluruh dosen Departemen Ilmu Komputer, Fakultas Ilmu Komputer dan Teknologi Informasi, Universitas Sumatera Utara yang telah membimbing dan mencurahkan ilmunya selama masa perkuliahan.

  6. Seluruh pegawai di lingkungan Program Studi S1 Ilmu Komputer Fasilkom-TI USU.

  7. Teristimewa kepada orang tua penulis, ayahanda Frans Yusra Eddizon Sutara dan Ibunda Seniwati Margolang atas do’a dan kasih sayang yang tidak pernah putus, kepada adinda saya Farah Franyenisari Sutara dan adinda Dewi Permata Suri atas dorongan semangat yang diberikan kepada penulis.

8. Teman-teman seangkatan Ekstensi S1 Ilmu Komputer tahun 2011 yang sama- sama berjuang meraih gelar Sarjana.

  Semoga Allah SWT memberikan limpahan karunia semua pihak yang membantu penulis dalam menyelesaikan skripsi ini. Akhirnya penulis berharap bahwa skripsi ini bermanfaat terutama kepada penulis maupun para pembaca serta semua pihak akademisi yang tertarik mengembangkannya. Penulis menyadari bahwa skripsi ini masih jauh dari kesempurnaan, oleh karena itu penulis menerima saran dan kritik demi kesempurnaan skripsi ini sehingga bermanfaat bagi semua pihak.

  Medan, Oktober 2013 Penulis

  Fatah Abdella Sutara

  ABSTRAK

  Pada saat sedang mendengarkan lagu di sebuah tempat, terkadang timbul keinginan untuk mengetahui penyanyi dan judul lagu yang sedang diputar. Aplikasi Song

  

Recognition dapat mengetahui penyanyi dan judul lagu cukup dengan

  memperdengarkannya. Aplikasi Song Recognition mengenal lagu dengan memproses lagu dalam sinyal domain frekuensi, oleh karena itu lagu yang berupa sinyal domain waktu ditransformasikan ke dalam sinyal domain frekuensi. Proses transformasi dilakukan menggunakan algoritma Fast Fourier Transform. Rekaman lagu berdurasi 10 detik yang telah ditransformasi, kemudian diolah untuk dibentuk menjadi hash- hash. Hash-hash dicocokan dengan file indeks berisi hash-hash yang diberasal dari file lagu berformat .mp3. Aplikasi Song Recognition dirancang menggunakan bahasa pemrograman C#.

  Kata Kunci: Lagu, Song Recognition, Fast Fourier Transform.

  

ANALYSIS AND IMPLEMENTATION OF SONG RECOGNITION

USING FAST FOURIER TRANSFORM ALGORITHM

ABSTRACT

  At the time was listening to a song in a place, sometimes the desire to know the singer and the title of the song being played. Song Recognition Application can know the singer and song title simply by listening it. Song Recognition known song by process song in the frequency domain signal, therefore the song is a time domain signal is transformed into the frequency domain signal. The process of transformation is done using Fast Fourier Transform algorithm. Recording of the song in 10 seconds transformed then processed to make hashes. Hashes matching with an index file contains a hashes derived from the song file with .mp3 format. Song Recognition applications designed using the C # programming language. Keywords: Songs, Song Recognition, Fast Fourier Transform.

DAFTAR ISI

  25 Bab 3 Analisis dan Perancangan

  12

  2.2.1 Parameter Song Recognition

  13

  2.2.2 Rancangan Song Recognition

  15

  2.3 Sinyal Domain Waktu dan Sinyal Domain Frekuensi

  15

  2.4 Transformasi Fourier

  17

  2.4.1 Transformasi Fourier Diskrit

  17

  2.4.2 Fast Fourier Transform

  20

  2.5 Hasing

  27

  11

  3.1 Analisis

  27

  3.1.1 Analisis Masalah

  27

  3.1.2 Deskripsi Umum Sistem

  28

  3.1.3 Analisis Pengolahan Sinyal Suara

  28

  3.1.3.1 Analisis Pre-Processing

  29

  3.1.3.2 Analisis Proses Fast Fourier Transform

  32

  3.1.3.3 Analisis Ektraksi Hash

  34

  2.2 Song Recognition

  Halaman Persetujuan ii

  Pernyataan iii

  1.4 Tujuan Penelitian

  Penghargaan iv

  Abstrak vi

  Abtract vii

  Daftar Isi viii

  Daftar Tabel x

  Daftar Gambar xi

  Bab 1 Pendahuluan

  1

  1.1 Latar Belakang

  1

  1.2 Rumusan Masalah

  3

  1.3 Batasan Masalah

  3

  4

  9

  1.5 Manfaat Penelitian

  4

  1.6 Metode Penelitian

  4

  1.7 Sistematika Penulisan

  5 Bab 2 Landasan Teori

  7

  2.1 Audio

  7

  2.1.1 Audio Digital

  8

  2.1.2 Format File Audio

  9

  2.1.2.1 File WAV

  2.1.2.1 File MP3

  3.1.4 Analisis Pengenalan Lagu

  4.1.1 Tampilan Jendela Utama

  4.1.4 Tampilan Jendela Gabung File Indeks

  58

  4.1.3 Tampilan Jendela Sisip Lagu ke Indeks

  58

  4.1.2 Tampilan Jendela Buat Lagu ke Indeks

  57

  57

  4.1.5 Tampilan Jendela Pengenal Lagu

  4.1 Implementasi

  57

  56 Bab 4 Implementasi Dan Pengujian

  3.2.4.5 Rancangan Jendela Tentang

  55

  3.2.4.5 Rancangan Jendela Pengenal Lagu

  53

  59

  60

  52

  65

  5.2 Saran

  71

  5.1 Kesimpulan

  71

  67 Bab 5 Kesimpulan Dan Saran

  4.2.4 Proses Pengenalan Lagu

  4.2.3 Proses Penggabungan File Indeks

  4.1.6 Tampilan Jendela Tentang

  63

  4.2.2 Proses Penyisipan Lagu ke Dalam File Indeks

  61

  4.2.1 Proses Pembuatan File Indeks

  61

  4.2 Pengujian

  60

  3.2.4.4 Rancangan Jendela Gabung File Indeks

  3.2.4.3 Rancangan Jendela Sisip Lagu ke Indeks

  36

  3.2.1.3 Data Flow Diagram Level 2

  3.2.2.2 Flowchart Sampling Suara

  40

  3.2.2.1 Flowchart Umum Sistem

  40

  3.2.2 Perancangan Flowchart

  39

  38

  3.2.2.3 Flowchart Pengolahan Sinyal Suara

  3.2.1.2 Data Flow Diagram Level 1

  37

  3.2.1.1 Data Flow Diagram Level 0

  37

  3.2.1 Perancangan Data Flow Diagram (DFD)

  36

  3.2 Perancangan Sistem

  41

  42

  51

  46

  3.2.4.2 Rancangan Jendela Buat Lagu ke Indeks

  50

  3.2.4.1 Rancangan Jendela Utama

  50

  3.2.4 Perancangan Tampilan Antarmuka (Interface)

  48

  3.2.3.3 Use Case Pengenalan Lagu

  3.2.3.2 Use Case Buat File Indeks

  3.2.2.4 Flowchart Ekstraksi Hash

  45

  3.2.3.1 Identifikasi Use Case Diagram

  45

  3.2.3 Perancangan Unified Modeling Language

  44

  3.2.2.5 Flowchart Pengenalan Lagu

  43

  72 Daftar Pustaka Lampiran A: Listing Program Lampiran B: Curriculum Vitae

  

DAFTAR TABEL

  34

  4.1 Hasil pengujian file terkompresi

  48

  3.10 Dokumentasi naratif Use Case Pengenalan Lagu

  46

  3.9 Dokumentasi naratif Use Case Buat File Indeks

  40

  3.8 Spesifikasi proses DFD Level 2

  39

  3.7 Spesifikasi proses DFD Level 1

  35

  3.6 Rentang frekuensi magnitudo sinyal suara

  3.5 Contoh perhitungan FFT sinyal suara

  Halaman

  33

  3.4 Konstruksi FFT 2 titik

  33

  3.3 Contoh perhitungan DFT sinyal suara

  32

  3.2 Contoh perhitungan konversi sinyal diskrit ke kode biner

  31

  3.1 Contoh perhitungan data sampel dari sinyal

  22

  2.2 Pengurutan Pembalikan Bit

  11

  2.1 Field-field pada struktur format file WAV

  70

  

DAFTAR GAMBAR

  3.16 Activity Diagram Pengenalan Lagu

  52

  3.19 Rancangan Jendela Sisip Lagu ke Indeks

  51

  3.18 Rancangan Jendela Buat Lagu ke Indeks

  50

  3.17 Rancangan jendela utama

  49

  47

  54

  3.15 Activity Diagram Buat File Indeks

  46

  3.14 Use case pengenalan lagu

  44

  3.13 Flowchart pengenalan lagu

  43

  3.12 Flowchart ekstraksi hash

  42

  3.20 Rancangan Jendela Gabung File Indeks

  3.21 Rancangan Jendela Pengenal Lagu

  41

  59

  4.8 Jendela lokasi dan nama file indeks serta lokasi direktori lagu

  61

  4.7 Langkah pembuatan file indeks

  60

  4.6 Tampilan jendela Tentang

  60

  4.5 Tampilan jendela Pengenal Lagu

  4.4 Tampilan jendela Gabung File Indeks

  55

  59

  4.3 Tampilan jendela Sisip Lagu ke Indeks

  58

  4.2 Tampilan jendela Buat Lagu ke Indeks

  57

  4.1 Tampilan jendela utama

  56

  3.22 Rancangan Jendela Tentang

  3.11 Flowchart pengolahan sinyal suara

  3.10 Flowchart proses sampling suara

  Halaman

  16

  2.9 FFT butterfly dasar untuk peruraian dalam waktu

  22

  2.8 Contoh dekomposisi sinyal domain waktu yang digunakan di FFT

  21

  2.7 Diagram Alir FFT

  20

  2.6 Perbandingan jumlah perkalian kompleks DFT dengan FFT

  2.5 Gelombang sinyal domain frekuensi

  2.10 FFT butterfly dasar untuk peruraian dalam frekuensi

  16

  2.4 Gelombang sinus sinyal domain waktu

  15

  2.3 Cara kerja umum aplikasi Song Recognition

  10

  2.2 Format file WAV

  8

  2.1 Ilustrasi proses suara analog ke digital dan sebaliknya

  24

  24

  40

  3.5 Contoh butterfly pada FFT 4 titik

  3.9 Flowchart umum sistem

  39

  3.8 DFD Level 2

  38

  3.7 DFD Level 1

  37

  3.6 DFD Level 0

  34

  31

  2.11 FFT sintesis butterfly

  3.4 Input sinyal analog yang dikuantitasi

  29

  3.3 Konsep kerja ADC

  29

  3.2 Alur pengolahan sinyal suara

  28

  3.1 Proses aplikasi pengenalan lagu

  25

  62

  4.9 Proses pembuatan file indeks

  66

  4.22 Hasil proses pengenalan lagu

  68

  4.21 Jendela lokasi dan nama file indeks

  68

  4.20 Langkah pengenalan lagu

  67

  4.19 Pesan proses penggabungan file indeks telah selesai

  67

  4.18 Proses penggabungan file indeks

  66

  4.17 Jendela lokasi dan nama file indeks serta lokasi hasil

  4.16 Langkah penggabungan file indeks

  62

  65

  4.15 Pesan proses penyisipan lagu ke dalam file indeks telah selesai

  65

  4.14 Proses penyisipan lagu ke dalam file indeks

  64

  4.13 Jendela lokasi dan nama file indeks serta lokasi direktori lagu

  64

  4.12 Langkah penyisipan lagu ke dalam file indeks

  63

  4.11 Hasil pembuatan file indeks

  63

  4.10 Pesan proses pembuatan file indeks telah selesai

  69