Kompresi Data Analisis Perbandingan Kompresi File Video Dengan Motion Picture Expert Group-4 Dan Flash Video Dengan Menggunakan Algoritma Huffman

11 dengan pemutar musik seperti Winamp, Windows Media Player, dll. Berbeda dengan format MPEG, AVI, Mp3, dan lain-lain, bisa dengan mudah dimainkan dengan pemutar musik tersebut [10].

2.3 Kompresi Data

Kompresi berarti memampatkan atau mengecilkan ukuran. Sedangkan kompresi data adalah proses mengkodekan informasi menggunakan bit atau information-bearing unit yang lain yang lebih rendah daripada representasi data yang tidak terkodekan dengan suatu sistem encoding tertentu. Contoh kompresi sederhana yang biasa dilakukan misalnya adalah menyingkat kata-kata yang sering digunakan tapi sudah memiliki konvensi umum, misalnya : kata “yang” dikompres menjadi kata “yg’’ [1]. Pengiriman data hasil kompresi dapat dilakukan jika pihak pengirim atau yang melakukan kompresi dan pihak penerima memiliki aturan yang sama dalam hal kompresi data. Pihak pengirim harus menggunakan algoritma kompresi data yang sudah baku dan pihak penerima juga menggunakan teknik dekompresi data yang sama dengan pengirim sehingga data yang diterima dapat dibacadi-decode kembali dengan benar [1]. Kompresi data menjadi sangat penting karena memperkecil kebutuhan penyimpanan data, mempercepat pengiriman data, memperkecil kebutuhan bandwidth . Teknik kompresi bisa dilakukan terhadap data teksbiner, gambar JPEG, PNG, TIFF, audio MP3, AAC, RMA, WMA, dan video MPEG, H261, H263 [1]. Contoh kebutuhan data selama 1 detik pada layar resolusi 640 x 480 [1] : 1. Data Teks 1 karakter = 2 bytes termasuk karakter ASCII Extended Setiap karakter ditampilkan dalam 8x8 pixels Jumlah karakter yang dapat ditampilkan per halaman = 8x8 480 x 640 = 4800 karakter. Kebutuhan tempat penyimpanan per halaman = 4.800×2 byte = 9.600 byte = 9.375 Kbyte Universitas Sumatera Utara 12 2. Data Grafik Vektor 1 still image membutuhkan 500 baris, setiap 1 baris direpresentasikan dalam posisi horisontal, vertikal, dan field atribut sebesar 8-bit, Sumbu Horizontal direpresentasikan dengan log2 640 = 10 bits , Sumbu Vertikal direpresentasikan dengan log2 480 = 9 bits,Bits per line = 9 bits + 10 bits + 8 bits = 27 bits Storage required per screen page = 500 × 27 8 = 1687,5 byte = 1,65 Kbyte 3. Color Display Jenis : 256, 4.096, 16.384, 65.536, 16.777.216 warna Masing-masing warna pixel memakan tempat 1 byte Misal 640 x 480 x 256 warna x 1 byte = 307.200 byte = 300 Kbyte.

2.3.1 Jenis-Jenis Kompresi Data

Jenis-jenis kompresi data dapat dibedakan atas [1] : 1. Jenis Kompresi Data Berdasarkan Mode Penerimaan Data oleh Manusia Jenis kompresi data ini dapat dibedakan atas : a. Dialoque Mode, yaitu proses penerimaan data di mana pengirim dan penerima seakan berdialog real time, seperti pada contoh video conference. Di mana kompresi data harus berada dalam batas penglihatan dan pendengaran manusia. Waktu tunda delay tidak boleh lebih dari 150 ms, di mana 50 ms untuk proses kompresi dan dekompresi, 100 ms mentransmisikan data dalam jaringan. b. Retrieval Mode, yaitu proses penerimaan data tidak dilakukan secara real time. Pada jenis ini dapat dilakukan fast forward dan fast rewind di client atau dapat dilakukan random access terhadap data dan dapat bersifat interaktif. 2. Jenis kompresi berdasarkan output dapat dibedakan atas [5] : a. Lossy Compression Kompresi Lossless memiliki batasan pada jumlah kompresi. Namun, dalam beberapa situasi, kita bisa mengorbankan akurasi untuk meningkatkan tingkat kompresi. Meskipun kita tidak mampu kehilangan informasi dalam kompresi teks, kita bisa membelinya ketika kita mengompresi gambar, video, dan Universitas Sumatera Utara 13 audio. Misalnya, penglihatan manusia tidak dapat mendeteksi beberapa distorsi kecil yang dapat hasil dari kompresi lossy dari suatu gambar. b. Lossless compression Dalam Lossless compresion, integritas data sangat terjaga karena algoritma kompresi dan dekompresi invers tepat satu sama lain: tidak ada bagian dari data yang hilang dalam proses. Metode kompresi lossless biasanya digunakan ketika kita tidak ingin kehilangan data apapun. Misalnya, kita tidak boleh kehilangan data ketika kita kompres file teks atau program aplikasi. Kompresi lossless juga diterapkan sebagai langkah terakhir dalam beberapa prosedur kompresi lossy untuk mengurangi ukuran data. Empat contoh metode kompresi lossless dalam bagian ini: run length coding, dictiinary coding , Huffman coding, dan arithmatic coding.

