ISSN : 2502-8928 (Online) 209
Received June 1st,2012; Revised June 25th, 2012; Accepted July 10th, 2012
APLIKASI KOMPRESI FILE AUDIO
MENGGUNAKAN ALGORITMA DEFLATE
Jelyzer Patanan*1, Sutardi2, Rizal Adi Saputra3 *1,2,3
Jurusan Teknik Informatika, Fakultas Teknik, Universitas Halu Oleo, Kendari e-mail : *[email protected],[email protected], [email protected]
Abstrak
Seiring dengan semakin berkembangnya bentuk data yang diolah melalui perangkat komputer, maka semakin besar pula ukuran dari data yang diolah tersebut. Data yang berukuran besar akan sangat menyita ruang penyimpanan yang dimiliki, serta akan sangat memakan waktu jika dipertukarkan dengan pengguna lainnya dalam jaringan komputer. Untuk itu perlu dilakukan pemampatan data atau kompresi data untuk bisa meminimalkan ukuran dari data yang akan digunakan.
Pada penelitian ini dilakukan untuk membandingkan rasio kompresi dan waktu kompresi file wav dan mp3. Ada 2 file yang diujikan, yaitu file audio berekstensi *.wav dan *.mp3. Pengujian aplikasi kompresi ini dilakukan dengan menguji file yang mempunyai ukuran berbeda-beda dengan 5 sample rate berbeda yaitu 8.000 Hz, 11.025 Hz, 22.050 Hz, 44.100 Hz dan 48.000 Hz.
Hasil pengujian diperoleh, rata-rata rasio kompresi terbaik terdapat pada pengujian file wav dengan sample rate 44.100 Hz yaitu dengan rata-rata rasio sebesar 39,12 % dan rasio terkecil pada pengujian file mp3 dengan sample rate 48.000 Hz dengan rata-rata rasio 1,9 %. File dengan pengujian waktu tercepat terjadi pada file mp3 di sample rate 11.025 Hz dimana waktu terbaik pengujian dengan rata-rata 187 milisecond. Sedangkan waktu terlama saat pengujian terjadi pada pengujian file wav di sample rate 48.000 Hz dengan waktu kompresi rata-rata 4328 milisecond.File audio dengan ukuran yang besar membutuhkan waktu lebih lama dalam melakukan proses kompresi.
Kata kunci—Audio, Kompresi, Dekompresi, Algoritma Deflate, Lossless, WAV, MP3.
Abstract
Along with the growing form of data processed by using computer, the size of the data itself are getting bigger. Large data will greatly take more storage space and will take longer time in the data exchange process with other users. Based on the given fact, the author thinks that collecting and compressing those data in order to reduce its size will become a very good solution.
This study was conducted to compare the compression ratio and compression time between wav and mp3 files. In this study, the author using *.wav and *mp3 files as the samples. In this study, the author tested five different samples (in size) by using five sample rate : 8000 Hz, 11.025 Hz, 22.050 Hz, 44.100 Hz and 48.000 Hz.
Based on the test results, the author obtained the highest average value of compression ratio lies in the .wav file with 44.100 Hz sample rate(average ratio 39,12%) whereas the lowest one lies in the .mp3 file with 48.000 Hz sample rate (average ratio 1,9%). Mp3 file with 11.025 Hz sample rate has the fastest testing time with average time 187 milisecond whereas .mp3 file with 48.000 Hz takes more time (longest time) with average time 4328 milisecond. The larger the file, the longer the compression process.
1. PENDAHULUAN
emanfaatan teknologi sebagai bagian kehidupan dalam dasawarsa terakhir berkembang dengan pesat. Hal tersebut berpengaruh kepada meningkatnya kebutuhan akan media penyimpanan data. Data berupa file teks, gambar, suara, video ataupun file yang mempunyai fungsi tertentu membutuhkan lokasi sebagai wadah yang dapat dihitung dalam satuan byte. Masalah dalam biaya penyimpanan, biaya dan waktu pentransmisian data mengharuskan adanya suatu pemecahan[1].
File audiodigital memiliki ukuran (size) yang lebih besar dibandingkan dengan file teks. Jadi untuk mengurangi ukurannya dapat dilakukan dengan cara kompresi. Fileaudi o dengan format WAV memiliki data yang tidak terkompres sehingga seluruh sampelaudiodisimpan semuanya diharddisk. Fileaudi oini jarang sekali digunakan di internet karena ukurannya yang relatif besar dengan batasan maksimal untuk file WAV adalah 2GB. Sedangkan, 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 file nya 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 dan sering digunakan[2].
Kompresi data adalah proses yang mengkonversi sebuah masukan berupa aliran data (the source atau data asli mentah) menjadi suatu aliran data lain (the output, aliran bit atau aliran sudah dikompres) yang memiliki ukuran lebih kecil. Terdapat dua golongan besar pada teknik kompresi ketika berhadapan dengan kemungkinan merekonstruksi kembali data yang telah dikompres menjadi data original, yaitu Lossless dan LossyCompression. Pada penelitian ini akan digunakan kompresi tipe lossless, hal ini karena lossless compression memungkinkan rekonstruksi data kembali sama persis dengan data original dengan cara mendekompresinya dan tidak ada kerusakan pada data.Berbeda dengan tipe lossycompression, data yang diperoleh akan berbeda dari data yang aslinya
karena tipe lossy membuang sebagian bit dalam data[3].
Algoritma yang termasuk golongan lossless adalah Huffman, varian Lempel-Ziv (LZ), Deflate, Arithmetic, Run Length Encoding (RLE) dan lain-lain. Berbagai jenis algoritma tersebut berkembang dengan pendekatan, kelebihan juga kekurangan yang berbeda satu sama lain. Banyak pihak berusaha mengembangkan algoritma baru dengan didasari algoritma yang sudah ada atau berusaha mengkombinasikan dua atau lebih algoritma. Dalam ruang lingkup metode kompresi General-purpose, Algoritma Deflate hadir dengan mengkombinasikan Algoritma LZ77 dan Huffman. Algoritma Deflate mengambil berbagai kelebihan dari masing-masing metode, sliding-window pada metode LZ77 dan prefix-tree pada metode Huffman. Hal ini menjadikan performa Algoritma Deflate layak dibandingkan dengan berbagai metode kompresi terbaik[4].
2. METODE PENELITIAN
2.1 Audio
Audio adalah fenomena fisik yang dihasilkan oleh getaran suatu benda yang berupa sinyal analog dengan amplitudo yang berubah secara kontinyu terhadap waktu yang disebut frekuensi. Selama bergetar, perbedaan tekanan terjadi di udara sekitarnya. Pola osilasi yang terjadi dinamakan sebagai gelombang. Gelombang mempunyai pola sama yang berulang pada interval tertentu, yang disebut sebagai periode [5].
Sebuah format berkas audio adalah format berkas untuk menyimpan data audio digital pada sistem komputer. Data inidapat disimpan tidak dikompresi, atau kompresi untuk mengurangi ukuran berkas.
terkodekan dengan beraneka ragam codec untuk mengurangi ukuran file.
File WAV menggunakan struktur standar RIFF dengan mengelompokan isi file ke dalam bagian-bagian seperti format WAV dan data digital audio. Setiap bagian memiliki header-nya sendiri-sendiri beserta dengan ukurannya. Struktur RIFF (Resource Interchange File Format) ini merupakan struktur yang biasa digunakan untuk data multimedia dalam Windows. Struktur ini mengatur data dalam file ke dalam bagian-bagian yang masing-masing memiliki header dan ukurannya sendiri dan disebut sebagai chunk. Struktur ini memungkinkan bagi program bila tidak mengenali bagian tertentu untuk melompati bagian tersebut dan terus memproses bagian yang dikenal. Data dari suatu bagian bisa memiliki sub-bagian dan seluruh data dalam file berstruktur RIFF selalu merupakan sub bagian dari suatu bagian yang memiliki header “RIFF”. Gambar 1 menunjukkan struktur file audio wav [5].
Gambar 1 Strukur Wav
The “RIFF” Chunk descriptor menunjukkan file format wav yang terdiri dari 2 subChunk yaitu “fmt” dan “data”. ChunkID menunjukkan terdiri dari kata “RIFF” dalam bentuk ASCII, Chunk size menunjukkan besarnya ukuran file dalam byte dikurangi 8 byte untuk 2 field yang tidk termaksut dalam hitungan, yaitu ChunkID dan Chunk size dan format terdiri dari kata “wav” dalam bentuk ASCII.
The “fmt” sub-Chunk menggambarkan format informasi suara di dalam subChunk. SubCunk1ID terdiri dari kata “fmt”, subChunk1size ukuranya sebesar data format wav “16 byte” ditambah dengan ekstra format byte yang diperlukan untuk format wav khusus, Audio Format bernilai pcm = 1(linear quantitation) jika nilai lebih dari 1mengindikasikan file wav kompresi, NumChanel menunjukkan jumlah chanel yang digunakan dalam file, Samplerate menunjukkan jumlah samplerate dalam file, Byterate mengindikasikan berapa besar byte data wav harus di-stream ke converter digital audio tiap detik sewaktu file dimainkan, Blockalign menunjukkan jumlah byte tiap potong sample dan Bitpersample menunjukkan jumlah bit yang digunakan untuk mendefinisikan tiap sample.
The “data” SubChunk2ID berisi ukuran dari informasi suara dan terdiri dari data suara mentah. SubChunk2ID terdiri dari kata “data”, SubChunk2Size menunjukkan besar ukuran data dan data berisi data audio sebenarnya [5].
2.3 Algoritma LZ77
Algoritma LZ77 (Lempel Ziv 1977) merupakan algoritma kompresi yang bersifat Loseless, yang dikembangkan oleh Abraham Lempel dan Jacob Ziv pada tahun 1977. MetodeKompresi LZ77 merupakan metode kompresi Sliding Windows Compression, struktur data yang berupa text windows akan dibagi menjadi 2 bagian, terdiri dari teks yang sudah dikodekan (history buffer) dan bagian lain dari teks yang akan dikodekan (lookahead buffer). Ukuran buffer dari masing-masing ditetapkan sebelumnya dalam implementasi, history buffer akanmemiliki panjang hingga beberapa ribu byte dan lookahead buffer memiliki panjang hanya puluhan byte [6].
keluarkan token dengan format offset bernilai jarak dari historybuffer ditemukannya pola, length match bernilai panjang pola yang ditemukan sama, dankarakter missmatch diisi 1 karakter diluar dari pola yang ditemukan. Kemudian potong karakter yang sudah diubah menjadi token tersebut dari lookahead buffer dan diisikan ke dalam historybuffer, yang menandakan karakter tersebut telah diproses kompresi. Isi lookahead buffer hinggapenuh dari barisan inputan yang tersisa, dan lakukan proses pencocokan pola karakter seperti tadi hingga ditemukan end of file. Apabila sudah ditemukan end of file dan lookahead buffer sudah tidak terdapat karakter tersisa, maka akan didapatkan token hasil kompresi LZ77 [6].
Contoh penerapan kompresi pada LZ77 tepatnya tentang pembuatan token akan dijelaskan di sini. Diketahui terdapat barisan
data string sebagai
berikut,“Data_ini_representasi_input_dari_per geseran_input_pertama_kali_dilakukan”. Misalkan di barisan tersebut telah dilakukan proses kompresi hingga string “Data_ini_representasi_input_dari_pergeseran ”. Dengan kata lain, barisan string tersebut berada di history buffer, barisan sisanya akan berada di lookahead buffer dan data inputan. Mari perhatikan Gambar 2, yang merupakan tampilan dari jendela LZ77 yang diterapkan.
Gambar 2 Jendela Kompresi LZ77
Dari Gambar 2 tepatnya pada lookahead buffer, dapat dilihat terdapat pola kesamaan dengan history buffer sepanjang 7 karakter yaitu barisan string “_input_”. Maka keluarkan nilai token dari pola yang ditemukan tersebut. Formatnya akan dituliskan seperti ini (22,7,p) yang berasal dari 22 yang merupakan nilai offset, 7 yang merupakan panjang pola, dan p adalah karakter missmatch. Kemudian dilakukan pergeseran jendela hingga menjadi terlihat seperti pada Gambar 3
Gambar 3 Pergeseran Jendela Kompresi LZ77
Dari Gambar 3 terlihat history buffer dan lookahead buffer bergeser sepanjang token pola yang ditemukan pada Gambar 3. Pada lookahead buffer juga diisi kembali sebanyak ruang yang tersedia, dengan mengambil data dari sisa inputan. Setelah itu dilakukan proses pembentukan token lagi, yang diketahui pada Gambar 3 akan menghasilkan token (17,2,t). Lalu lakukan pergeseran dan pembentukan token lagi hingga lookahead buffer berisi end of file [6].
2.4 Algoritma Huffman
Algoritma Huffman pada awalnya diperkenalkan oleh David Huffman pada tahun 1952, yang mana metode ini merupakan metode yang paling terkenal di dalam kompresi teks. Metode Kompresi Huffman melakukan penganalisaan terlebih dahulu terhadap string masukan yang akan diproses kompresi, selanjutnya nanti akan dibuat pohon Huffman yang merupakan pohon biner dengan kode pengganti yang optimal untuk simbol-simbol dengan probabilitas kemunculan yang lebih tinggi [7].
Tahap kompresi Algoritma Huffman dimulai dengan melakukan pembentukan pohon biner Huffman. Adapun langkah pembentukkan pohon Huffman sebagai berikut:
1. Membaca seluruh karakter unik di dalam barisan inputan dan hitung frekuensi kemunculannya.
2. Mengurutkan karakter berdasarkan frekuensi yang terkecil hingga terbesar. 3. Mengambil 2 karakter yang memiliki
probabilitas frekuensi terkecil dan jadikan ke dalam 1 node. Dalam node tersebut nilai probabilitas frekuensi dari kedua karakter akan dijumlahkan.
4. Mengulangi pengambilan 2 karakter seperti pada poin 3, hingga seluruh karakter dikenai proses tersebut dan menjadi pohon biner.
5. Memberikan nilai setiap simpul kiri pohon binerdengan 0 dan setiap simpul kanan dengan 1.
Contoh penerapan Algoritma Huffman adalah sebagai berikut, misal terdapat barisan karakter “abibadibib”. Diketahui bahwa setiap karakter di dalam komputer dikodekan dalam 1 Byte atau sebesar 8 bit. Barisan karakter “abibadibib” tersebut terdapat 10 karakter maka dapat dihitung menjadi: 10 x 8 bit = 80 bit. Barisan karakter tersebut dapat dikatakan membutuhkan ruang penyimpanan sebesar 80 bit atau setara dengan 8 Byte. Karakter-karakter “abibadibib” tersebut memiliki rincian kode bit yang dikenali komputer ditunjukkan pada Tabel 1.
Tabel 1 Kode ASCII Representasi “abibadibib”
Setelah mengetahui pemborosan bit tersebut, maka diterapkan kompresi Huffman pada barisan tersebut. Maka langkah yang perlu dilakukan adalah menerapkan langkah-langkah kompresi yaitu pembentukan pohon Huffman sebagai berikut :
1. Cek karakter unik dalam barisan dan hitung frekuensi kemunculannya. Urutkan dari frekuensi yang terkecil. Diketahui [d] memiliki 1 kemunculan, [a] memiliki 2 kemunculan, [i] memiliki 3 kemunculan, dan [b] memiliki 4 kemunculan.
2. Ambil 2 node terkecil yakni karakter [d] tiap simpul kanan dengan 1.
Langkah-langkah pembentukan pohon Huffman yang diterapkan pada barisan “abibadibib” dapat dilihat pada Gambar 4
Gambar 4 Pembentukan Pohon Huffman barisan “abibadibib”.
Dengan menerapkan pohon Huffman akan menghasilkan penghematan terhadap bit yang seharusnya dimiliki tiap karakter yang ada pada barisan “abibadibib”. Hal tersebut ditunjukkan pada Tabel 2.
Tabel 2 KodeHuffman untuk “abibadibib”
Dengan melakukan pengkodean ulang terhadap barisan karakter “abibadibib” maka akan didapatkan barisan bit: 0011011001000011011. Diketahui bahwa karakter [b] yang pada pengkodean ASCII membutuhkan ruang sebesar 8 bit sekarang hanya membutuhkan 1 bit, maka panjang bit karakter [b] yang terdapat di “abibadibib” awalnya sebesar 4*8bit = 32bit menjadi hanya sebesar 4*1bit = 4 bit saja. Baris karakter “abibadibib” yang mulanya membutuhkan ruang sebesar 80 bit sekarang hanya membutuhkan sebesar 19 bit [7].
2.5 Algoritma Deflate
Algoritma Deflate merupakan algoritma persilangan antara Algoritma Huffman dan Algoritma LZ77. Dalam proses kompresinya, Algoritma Deflate ini terlebih dahulu melakukan proses pengelompokan karakter dengan menggunakan Algoritma LZ77. Kemudian hasil dari pengelompokan karakter tersebut dikompresi lagi dengan menggunakan Algoritma Huffman (Huffman Tree). Algoritma Deflate ini bersifat loseless Compression. Hal ini karena Algoritma Deflate ini menggabungkan dua algoritma kompresi yang bersifat loseless.
Karakter Kode Representasi
A 01100001
Karakter Kode Representasi
a 001
b 1
d 000
Penggunaan kompresi LZ77 sebelumnya melihat teks sebagai sebuah kamus. Kompresi ini menggantikan frasa variable-length dalam
teks input dengan pointer
dengan nilai tetap kedalam kamus untuk mencapai kompresi. Jumlah yang dikompresitergantung dari seberapa panjang frasa yang ada dalam kamus, seberapa besar windowdalam teks yang terlihat, dan entropi dari teks asal sesuai dengan model LZ77.
Struktur data utama dalam LZ77 adalah sebuah window teks, dipisahkan ke dalam dua bagian. Bagian pertama berisikan sebuah blok dari teks yang baru dikodekan. Bagian yang kedua biasanya yang lebih kecil adalah look-ahead buffer. Look-ahead buffer berisi karakter-karakter yang dibaca dari stream input namun belum dikodekan. Ukuran normal dari window teks adalah beberapa ribu karakter. Look-ahead buffer umumnya lebih kecil, mungkin sepuluh sampai seratus karakter saja. Algoritma ini mencoba untuk mencocokan isi dari look-ahead buffer menjadi sebuah String di dalam kamus.
Algoritma dekompresi untuk LZ77 bahkan lebih sederhana, karena tidak perlu melakukan perbandingan. Algoritma ini membaca sebuah token, output dari frasa yang bersangkutan, output dari karakter itu, kemudian geser dan ulangi. Algoritma ini tetap menjaga window-nya, tapi tidak bekerja dengan pembandingan String.
Kode Huffman, dinamai atas penemunya yaitu D. A. Huffman, menghasilkan jumlah minimum dari kemungkinan kerangkapan dari sebuat set variable-length code dengan ukuran yang tetap. Ini tidak berarti bahwa algoritma Huffman adalah sebuah metode pengkodean yang optimal, namun dapat diartikan bahwa algoritma ini menghasilkan pendekatan terbaik untuk simbol-simbol kode ketika menggunakan kode dengan besar yang tetap.
a. Encoding
Proses encoding dari Algoritma Deflate ini dilakukan pada dua tahap. Tahap pertama adalah melakukan proses pembuatan blok-blok atau penyingkatan karakter dengan menggunakan Algoritma LZ77. Tahap kedua adalah mengambil hasil penyingkatan karakter dari algoritma LZ77 dan melakukan proses kompresi dengan menggunakan Huffman Tree terhadap karakter tersebut. Hasil dari proses
encoding Algoritma Deflate ini adalah berupa karakter yang telah disingkat yang merupakan hasil dari encoding Algoritma LZ77 dan memiliki kode biner yang lebih pendek yang merupakan hasil dari encoding Algoritma Huffman.
b. Decoding
Proses decoding pada Algoritma Deflate merupakan kebalikan dari proses encodingnya. Langkah pertama adalah melakukan proses decoding dengan menggunakan Algoritma Huffman. Kemudian langkah kedua adalah mengambil hasil dari proses decoding dengan menggunakan Algoritma Huffman dan melakukan proses decoding kembali dengan menggunakan Algoritma LZ77.
3. HASIL DAN PEMBAHASAN
Hasil pengujian sistem dapat dilihat pada perubahan ukuran file sebelum dikompresi dan sesudah dikompresi, apakah sama atau terjadi perubahan ukuran file pada saat dikompresi. Dan perubahan spesifikasi yang terjadi pada file wav dan mp3 ketika sebelum dan sesudah dikompresi dengan metodeDeflateyang mana terdapat waktu terbaik hasil kompresi dan rasio kompresi antara file wav dan mp3
Skenario percobaan ini dilakukan pada 5 sampling rate yang berbeda. Yakni sampling rate 8.000 Hz, 11.025 Hz, 22.050 Hz, 44.100 Hz, dan 48.000 Hz. Masing-masing skenario sampling rate akan menguji 5 file wav dan 5 file mp3. Tujuan percobaan ini dilakukan untuk mengetahui perbedaan rasio kompresi masing-masing sampling rate antara file wav dan mp3. Berikut adalah tabel perbedaan antara file wav dan mp3 sebelum dikompresi dengan file wav dan mp3 sesudah dikompresi.
3.1 Perbandingan Kecepatan kompresi File Wav dan Mp3.
1. Sampling rate 8.000 Hz.
Gambar 5 menunjukkan perbandingan antara kecepatan kompresi file wav dan mp3. 2. Sampling rate 11.025 Hz.
Gambar 6 menunjukkan perbandingan antara kecepatan kompresi file wav dan mp3. 3. Sampling rate 22.050 Hz.
Gambar 5 Grafik Perbandingan Kecepatan kompresi file wav dan mp3 (8.000 Hz).
Gambar 6 Grafik Perbandingan Kecepatan kompresi file wav dan mp3 (11.025 Hz)
Gambar 7 Grafik Perbandingan Kecepatan kompresi file wav dan mp3 (22.050 Hz)
4. Sampling rate 44.100 Hz.
Gambar 8 menunjukkan perbandingan antara kecepatan kompresi file wav dan mp3.
Gambar 8 Grafik Perbandingan Kecepatan kompresi file wav dan mp3 (44.100 Hz).
5. Sampling rate 48.000 Hz.
Gambar 9 menunjukkan perbandingan antara kecepatan kompresi file wav dan mp3.
Gambar 9 Grafik Perbandingan Kecepatan kompresi file wav dan mp3 (48.000 Hz).
3.2 Perbandingan Rasio Kompresi File Wav dan Mp3.
1. Sampling rate 8.000 Hz.
Gambar 10 menunjukkan perbandingan antara rasio kompresi file wav dan mp3 yang di-input dengan sampling rate 8.000 Hz.
Gambar 10 Grafik Perbandingan Rasio kompresi File wav dan mp3 (8.000 Hz)
2. Sampling rate 11.025 Hz.
Gambar 11 menunjukkan perbandingan antara rasio kompresi file wav dan mp3 yang di-input dengan sampling rate 11.025 Hz.
3. Sampling rate 22.050 Hz.
Gambar 12 menunjukkan perbandingan antara rasio kompresi file wav dan mp3 yang di-input dengan sampling rate 22.050 Hz.
Gambar 12 Grafik Perbandingan Rasio kompresi File wav dan mp3 (22.050 Hz)
4. Sampling rate 44.100 Hz.
Gambar 13 menunjukkan perbandingan antara rasio kompresi file wav dan mp3 yang di-input dengan sampling rate 44.100 Hz.
Gambar 13 Grafik Perbandingan Rasio kompresi File wav dan mp3 (44.100 Hz)
5. Sampling rate 48.000 Hz.
Gambar 14 menunjukkan perbandingan antara rasio kompresi file wav dan mp3 yang di-input dengan sampling rate 48.000 Hz.
Gambar 14 Grafik Perbandingan Rasio kompresi File wav dan mp3 (48.000 Hz)
3.3 Grafik Perbandingan Rasio Kompresi dan Kecepatan Kompresi 5 Sample Rate. Gambar 15 dan 16 menunjukkan perbandingan antara rasio kompresi 5 sample
rate dan perbandingan kecepatan kompresi 5 sample rate.
Gambar 15 Grafik Perbandingan Rasio Kompresi 5 Sample Rate
Gambar 16 Grafik Perbandingan Kecepatan Kompresi 5 Sample Rate
3.4 Analisis Pengujian
Dari beberapa file yang telah diuji kedalam sistem dapat disimpulkan bahwa,file dengan pengujian waktu tercepat terjadi pada file mp3 di sample rate 11.025 Hz dimana waktu terbaik pengujian adalah dengan rata-rata187milisecond. Sedangkan waktu terlama saat pengujian terjadi pada pengujian file wav di sample rate 48.000 Hz yaitu dengan waktu kompresi dengan rata-rata 4328 milisecond, hal ini membuktikan bahwa semakin tinggi ukuran file akan memerlukan waktu yang banyak untuk melakukan proses kompresi.
rasio terkecil pada pengujian filemp3 di sample rate 48.000 Hz dengan rasio 1,9%.
Penelitian sebelumnya mengenai kompresi fileaudio wav dan mp3 yang berjudul Analisis dan Implementasi Kompresi File Audio Dengan Menggunakan Algoritma Run Length Encoding (RLE) (Rahandi, 2013), minimum rasio kompresi untuk file wav yaitu 13,83% dan file mp3 yaitu 0,46%. Jika dibandingkan penelitian ini dengan menggunakan Algoritma Deflate maka bisa
disimpulkan bahwa kompresi Algoritma Deflate lebih baik dan dinyatakan sukses untuk mengkompres fileaudio wav dan mp3. Hal ini dibuktikan dengan rasio kompresi file wav yaitu 39,12% dan file mp3 yaitu 1,9%. Dan untuk membuktikan kualitas awal audio dan kualitas audio sesudah didekompresi apakah kualitasnya masih sama atau tidak maka akan dibuktikan dengan menggunakan aplikasi Audacity 2.1.0 dan hasilnya ditunjukkan pada Gambar 17.
Gambar 17 Perbandingan kualitas awal audio dan sesudah didekompresi
Keterangan :
A. Data awal file audio wav sebelum dikompresi.
B. Data file audio wav sesudah didekompresi.
Dari Gambar 17 tersebut dapat dilihat bahwa data awal file audio dan sesudah didekompresi ternyata kualitasnya masih sama dan tidak ada data yang berubah sedikitpun karena aplikasi kompresi ini menggunakan Algoritma Deflate yang dimana Algoritma Deflate merupakan kompresi data tipe lossless.
4. KESIMPULAN
Berdasarkan pengujian dan hasil penelitian yang dilakukan terhadap aplikasi kompresi file audio dengan Algoritma Deflate, maka dapat disimpulkan:
1. Algoritma Deflate dapat
diimplementasikan pada proses kompresi
dan dekompresi file audio berekstensi *.wav dan *.mp3.
2. Kecepatan proses kompresi file mp3 lebih cepat dibandingkan dengan file wav, dimana waktu tercepat terjadi pada file mp3 di sample rate 11.025 hz adalah dengan rata-rata187milisecond dan waktu terlama terjadi pada file wav di sample rate 48.000 hz yaitu dengan rata-rata 4328 milisecond.
3. Rasio kompresi file wav lebih tinggi dibandingkan dengan file mp3, dimana rasio kompresi tertinggi terdapat pada file wav dengan sample rate 44.100 hz, yaitu dengan rata-rata rasio sebesar 39,12% dan rasio terkecil pada filemp3 di sample rate 48.000 hz dengan rata-rata rasio 1,9%.
5. Aplikasi kompresi ini menghasilkan file audiodengan format *.def dan *.deff yang dapat dijalankan setelah didekompresi terlebih dahulu. Hal tersebut dikarenakan terjadi perubahan struktur pada file wav dan mp3 setelah melewati proses kompresi.
5. SARAN
Berikut adalah saran yang dapat penulis berikan untuk pengembangan terhadap penelitian Tugas Akhir ini :
1. Dilakukan penelitian lebih lanjut untuk membandingkan antara kompresi Deflate dengan metode kompresi yang lain sehingga akan diperoleh sebuah metode kompresi yang benar-benar memiliki kinerja optimal dalam melakukan kompresi.
2. Agar Algoritma Deflate dapat diimplementasikan untuk proses kompresi file audio berekstensi lainnya seperti *.oog, *.m4a, dan pada file lainnya seperti file citra dan file teks maupun video.
DAFTAR PUSTAKA
[1] Adiarnasa, R. (2011). Aplikasi Kompresi Data Dengan Format Berkas ZIP Menggunakan Metode Deflate, Doctoral dissertation, STMIK AKAKOM, Yogyakarta.
[2] Anton., (2009). Kompresi dan Teks, Fakultas Teknik Informatika, Universitas Kristen Duta Wacana, http://lecturer.ukdw.ac.id/anton/downl oad/multimedia6.pdf, diakses : 23 Agustus 2016.
[3] Fitriansah, A. (2006). Analisis Kinerja Algoritma Kompresi LZW, Huffman dan Deflate Pada Berbagai Jenis File, Skripsi, Fakultas Teknik Elektro, Universitas Telkom, Bandung.
[4] Lubis, N. F. (2012), Penggunaan Pohon Huffman Pada Algoritma Deflate, Sekolah Teknik Elektro &Informatika, Institut Teknologi Bandung, Bandung.
[5] Nugraha, C. P. (2014). Perbandingan Metode LZ77, Metode Huffman dan Metode Deflate Terhadap Kompresi DataTeks, Skripsi, Fakultas Teknologi Informasi, Universitas Kristen Duta Wacana, Yogyakarta.
[6] Salomon, D. (2007). Data Compression The Complete Reference
4th Edition,
Springer-Verlag, London.