PROGRA
FAKULTAS ILMU KOM
UNIVER
SKRIPSI
HELBERT SINAGA
131421097
OGRAM STUDI S1 ILMU KOMPUTER
KOMPUTER DAN TEKNOLOGI IN
IVERSITAS SUMATERA UTARA
MEDAN
2016
TER
ANALISIS P
AN RUN LENGTH ENCODING PADA
KOMPRESI FILE AUDIO
SKRIPSI
lengkapi tugas dan memenuhi syarat memperol Ilmu Komputer
HELBERT SINAGA 131421097
PROGRAM STUDI S1 ILMU KOMPUTER ILMU KOMPUTER DAN TEKNOLOGI IN
PERSETUJUAN
Judul : ANALISIS PERBANDINGAN ALGORITMA
HUFFMAN DAN RUN LENGTH ENCODING PADA KOMPRESI FILE AUDIO
Kategori : SKRIPSI
Nama : HELBERT SINAGA
Nomor Induk Mahasiswa : 131421097
Program Studi : S1 ILMU KOMPUTER
Fakultas : ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA
Diluluskan di
Medan, Juli 2016
Komisi Pembimbing:
Pembimbing 2 Pembimbing 1
Handrizal, S. Si, M. Comp. Sc Dr. Poltak Sihombing, M.Kom
NIP. NIP. 19620317 199103 1 001
Diketahui/Disetujui oleh
Program Studi S1 Ilmu Komputer Ketua,
PERNYATAAN
ANALISIS PERBANDINGAN ALGORITMA HUFFMAN
DAN RUN LENGTH ENCODING PADA
KOMPRESI FILE AUDIO
SKRIPSI
Saya mengakui bahwa skripsi ini adalah hasil kerja saya sendiri, kecuali beberapa
kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, Juli 2016
PENGHARGAAN
Puji syukur penulis panjatkan kehadirat Tuhan Yang Maha Esa atas segala
berkat-Nya sehingga dengan usaha yang maksimal akhirnya dapat dilaksanakan
penelitian serta penyusunan skripsi ini yang berjudul: “ANALISIS
PERBANDINGAN ALGORITMA HUFFMAN DAN RUN LENGTH ENCODING
PADA KOMPRESI FILE AUDIO”. Tulisan ini masih jauh dari sempurna, hal ini
disebabkan oleh keterbatasan dan kemampuan penulis.
Penulis mengucapkan terimakasih kepada pihak yang memberikan doa,
bimbingan, bantuan dan dorongan sampai selesainya skripsi ini. Dalam kesempatan
ini penulis menyampaikan terimakasih yang sebesar-besarnya kepada:
1. Bapak Prof. Dr. Runtung Sitepu, SH., M.Hum selaku Rektor Unversitas
Sumatera Utara.
2. Bapak Prof. Dr. Opim Salim Sitompul, M.Sc selaku Dekan Fakultas Ilmu
Komputer dan Teknologi Informasi Universitas Sumatera Utara.
3. Bapak Dr. Poltak Sihombing, M.Kom selaku Ketua Program Studi S1 Ilmu
Komputer Universitas Sumatera Utara dan selaku Dosen Pembimbing I yang
telah memberikan masukan kepada penulis dalam pengerjaan skripsi ini.
4. Bapak Handrizal, S.Si, M.Comp.Sc selaku Dosen Pembimbing II yang telah
memberikan ilmu, bimbingan, saran, dan masukan kepada penulis dalam
pengerjaan skripsi ini.
5. Bapak Drs. Agus Salim Harahap, M.Si selaku Dosen Pembanding I yang telah
memberikan kritik dan saran dalam penyempurnaan skripsi ini.
6. Bapak Drs. Dahlan Sitompul, M.Eng, selaku Dosen Pembanding II yang telah
memberikan kritik dan saran dalam penyempurnaan skripsi ini.
7. Semua dosen dan semua pegawai di Program Studi S1 Ilmu Komputer
8. Ibunda Desmi N. Girsang dan Ayahanda Pariaman Sinaga yang telah
memberikan dukungan secara material dan spiritual kepada Penulis. Untuk
abangku Ardy Bernard Sinaga dan adik-adikku Rizal Fernando Sinaga dan
Yuni Lestari Sinaga yang selalu memberi dorongan semangat dan motivasi
bagi penulis.
9. Teman-teman Ekstensi S1-Ilmu Komputer stambuk 2013 dan teman-teman
PD/PA Filipi yang telah memberikan semangat dan menjadi teman diskusi
penulis dalam menyelesaikan skripsi ini.
10. Semua pihak yang terlibat langsung maupun tidak langsung yang tidak dapat
penulis sebutkan satu per satu.
Penulis menyadari bahwa skripsi ini masih terdapat kekurangan. Oleh karena
itu, kepada pembaca agar kiranya memberikan kritik dan saran yang bersifat
membangun demi kesempurnaan skripsi ini.
Medan, Juli 2016
Penulis,
ANALISIS PERBANDINGAN ALGORITMA HUFFMAN DAN RUN LENGTH ENCODING PADA
KOMPRESI FILE AUDIO
ABSTRAK
Penelitian ini dilakukan untuk menganalisis perbandingan hasil kompresi dan dekompresi file audio *.mp3 (Moving Picture Expert Group) -1 audio layer III) dan *.wav. Kompresi dilakukan dengan mengurangi jumlah bit yang diperlukan untuk menyimpan atau mengirim file tersebut. Pada penelitian ini penulis menggunakan algoritma Huffman dan Run Length Encoding yang merupakan salah satu teknik kompresi yang bersifat lossless. Algoritma Huffman memiliki tiga tahapan untuk mengkompres data, yaitu pembentukan pohon, encoding dan decoding dan berkerja berdasarkan karakter per karakter. Sedangkan teknik run length ini bekerja berdasarkan sederetan karakter yang berurutan, yaitu hanya memindahkan pengulangan byte yang sama berturut-turut secara terus-menerus. Parameter yang digunakan untuk mengukur kinerja algoritma ini adalah rasio kompresi, kompleksitas yang dihasilkan. Rasio kompresi file audio*.mp3 menggunakan Algoritma Huffman memiliki rata-rata 1.426% sedangkan RLE -94.44%, dan rasio kompresi file audio *.wav memiliki rata-rata 28.954 % sedangkan RLE -45.91%, kompleksitas waktu algoritma Huffman adalahθnLog n sedangkan algoritma Run Length Encoding adalah
θ(n).
COMPARATIVE ANALYSIS ALGORITHM HUFFMAN AND RUN LENGTH ENCODING IN
FILE COMPRESSION AUDIO
ABSTRACT
This study was conducted to analyze the comparison of compression and decompression of audio files * .mp3 (Moving Picture Expert Group) -1 audio layer III) and * .wav. Compression is done by reducing the number of bits required to store or send the file. In this study the author uses Huffman and Run Length Encoding, which is one that is lossless compression technique. Huffman has three stages to compress the data, namely the establishment of the tree, encoding and decoding, and work is based on a character-by-character. While the technique of run length work based on a series of consecutive characters, namely just move repetition of the same byte row continuously. The parameters used to measure the performance of the algorithm is the compression ratio, the resulting complexity. The compression ratio * .mp3 audio files using Huffman algorithm has an average of 1,426%, while RLE 94.44%, and the compression ratio * .wav audio file has an average of 28 954% and
-45.91% RLE, Huffman algorithm time complexity is θnLog n while Run Length Encoding algorithm is θ (n).
DAFTAR ISI
BAB 2 LANDASAN TEORI 6
2.1. Pengertian Kompresi 6
2.2. Jenis-jenis Kompresi Data 7
2.2.1. Lossy Compression 7
2.2.2. Lossless Compression 7
2.3. Jenis-JenisFile Audio 8
2.3.1. File Audio*.wav 8
2.3.2. File Audio*.mp3 8
2.4. Alat Bantu Perancangan Perangkat Lunak 10
2.5. Algoritma 12
2.5.1. Algoritma Huffman 12
2.5.2. Algoritma (RLE) Run Length Encoding 14
BAB 3 ANALISIS DAN PERANCANGAN SISTEM
3.1. Analisa Sistem 15
3.2. Analisa Proses 15
3.2.1. Analisa Kompresi Huffman 16
3.2.2. Analisa Dekompresi Huffman 22
3.2.3. Analisa Kompresi Run Length Encoding 24
3.2.4. Analisa Dekompresi Run Length Encoding 25
3.3. Perancangan Sistem 26
3.3.1. Flowchart Huffman 27
3.3.2. Flowchart Run Lenth Encoding 31
3.4. Perancangan Interface 34
BAB 4 IMPLEMENTASI DAN PENGUJIAN
4.1. Implementasi Sistem 40
4.1.1. Halaman Utama Sistem 40
4.1.2. Halaman Menu Huffman 41
4.1.3. Halaman Menu Run Length Encoding 43
4.2. Perbandingan Rasio Kompresi File Audio Menggunakan Algoritma Huffman
dan Run Length Encoding 46
4.3. Perhitungan Kompleksitas Waktu 47
4.3.1. Perhitungan Kompleksitas Waktu Algoritma Huffman 48
4.3.2. Perhitungan Kompleksitas Waktu Algoritma Run Length Encoding 51
BAB 5 KESIMPULAN DAN SARAN
5.1. Kesimpulan 53
DAFTAR TABEL
Halaman
Tabel 2.1. Simbol ProgramFlowchart 10
Tabel 2.2. Simbol SistemFlowchart 11
Tabel 3.1. Frekuensi SampelAudio 17
Tabel 3.2. Hasil Kompresi Huffman 21
Tabel 3.3. Hasil Kompresi RLE 25
Tabel 3.4. Hasil Dekompresi RLE 26
Tabel 4.1. Perbandingan KompresiFile Audio(*.mp3) mmenggunakan
Algoritma Huffman dan RLE 47
Tabel 4.2. Perbandingan KompresiFile Audio(*.wav) menggunakan
Algoritma Huffman dan RLE 47
Tabel 4.3. Perhitungan Kompleksitas Waktu Algoritma Huffman 48
DAFTAR GAMBAR
Halaman
Gambar 3.1. Urutan sampel secaraascending 17
Gambar 3.2. Penggabungan dua buah simpul 17
Gambar 3.3. Pemindahan dua buah simpul urutan sampel secaraascending 18
Gambar 3.4. Penggabungan dua buah simpul 18
Gambar 3.5. Pemindahan dua buah simpul urutan sampel secaraascending 18
Gambar 3.6. Penggabungan dua buah simpul 19
Gambar 3.7. Penggabungan dua buah simpul 19
Gambar 3.8. Pemberian bit 0 dan bit 1 20
Gambar 3.9. ProsesDecodingdengan pohon Huffman 23
Gambar 3.10.Flowchartpembuatan pohon Huffman 27
Gambar 3.11.FlowchartAlgoritma Kompresi Huffman 28
Gambar 3.12.FlowchartAlgoritma Dekompresi Huffman 29
Gambar 3.13.FlowchartAlgoritma Huffman 30
Gambar 3.14.FlowchartAlgoritma Kompresi RLE 31
Gambar 3.15.FlowchartAlgoritma Dekompresi RLE 32
Gambar 3.16.FlowchartAlgoritma RLE 33
Gambar 3.17. Rancangan Halaman Utama 34
Gambar 3.18. Rancangan Halaman Algoritma Huffman 35
Gambar 3.19. Rancangan Halaman Algoritma Run Length Encoding 37
Gambar 3.20. Rancangan Halaman Info 38
Gambar 4.1. Halaman Utama Sistem 41
Gambar 4.2. Halaman Proses Kompresi pada Menu Huffman 42
Gambar 4.3. Halaman Proses Dekompresi pada Menu Huffman 43