2.3.2 Kriteria dan Klasifikasi Teknik Kompresi Data

Adapun kriteria utama dari sebuah sistem yang bisa digunakan untuk kompresi data adalah sebagai berikut [1]: 1. Kualitas data hasil enkoding harus bisa membuat ukuran file lebih kecil dari file sumber, serta data tidak rusak untuk kompresi lossy. 2. Kecepatan, ratio, dan efisiensi proses kompresi dan dekompresi. 3. Ketepatan proses dekompresi data harus bisa membuat data hasil dekompresi tetap sama dengan data sebelum dikompres kompresi loseless. Sedangkan klasifikasi teknik kompresi data adalah sebagai berikut [1]: 1. Entropy Encoding Teknik kompresi ini memiliki ciri-ciri sebagai berikut : a. Bersifat loseless b. Tekniknya tidak berdasarkan media dengan spesifikasi dan karakteristik tertentu namun berdasarkan urutan data. c. Statistical encoding, tidak memperhatikan semantik data. d. Misalnya : Run-length coding, Huffman coding, Arithmetic coding 2. Source Coding Teknik kompresi ini memiliki ciri-ciri sebagai berikut : Universitas Sumatera Utara 14 a. Bersifat lossy b. Berkaitan dengan data semantik arti data dan media. c. Misalnya : Prediction DPCM, DM, Transformation FFT, DCT, Layered Coding Bit position, subsampling, sub-band coding, Vector Quantization. 3. Hybrid Coding Teknik kompresi ini memiliki ciri-ciri sebagai berikut : a. Gabungan antara lossy + loseless b. Misalnya JPEG, MPEG, H.261, DVI

2.3.3 Aplikasi Kompresi

Aplikasi kompresi data sudah banyak dijual dipasaran dalam berbagai bentuk format file . Adapun beberapa format file yang bisa digunakan untuk kompresi file, antara lain: 1. ZIP File Format Oleh Phil Katz untuk program PKZIP kemudian dikembangkan untuk WinZip, WinRAR, 7-Zip. File hasil kompresi berekstensi .zip dan MIME application zip. Format ini dapat menggabungkan dan mengkompresi beberapa file sekaligus menggunakan bermacam-macam algoritma, namun paling umum menggunakan Katz’s Deflate Algorithm. Adapun beberapa method Zip yang sering digunakan adalah shrinking yang merupakan metode variasi dari LZW, reducing merupakan metode yang mengkombinasikan metode same byte sequence based dan probability based encoding imploding yang menggunakan metode byte sequence based dan Shannon-Fano encoding, deflate yang menggunakan LZW, Bzip2 dan lain-lain. AplikasiWinZip dibuat oleh Nico-Mak Computing [1]. 2. RAR bagian, 3.20 Diciptakan oleh Eugene Roshal. RAR memiliki dua mode kompresi, umum dan khusus. Modus umum menggunakan algoritma berbasis LZSS mirip dengan Deflate ZIP. Ukuran menggeser kamus dalam RAR dapat bervariasi dari 64 Kb sampai 4 MB dengan 4 MB nilai default dan minimum match length adalah 2. Literals, offsets, dan match length yang dikompresi lebih lanjut dengan Huffman coder. Sebuah fitur penting atau RAR adalah kode error-control yang meningkatkan kehandalan arsip RAR ketika sedang dikirim atau disimpan [11]. Universitas Sumatera Utara 15

2.3.4 Rasio Kompresi

Menurut David Salomon 2007, tingkat pengurangan data yang dicapai sebagai hasil dari proses kompresi disebut rasio kompresi. Rasio ini merupakan perbandingan antara panjang data string asli dengan panjang data string yang sudah dikompresi, seperti dituliskan dalam persamaan berikut: ����� = ������ ���� ���� ������ ���� ����������� Jika dinyatakan dalam persentasemaka dituliskan dalam persamaan berikut: � = 1 − ������ ���� ����������� ������ ���� ���� × 100 Yang berarti ukuran file berkurang sebesar P dalam persentase dari ukuran semula. Semakin tinggi rasio tingkat suatu teknik kompresi data maka semakin efektif teknik kompresi tersebut [11].

2.4 Algoritma