Teknik pengkodean lossless mengurangi ukuran file digital.
Encoding lossless, atau kompresi lossless, mengacu pada proses pengkodean data lebih efisien sehingga menempati bit atau byte lebih sedikit tetapi sedemikian rupa sehingga data asli dapat direkonstruksi, bit-untuk-bit, ketika data didekompresi. Keuntungan dari teknik pengkodean lossless adalah bahwa mereka menghasilkan duplikat yang tepat dari data asli tetapi mereka juga memiliki beberapa kelemahan jika dibandingkan dengan teknik pengkodean lossy.
Rasio kompresi
Teknik pengkodean lossless tidak dapat mencapai tingkat kompresi yang tinggi. Beberapa teknik pengkodean lossless dapat mencapai rasio kompresi lebih tinggi dari 8:1 yang dibandingkan secara tidak menguntungkan dengan apa yang disebut teknik pengkodean lossy. Teknik pengkodean lossy -- yang mencapai kompresi dengan membuang beberapa data asli -- dapat mencapai rasio kompresi 10:1 untuk audio dan 300:1 untuk video dengan sedikit atau tanpa kehilangan kualitas. Menurut New Biggin Photography Group, gambar warna RGB 24-bit 1.943 kali 1.702 piksel dengan ukuran asli 9,9 megabita hanya dapat dikurangi menjadi 6,5 megabyte menggunakan format PNG lossless tetapi dapat dikurangi menjadi hanya 1 megabyte menggunakan JPEG lossy format.
Video Hari Ini
Waktu Transfer
Setiap aplikasi yang melibatkan penyimpanan atau pendistribusian gambar digital, atau keduanya, mengandaikan bahwa operasi ini dapat diselesaikan dalam jangka waktu yang wajar. Waktu yang dibutuhkan untuk mentransfer gambar digital tergantung pada ukuran gambar yang dikompresi dan sebagai rasio kompresi yang dapat dicapai dengan: teknik encoding lossless jauh lebih rendah daripada teknik encoding lossy, teknik encoding lossless tidak cocok untuk aplikasi ini.
Pengkodean Huffman
Banyak teknik pengkodean lossless, termasuk PNG, menggunakan bentuk pengkodean yang dikenal sebagai pengkodean Huffman. Dalam pengkodean Huffman, semakin sering simbol muncul dalam data asli, semakin pendek string biner yang digunakan untuk mewakilinya dalam data terkompresi. Namun, pengkodean Huffman membutuhkan dua lintasan, satu untuk membangun model statistik data dan yang kedua untuk menyandikannya sehingga merupakan proses yang relatif lambat. Ini pada gilirannya berarti bahwa teknik pengkodean lossless yang menggunakan pengkodean Huffman lebih lambat daripada teknik lain saat membaca atau menulis file.
Penguraian kode
Kerugian lain dari pengkodean Huffman adalah bahwa string atau kode biner dalam data yang dikodekan memiliki panjang yang berbeda. Hal ini mempersulit perangkat lunak decoding untuk menentukan kapan ia telah mencapai bit terakhir data dan apakah data yang dikodekan adalah rusak -- dengan kata lain berisi bit palsu atau ada bit yang hilang -- kode akan salah diterjemahkan dan outputnya akan omong kosong.