IMPLEMENTASI ALGORITMA SHANNON-FANO
PADA KOMPRESI AUDIO
SKRIPSI
MUTIARA NOVELIA RAJAGUKGUK
081402068
PROGRAM STUDI S1 TEKNOLOGI INFORMASI
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
MEDAN
2014
IMPLEMENTASI ALGORITMA SHANNON-FANO PADA KOMPRESI AUDIO
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah Sarjana Teknologi Informasi
MUTIARA NOVELIA RAJAGUKGUK 081402068
PROGRAM STUDI S1 TEKNOLOGI INFORMASI
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA
MEDAN 2014
PERSETUJUAN
Judul : IMPLEMENTASI ALGORITMA
SHANNON-FANO PADA KOMPRESI AUDIO
Kategori : SKRIPSI
Nama : MUTIARA NOVELIA RAJAGUKGUK
Nomor Induk Mahasiswa : 081402068
Program Studi : SARJANA (S1) TEKNOLOGI INFORMASI
Departemen : TEKNOLOGI INFORMASI
Fakultas : ILMU KOMPUTER DAN TEKNOLOGI
INFORMASI (FASILKOM-TI) UNIVERSITAS SUMATERA UTARA
Diluluskan di Medan, 2014
Komisi Pembimbing :
Pembimbing 2 Pembimbing 1
Dedy Arisandi,ST.,M.Kom M.Fadly Syahputra,B.Sc.,M.Sc.IT NIP 19610817 198701 1 001 NIP 19830226 201012 2 003
Diketahui/Disetujui oleh
Program Studi S1 Teknologi Informasi Ketua,
Prof. Dr. Opim Salim Sitompul, M.Sc. NIP196108171987011001
PERNYATAAN
IMPLEMENTASI ALGORITMA SHANNON-FANO PADA KOMPRESI AUDIO
SKRIPSI
Saya mengakui bahwa skripsi ini adalah hasil karya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, April 2014
Mutiara Novelia Rajagukguk 081402068
UCAPAN TERIMA KASIH
Puji dan syukur penulis panjatkan kepada Tuhan Yang Maha Esa sehingga penulis dapat menyelesaikan skripsi ini sebagai syarat untuk memperoleh gelar Sarjana Teknologi Informasi, Program Studi S1 Teknologi Informasi Departemen Teknologi Informasi Universitas Sumatera Utara.
Ucapan terima kasih penulis sampaikan kepada kedua dosen pembimbing yaitu M.Fadly Syahputra,B.Sc.,M.Sc.IT dan Dedy Arisandi,ST.,M.Kom yang telah bersedia meluangkan waktunya untuk memberikan panduan dan masukan kepada penulis dalam menyelesaikan skripsi ini. Ucapan terima kasih juga ditujukan kepada Bapak Baihaqi Siregar, S.Si.M.T dan Bapak Drs. Sawaluddin, M.IT yang telah bersedia menjadi dosen pembanding. Ucapan terima kasih juga penulis tujukan kepada Ketua dan Sekretaris Program Studi Teknologi Informasi, Prof. Dr. Opim Salim Sitompul, M.Sc. dan Drs. Sawaluddin, M.IT, Dekan dan Pembantu Dekan Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara, semua dosen serta pegawai di Program Studi S1 Teknologi Informasi.
Skripsi ini penulis persembahkan kepada kedua orang tua penulis Ayah M. Rajagukguk dan Ibu K. L.Tobing dan juga kepada saudara saudara penulis yang senantiasa memberikan dukungan, doa dan semangat kepada penulis. Kepada Desfi Rahmadani, Ester Hannita, Fanny Devina, Ika Hasnita, Lia Hartati, Umi Hani, Fadhly Sani, Siska dan seluruh angkatan 08 serta teman-teman mahasiswa Teknologi Informasi penulis ucapkan banyak terima kasih atas doa dan dukungan yang telah diberikan.
Penulis menyadari bahwa masih terdapat banyak kekurangan dalam penyusunan skripsi ini. Karena itu penulis mengaharapkan saran-saran yang bersifat membangun dari semua pihak untuk kesempurnaan skripsi ini. Akhir kata penulis mengharapkan semoga skripsi ini dapat memberikan manfaat bagi semua pihak.
ABSTRAK
Besarnya ukuran file audio membuat pengiriman data menjadi lama dan dapat menyebabkan pemborosan media penyimpanan. Oleh karena itu dilakukan kompresi untuk memadatkan isi file dengan cara menghilangkan berbagai redundansi dan menemukan sumber redundansi disetiap data sehingga ukuran audio menjadi lebih kecil. Salah satu metode kompresi adalah metode lossless yaitu metode kompresi dimana pada audio hasil kompresi dapat dikembalikan ke data semula tanpa menghilangkan informasi pada data. Penelitian ini menggunakan algoritma Shannon-Fano pada audio berjenis mp3 untuk melakukan kompresi dan memainkan kembali audio hasil kompresi. Algoritma Shannon-Fano merupakan algoritma metode lossless yang didasarkan pada variable-length code yang berarti beberapa karakter pada data yang dikodekan direpresentasikan dengan kode yang lebih pendek. Perbandingan antara ukuran audio hasil kompresi dan ukuran audio asli dihitung dengan menggunakan rumus rasio kompresi. Dari hasil pengujian proses kompresi didapat bahwa rasio kompresi untuk 20 file audio mempunyai range antara 25% untuk nilai terendah dan tertinggi 48.86% dengan hasil rata rata rasio kompresi sebesar 41.49% serta menunjukkan bahwa audio hasil kompresi dapat dimainkan kembali tanpa harus melakukan proses dekompresi.
Kata kunci: kompresi, dekompresi, redundansi, metode lossless, Shannon-Fano, variable-length code, mp3.
IMPLEMENTATION OF SHANNON-FANO ALGORITHM FOR AUDIO COMPRESSION
ABSTRACT
The large size of audio increasing time to transferring and also takes space for storage media. To solve this problem is used compression to compresss data for reducing size of audio which eliminating the redundancy in data and find the source of redundancy in each type of data. One of compression method is lossless method which reconstruct the original data from the compressed file without any loss of data. In this study Shannon-Fano algorithm is used for compressing mp3 audio and playing audio compress. Shannon-Fano algorithm is lossless method based on variable-length code where some characters in data encoding are represented by short code. Comparison of audio compress and original audio measured by compression ratio. The result of testing for 20 audio total show average compression ratio amounts 41.49%, range between 25% for low percentage and 48.86% for high percentage, it also show the audio compress can be playback without decompressing.
Keyword: kompresi, dekompresi, redundansi, metode lossless, Shannon-Fano, variable-length code, mp3.
DAFTAR ISI
Halaman
Persetujuan ii
Pernyataan iii
Ucapan Terima Kasih iv
Abstrak v
Abstract vi
Daftar Isi vii
Daftar Tabel ix Daftar Gambar x Bab 1 Pendahuluan 1 1.1 Latar Belakang 1 1.2 Rumusan Masalah 2 1.3 Batasan Masalah 3 1.4 Tujuan Penelitian 3 1.5 Manfaat Penelitian 3 1.6 Metode Penelitian 4 1.7 Sistematika Penulisan 5
Bab 2 Landasan Teori 7
2.1 Kompresi 7
2.1.1 Metode kompresi 8
2.1.2 Compression Ratio 9
2.1.3 Redundansi 9
2.2 Pengertian Audio 9
2.2.1 Representasi Audio Digital 10
2.2.2 Kelebihan Audio Digital 11
2.2.3 Sampling Rate 12
2.2.4 Bit per Sample 12
2.2.5 Bit Rate 13
2.2.6 MP3 (MPEG-1 Layer 3) 13
2.3 Penelitian Sebelumnya 17
2.4 Algoritma Shannon-Fano 19
2.5 Binary Tree 20
viii
3.2.2 Activity Diagram 34
3.2.3 Sequence Diagram 37
3.3 Perancangan Antarmuka 39
3.3.1 Menu Utama 39
3.3.2 Sub Menu Kompresi 40
3.3.3 Sub Menu Dekompresi 40
3.3.4 Sub Menu Play 41
3.3.5 Sub Menu Bantuan 42
Bab 4 Implementasi Dan Perancangan 44
4.1 Implementasi Perancangan Antarmuka Aplikasi 44
4.1.1 Tampilan Sub Menu Kompresi 45
4.1.2 Tampilan Sub Menu Dekompresi 49
4.1.3 Tampilan Sub Menu Play 52
4.1.4 Tampilan Sub Menu Bantuan 54
4.2 Pengujian Sistem 54
4.2.1 Skenario Pengujian 55
4.2.2 Analisis Data Hasil Pengujian 56
4.2.2.1 Analisis Kompresi Audio 56
4.2.2.2 Analisis Dekompresi Audio 60
Bab 5 Kesimpulan Dan Saran 63
5.1 Kesimpulan 63
5.2 Saran 64
Daftar Pustaka 65
DAFTAR TABEL
Halaman
Tabel 2.1 Tabel Frekuensi Sampling dan Kualitas Suara yang Dihasilkan 12 Tabel 2.2 Tabel Penyimpanan Berbagai Konfigurasi Audio Digital 13
Tabel 2.3 Tabel Keterangan Header Mp3 15
Tabel 2.4 Tabel Distribusi Frekuensi 22
Tabel 2.5 Tabel Hasil Kode Shannon-Fano 25
Tabel 2.6 Tabel Pengubahan Heksadesimal ke Biner 26
Tabel 2.7 Tabel Kode Shannon-Fano 27
Tabel 3.1 Tabel Dokumentasi Naratif Usecase Pilih Kompresi 33 Tabel 3.2 Tabel Dokumentasi Naratif Usecase Pilih Dekompresi 33 Tabel 3.3 Tabel Dokumentasi Naratif Usecase Pilih Play 34
Tabel 4.1 Tabel File Audio Yang Diuji 55
Tabel 4.2 Tabel Hasil Pengujian Proses Kompresi 57
DAFTAR GAMBAR
Halaman
Gambar 2.1 Proses Kompresi Dan Dekompresi (Pu, 2006) 8 Gambar 2.2 Alur Gelombang Suara (Mukhlis, 2012) 10
Gambar 2.3 Proses Digitasi (Mukhlis, 2012) 11
Gambar 2.4 Struktur File Mp3 14
Gambar 2.5 Header Mp3 (Raissi, 2002) 14
Gambar 2.6 Contoh Binary Tree 21
Gambar 2.7 Contoh Completely Binary Tree 21
Gambar 2.8 Contoh Perfect Binary Tree 22
Gambar 2.9 Contoh Pengurutan Frekuensi Secara Descending 23
Gambar 2.10 Contoh Pembagian Menjadi Dua Node 23
Gambar 2.11 Contoh Pembagian Menjadi Dua Node Kedua 23 Gambar 2.12 Contoh Pembagian Menjadi Dua Node Ketiga 24 Gambar 2.13 Contoh Pembagian Menjadi Dua Node Keempat 24 Gambar 2.14 Contoh Pembagian Menjadi Dua Node Kelima 24 Gambar 2.15 Contoh Pembagian Menjadi Dua Node Keenam 25 Gambar 3.1 Proses Kompresi Algoritma Shannon-Fano 29 Gambar 3.2 Usecase Diagram Aplikasi Kompresi Audio 32
Gambar 3.3 Activity Diagram Menu Utama 35
Gambar 3.4 Activity Diagram Submenu Kompresi 35
Gambar 3.5 Activity Diagram Submenu Dekompresi 36
Gambar 3.6 Activity Diagram Submenu Play 36
Gambar 3.7 Sequence Diagram Kompresi Audio 37
Gambar 3.8 Sequence Diagram Dekompresi Audio 38
Gambar 3.9 Sequence Diagram Play Audio 39
Gambar 3.10 Rancangan Antarmuka Menu Utama 39
Gambar 3.11 Rancangan Antarmuka Sub Menu Kompresi 40
Gambar 3.12 Rancangan Antarmuka Sub Menu Dekompresi 41
Gambar 3.13 Rancangan Antarmuka Sub Menu Play 42
Gambar 3.14 Rancangan Antarmuka Sub Menu Bantuan 43
Gambar 4.1 Tampilan Antarmuka Menu Utama Aplikasi 44
Gambar 4.2 Tampilan Antarmuka Sub Menu Aplikasi 45
Gambar 4.3 Tampilan Sub Menu Kompresi 46
Gambar 4.4 Tampilan Buka File Sub Menu Kompresi 46
Gambar 4.5 Tampilan Hasil Buka File Sub Menu Kompresi 47
Gambar 4.6 Tampilan Proses Kompresi 48
Gambar 4.7 Tampilan Hasil Proses Kompresi 48
Gambar 4.8 Tampilan Sub Menu Dekompresi 49
Gambar 4.9 Tampilan Buka File Sub Menu Dekompresi 50
Gambar 4.10 Tampilan Hasil Buka File Sub Menu Dekompresi 50
Gambar 4.11 Tampilan Proses Dekompresi 51
xi
Gambar 4.13 Tampilan Sub Menu Play 52
Gambar 4.14 Tampilan Buka File Sub Menu Play 53
Gambar 4.15 Tampilan Memainkan Audio 53
Gambar 4.16 Sub Menu Bantuan 54