tooly

Kompres GIF online

GIF animasi berukuran besar karena setiap frame menyimpan gambarnya sendiri. Turunkan frame rate, ukuran, dan palet warna, dan file akan menyusut — biasanya 60–80%, dengan animasi tetap utuh.

File Anda tidak pernah keluar dari browser

Cara menggunakan

  1. 1

    Pilih tingkat kompresi — Sedang cocok untuk kebanyakan GIF.

  2. 2

    Taruh GIF ke kotak atau klik untuk memilih.

  3. 3

    Unduh GIF yang lebih kecil, atau proses beberapa file sekaligus dan ambil ZIP-nya.

Mengapa GIF bisa begitu berat

GIF berasal dari tahun 1987 dan dirancang untuk grafik kecil di koneksi lambat, bukan untuk video. Format ini menyimpan setiap frame sebagai gambar terpisah yang dikompresi dengan LZW, metode lossless yang bekerja baik pada area warna rata dan buruk pada apa pun yang ber-noise, seperti rekaman kamera, gradien, atau grain film. Tidak ada kompensasi gerak seperti pada codec video modern, sehingga klip tiga detik pada 25 frame per detik berarti 75 gambar yang hampir utuh, dikemas satu demi satu.

Setiap frame juga dibatasi 256 warna. Saat GIF dibuat dari video, encoder sering menebarkan noise dithering di setiap frame untuk memalsukan gradasi warna yang hilang, dan noise itulah yang paling buruk dikompresi oleh LZW. Itulah sebabnya GIF reaksi berukuran 15 MB yang sudah sangat familiar itu bisa jadi hanya 600 KB jika berupa MP4.

Ukuran file bergantung pada jumlah frame, jumlah piksel per frame, dan detail warna. Alat ini mengurangi ketiganya.

Apa yang sebenarnya dilakukan ketiga level

Alat ini menjalankan FFmpeg yang dikompilasi ke WebAssembly di dalam browser Anda dan membangun ulang GIF dalam dua tahap. Tahap pertama menganalisis seluruh animasi dan membuat satu palet yang dioptimalkan untuknya; tahap kedua merender ulang setiap frame menggunakan palet tersebut. Frame diskalakan dengan filter Lanczos, yang menjaga tepi tetap lebih tajam dibanding resampling sederhana, dan warna dipetakan dengan ordered (Bayer) dithering, yang menghasilkan pola teratur yang jauh lebih mudah dikompresi daripada noise acak.

  • Ringan — 15 frame per detik, dimensi asli, hingga 256 warna. Paling cocok jika GIF harus tetap pada ukurannya saat ini, misalnya demo UI yang harus terbaca hingga ke level piksel.
  • Sedang — 12 frame per detik, lebar dan tinggi dikurangi menjadi 75%, hingga 128 warna. Ini pengaturan default, dan keseimbangan yang baik untuk sebagian besar GIF di situs web, dokumentasi, dan obrolan.
  • Kuat — 10 frame per detik, setengah lebar dan tinggi, hingga 64 warna. Gunakan saat Anda harus memenuhi batas yang ketat, seperti lampiran email atau batas unggahan di forum.

Memperkecil dimensi menjadi setengah saja sudah menghilangkan tiga perempat piksel, itulah sebabnya Kuat bisa mengubah file 12 MB menjadi kurang dari 2 MB. Waktu animasi tetap dipertahankan: loop tiga detik tetap berdurasi tiga detik, hanya digambar dengan lebih sedikit frame.

Memilih level sesuai konten

Jenis animasi lebih menentukan daripada ukuran file awal Anda.

  • Rekaman layar dan panduan UI memiliki area datar yang luas dan teks tajam. Konten seperti ini tahan terhadap pengurangan warna, tetapi terganggu oleh penskalaan ke bawah karena teks kecil menjadi tidak terbaca. Coba Ringan terlebih dahulu; jika masih terlalu besar, potong rekaman ke area yang relevan sebelum mengompres.
  • Ilustrasi, logo, dan stiker dengan sedikit warna datar terlihat hampir identik pada 64 warna. Kuat biasanya berhasil, kecuali gambarnya memang sudah kecil.
  • Klip dari video atau rekaman kamera memiliki gradien, warna kulit, dan langit. Pada 64 warna akan muncul banding, jadi Sedang adalah pilihan yang lebih aman. Jika Sedang pun masih terlalu besar, kemungkinan klipnya terlalu panjang untuk format GIF.
  • Pixel art sebaiknya tidak diskalakan sama sekali. Gunakan Ringan, yang mempertahankan dimensi asli.

Jika Anda membuat GIF dari video, biasanya lebih baik mengendalikan ukuran sejak tahap pembuatan dengan Konversi video ke GIF dan menjaga klip tetap pendek, lalu mengompres hasilnya jika diperlukan.

Jika hasilnya tidak sesuai harapan

  • Ukuran file hampir tidak berkurang. Sumbernya kemungkinan sudah dioptimalkan, misalnya berukuran kecil, frame rate rendah, atau sudah dibatasi ke sedikit warna. GIF yang berjalan pada 8–10 fps hanya mendapat sedikit manfaat dari pengurangan frame rate. Naikkan satu level.
  • Banding terlihat pada gradien. Itu akibat palet 128 atau 64 warna. Turunkan ke level yang lebih ringan.
  • Muncul tekstur seperti kisi-kisi. Ini adalah pola ordered dither. Paling terlihat pada gradien halus di level Kuat; Ringan atau Sedang menguranginya.
  • Warna aneh di satu adegan. Karena satu palet digunakan bersama oleh seluruh animasi, adegan pendek dengan warna yang tidak biasa (kilatan merah di klip yang dominan biru) mendapat lebih sedikit slot palet.

Batasan dan privasi

File hingga 100 MB diterima, dan Anda bisa menjatuhkan beberapa GIF sekaligus. File diproses satu per satu dengan level yang dipilih saat itu, dan setiap hasil menampilkan ukurannya sebelum dan sesudah kompresi. Unduh satu per satu atau sekaligus dalam satu ZIP.

Tidak ada yang diunggah. Mesin FFmpeg diunduh sekali, lalu berjalan secara lokal, sehingga kecepatan pemrosesan bergantung pada perangkat Anda. GIF 20 MB biasanya memerlukan waktu beberapa detik hingga satu menit; ponsel lebih lambat daripada laptop, dan animasi yang sangat panjang bisa kehabisan memori di perangkat lama.

FAQ

Seberapa besar ukurannya berkurang?

Biasanya 60–80%. Ringan mempertahankan ukuran dan palet penuh dan hanya menurunkan frame rate, Sedang menskalakan frame ke 75% dengan 128 warna, Kuat dibuat untuk batas ukuran chat dan email.

Apakah animasinya tetap looping?

Ya. Timing frame dan looping dipertahankan; yang berubah hanya frame rate, dimensi, dan jumlah warna.

Apakah GIF saya diunggah?

Tidak. FFmpeg berjalan sebagai WebAssembly di browser Anda.

Kenapa kualitas turun di mode Kuat?

Mode ini memangkas palet jadi 64 warna, menurunkan frame rate ke 10 fps, dan membelah dua dimensinya. Gradasi jadi bergaris; grafik datar dan rekaman layar tetap terlihat baik.

Sebaiknya pakai video saja?

Untuk apa pun yang lebih dari beberapa detik, ya — MP4 jauh lebih kecil. Pakai Konversi video ke GIF sebaliknya hanya jika format GIF memang diperlukan.

Baca juga

Alat terkait