AI di perangkat — profesional dan privat.

Pengubah Kecepatan GIF

Kecepatan GIF: lebih cepat atau lambat, tanpa menyentuh piksel.

  • Tanpa unggahan
  • Piksel utuh
  • 0,1x sampai 10x
  • Kendali pengulangan

Letakkan GIF di sini

GIF, WebP animasi, atau APNG

Kecepatan
Tentukan kecepatan lewat
2x

Faktor dan Durasi mempertahankan irama animasi. Laju bingkai menggantinya dengan satu jeda untuk semua bingkai.

Jika batas 20 ms menghalangi
Jika batas 20 ms menghalangi

Membuang adalah satu-satunya jalan melewati batas itu, dan itu membangun ulang berkas alih-alih menambalnya.

Pemutaran
Pemutaran
Jika berkas harus dibangun ulang
256
Dithering

Hanya berlaku ketika pembangunan ulang tak terhindarkan — sumber WebP atau APNG, atau bingkai yang dibuang.

Cara mengubah kecepatan GIF

Percepat atau perlambat GIF animasi dengan sebuah faktor, durasi persis, atau laju bingkai, tanpa mengubah satu piksel pun dari gambarnya.

  1. 1

    Tambahkan GIF Anda

    Seret GIF animasi ke area unggah, atau klik untuk menelusuri. WebP animasi dan APNG juga bisa. Berkas dibaca di perangkat Anda dan tidak pernah diunggah.

  2. 2

    Pilih cara menyatakannya

    Berdasarkan faktor adalah pilihan biasa: 2x untuk dua kali lebih cepat, 0,5x untuk setengahnya. Pilih Durasi kalau Anda tahu berapa detik yang harus diisi, atau Laju bingkai kalau setiap bingkai harus tampil sama lamanya.

  3. 3

    Periksa kecepatan yang benar-benar tercapai

    Panel menampilkan kecepatan yang diminta di samping yang tercapai. Keduanya hanya berbeda ketika sebuah bingkai membutuhkan jeda di bawah 20 milidetik, yang tidak dihormati penampil mana pun — dan kalau itu terjadi Anda diberi tahu, bukan diam-diam diberi sesuatu yang lebih lambat.

  4. 4

    Unduh GIF yang sudah diatur ulang

    Tekan Unduh. Untuk GIF sebagai masukan, hanya penanda waktunya yang berubah: tabel warna, data gambar terkompresi, dan transparansi adalah byte yang masuk.

Mengapa mengubah kecepatan GIF

Hampir setiap GIF datang dengan laju yang keliru. Rekaman layar yang diambil pada sepuluh bingkai per detik terasa seperti tayangan salindia padahal seharusnya mengalir. Klip reaksi yang dipotong dari video berjalan begitu cepat sampai lelucon selesai sebelum ada yang membacanya. Animasi hasil ekspor alat desain menahan setiap bingkai sepersepuluh detik karena itulah nilai bawaannya, bukan karena ada yang memilihnya. Kecepatan adalah koreksi termurah di seluruh kategori ini, karena tidak seperti memotong, mengubah ukuran, atau mengompresi, ia sama sekali tidak memakan biaya: gambarnya tidak berubah, hanya saat kemunculan masing-masing.

Pilih faktor, durasi persis, atau laju bingkai, lalu lihat kecepatan yang benar-benar tercapai sebelum mengunduh.

Membaca GIF, WebP animasi, dan APNG. GIF sebagai masukan diatur ulang dengan menambal bidang jedanya, jadi tabel warna, data gambar terkompresi, dan transparansi keluar sebagai byte yang masuk.

Apa yang sebenarnya didapat dari mengatur ulang waktu

  • Keterbacaan. Peragaan yang tak bisa diikuti siapa pun bukanlah peragaan. Memperlambat rekaman menjadi setengah kecepatan sering jadi pembeda antara klip yang menjelaskan sesuatu dan klip yang hanya membuktikan bahwa hal itu terjadi.
  • Perhatian. GIF reaksi adalah lelucon dengan irama. Dua kali lipat adalah perbaikan standar untuk cuplikan dari video sungguhan, yang hampir selalu terlalu lambat begitu konteksnya hilang.
  • Ruang yang tetap. Pengulangan yang harus muat di bawah salindia, di samping judul, atau di dalam suntingan video punya panjang yang harus dipenuhi. Mode Durasi mengisinya persis, bukan kira-kira.
  • Tanpa biaya kualitas sama sekali. Setiap suntingan lain di bagian ini menukar sesuatu. Mengatur ulang waktu tidak menukar apa pun: gambar yang keluar adalah gambar yang masuk, byte demi byte.

Mengatur ulang waktu tanpa enkode ulang

GIF adalah wadah berisi blok berawalan panjang. Setiap bingkai didahului sebuah Graphic Control Extension kecil yang membawa jedanya dalam dua byte, lalu diikuti gambar terkompresinya. Mengubah kecepatan berarti mengubah dua byte itu per bingkai, dan sama sekali tidak ada yang lain. Bukan begitu cara kerja alat kecepatan GIF daring: mereka membongkar animasinya, mengkuantisasinya ke palet baru, menghitung ulang selisih antar bingkai, dan menulis berkas baru, karena itulah yang dilakukan pipa pengolah gambar umum terhadap apa pun yang diserahkan padanya. Hasilnya adalah gambar yang melewati langkah berkualitas turun kedua untuk perubahan yang sebenarnya tak perlu menyentuhnya.

Apa yang dilakukan alat ini sebagai gantinya

  • Membaca struktur bloknya. Berkas ditelusuri sebagai blok, bukan dibongkar. Itu mencatat di mana setiap bidang jeda berada, di mana penghitung pengulangan berada, dan di mana data terkompresi setiap bingkai dimulai dan berakhir.
  • Merencanakan waktunya. Jeda baru setiap bingkai dihitung selagi faktor yang diminta masih diketahui, dibulatkan ke kisi perseratus milik format itu sendiri, dan dibatasi pada batas bawah 20 ms yang dipaksakan penampil.
  • Menyambung, bukan menulis. Keluarannya dirakit dari rentang yang disalin dari aslinya dengan bidang jeda diganti di antaranya. Data gambar terkompresi tidak pernah dibaca, apalagi ditulis ulang.
  • Membuktikannya. Rentang data setiap bingkai keluaran dibandingkan dengan masukannya sebelum berkas diserahkan, jadi «pikselnya tidak disentuh» adalah pemeriksaan yang dilakukan alat ini, bukan klaim yang diucapkannya.

Yang tidak boleh diubah pengubah kecepatan

Dua hal, dan hanya satu yang kentara. Jumlah bingkai adalah yang pertama: perubahan kecepatan mengatur ulang waktu bingkai yang ada dan tidak boleh diam-diam membuang atau menggandakan satu pun, karena animasi yang lebih pendek pada laju yang sama tampak identik dengan animasi yang lebih cepat sampai Anda menghitungnya. Yang kedua adalah bentuk waktunya. Jeda pada GIF sungguhan lazimnya tidak rata — pose yang ditahan, sapuan cepat, pose ditahan lagi — dan alat yang mengganti semuanya dengan satu angka menghasilkan sesuatu yang berdurasi tepat tetapi bukan animasi yang sama. Keduanya diperiksa di sini pada setiap jalannya, per bingkai dan bukan totalnya, karena total bisa benar sementara sebarannya salah.

Masalah perseratus detik

Jeda GIF adalah bilangan bulat tak bertanda dalam perseratus detik. Satu detail itu berada di balik hampir semua keluhan tentang alat kecepatan GIF. Himpunan yang bisa dicapai itu kasar — 10, 20, 30 milidetik dan seterusnya — jadi faktor yang diminta jarang jatuh pada nilai yang bisa diwakili, dan di mana pembulatan terjadi menentukan apakah permintaannya bertahan. Lebih buruk lagi, bagian bawah rentangnya tidak terpakai: jeda 0 atau 1 perseratus berarti «secepat mungkin» bagi setiap penampil yang pernah ditulis, dan semuanya menggantinya dengan sekitar 100 milidetik. Berkas yang meminta 10 milidetik karenanya berjalan sepuluh kali lebih lambat dari yang diminta, dan itulah kegagalan paling membingungkan dari format ini.

Perilaku terukur

  • Batas atas yang sebenarnya 20 ms per bingkai, yaitu 50 bingkai per detik. Sumber 100 ms mencapai tepat 5x dengan seluruh bingkai — permintaan 10x dilaporkan jujur sebagai 5x, bukan diberikan diam-diam.
  • Membulatkan di tempat yang tepat Bingkai 51 ms pada 2x menjadi 30 ms kalau penulisnya membulatkan terakhir, dan 30 ms juga di sini — tetapi faktor yang tercapai, 1,70x, ditampilkan alih-alih disebut 2x.
  • Ketepatan di mode Durasi Animasi 1.600 ms yang diminta mengisi 3.000 ms keluar tepat 3.000 ms, karena sisa pembulatannya dibawa dari satu bingkai ke berikutnya alih-alih dibuang.
  • Biaya jalur tanpa kehilangan GIF 20 bingkai diatur ulang dalam milidetik satu digit dan hanya satu bingkai yang dibongkar, berapa pun panjang animasinya. Membangun ulang berkas yang sama makan waktu ratusan kali lebih lama dan mengubah gambarnya.

Memilih kecepatan yang berhasil

Mulailah dari laju bingkai sumbernya sendiri, bukan dari pengali. Rekaman yang menahan setiap bingkai 100 milidetik berjalan pada 10 bingkai per detik, dan 2x menjadikannya 20 — cukup mulus untuk kebanyakan isi layar. 2x yang sama pada klip yang sudah 25 bingkai per detik meminta 50, yaitu batas atas format, dan 3x meminta sesuatu yang tak akan dihormati penampil mana pun. Panel menampilkan jumlah bingkai dan durasi total sumber sebelum Anda memutuskan apa pun, dan menampilkan kecepatan yang benar-benar tercapai sebelum Anda mengunduh.

Menurut bahan

  • Rekaman layar. Biasanya diambil terlalu lambat. 1,5x sampai 2x adalah rentang yang membuat peragaan terasa mantap alih-alih lamban. Lebih jauh dari itu, gerakan penunjuk jadi sulit diikuti.
  • Klip reaksi dari video. Biasanya terlalu lambat begitu konteks sekelilingnya hilang. 2x adalah perbaikan bawaan; 3x lazim dan jarang perlu lebih.
  • Tutorial dan penjelasan. 0,5x, dan nilailah hasilnya alih-alih angkanya. Langkah yang terbaca pada kecepatan normal belum tentu terbaca ketika setiap bingkai bertahan dua kali lebih lama — tapi sapuan cepat biasanya membaik.
  • Animasi dengan jeda yang disengaja. Tetaplah di mode Faktor atau Durasi. Mode Laju bingkai akan meratakan jedanya, dan jeda itu biasanya justru intinya.

Kapan GIF yang diatur ulang adalah jawabannya

  • Dokumentasi dan berkas README. Alur kerja yang direkam pada kecepatan tangkapnya hampir selalu terlalu lambat untuk menahan pembaca. Mempercepatnya adalah suntingan termurah yang ada dan tidak memakan kualitas sama sekali.
  • Salindia dan suntingan video. Pengulangan yang harus mengisi celah yang diketahui. Mode Durasi mengisinya persis, satu-satunya cara menghindari mulai ulang yang terlihat di tengah jalan.
  • GIF reaksi dan meme. Waktunya adalah leluconnya. Seperempat detik terlalu lambat dan ia tidak mengena.
  • Emoji dan stiker. Animasi kecil tampil di kotak kecil, dan pengulangan cepat terbaca sebagai gerakan sementara yang lambat terbaca sebagai gambar rusak.

Kecepatan yang perlu diketahui

10 bingkai per detik adalah jeda 100 ms dan nilai bawaan paling umum di alat perekam. 15 bpd sekitar 70 ms dan merupakan kompromi biasa untuk isi layar. 20 bpd adalah 50 ms dan terlihat benar-benar mulus. 25 bpd adalah 40 ms. 50 bpd, jeda 20 ms, adalah batas atas format dan titik di mana tidak ada penampil yang mau lebih cepat. Apa pun yang pernah Anda lihat disebut GIF 60 bpd sebenarnya GIF 50 bpd yang sedang optimistis.

Apa yang masuk dan apa yang keluar

Daftar masukannya tertutup dan diberlakukan di dialog berkas alih-alih di mesin pemrosesnya, jadi berkas yang tidak bisa dibuka alat ini ditolak dalam hitungan milidetik dengan jalan menuju alat yang bisa — alih-alih diterima lalu gagal belakangan di balik indikator pemuatan.

  • GIF masuk, GIF keluar. Jalur tanpa kehilangan. Beranimasi atau satu bingkai, terjalin atau tidak, GIF87a atau GIF89a, dengan palet global atau palet lokal berbeda di tiap bingkai: waktunya diubah dan sisanya disalin.
  • WebP animasi dan APNG masuk. Keduanya dibaca pembongkar kami sendiri di semua peramban, jadi bingkai dan waktunya identik di mana pun. Keluarannya berupa GIF, yang menjadikan jalur ini sebuah konversi sehingga gambarnya dibangun ulang.
  • Berkas tanpa blok waktunya. GIF tanpa Graphic Control Extension tidak punya jeda untuk diubah, jadi satu blok disisipkan dan tajuk GIF87a dinaikkan ke 89a — itulah yang membuat perubahannya sah dan bukan sekadar ada.
  • Selebihnya ditolak dengan sebuah jalan. Video diarahkan ke Video ke GIF, gambar diam ke Pembuat GIF.

Apa yang dibaca alat ini

Untuk jalur tanpa kehilangan, tidak ada yang dibongkar sama sekali: berkas ditelusuri sebagai deretan blok berawalan panjang, yang merupakan pembacaan tajuk dan bukan dekompresi. Ketika pembangunan ulang memang diperlukan — sumber WebP atau APNG, atau permintaan yang membuang bingkai — GIF dibongkar secara asli di tempat peramban punya pembongkarnya dan oleh pembaca kami sendiri di tempat lain, jadi animasi terbuka sama di setiap mesin alih-alih datang sebagai bingkai pertamanya saja.

Batas ukuran dan kumpulan

  • Gratis. Satu berkas sampai 50 MB, sampai 300 bingkai, sampai 2048 piksel pada sisi terpanjang. Kualitas penuh dan jalur tanpa kehilangan yang sama — paket gratis bukan perubahan kecepatan berkualitas rendah, melainkan yang satu berkas.
  • Pro. Sampai 20 berkas sekaligus, diunduh sebagai satu ZIP, tanpa batas bingkai atau dimensi yang dipaksakan. Kumpulan itulah yang dibeli Pro di sini, karena mengatur ulang folder berisi rekaman satu per satu adalah pekerjaan yang sebenarnya melelahkan.
  • Batas yang dimiliki kedua paket. Formatnya sendiri. 20 milidetik adalah jeda terpendek yang dihormati penampil mana pun, jadi tidak ada paket yang bisa membuat animasi berjalan lebih cepat dari 50 bingkai per detik tanpa menampilkan lebih sedikit bingkai.

Apa yang terjadi di perangkat Anda

Tidak ada yang diunggah. Untuk GIF, berkas dibaca sekali, struktur bloknya dipetakan, jeda barunya dihitung, dan keluarannya dirakit dari rentang yang disalin dari aslinya — tanpa pembongkaran, tanpa palet, tanpa kompresi. Ketika pembangunan ulang memang diperlukan, bingkai dibongkar, palet dibangun untuk seluruh animasi, dan GIF89a standar ditulis. Keduanya berjalan di utas latar agar halaman tetap responsif, dan langkah pemetaannya memakai perangkat keras grafis Anda di tempat yang mendukungnya.

Mengapa hasilnya bisa diperkirakan

  • Satu aturan waktu, dipakai bersama. Pembulatan dan batas bawah 20 ms tinggal dalam satu fungsi yang juga dipakai alat pembalik dan pemotong, jadi tiga alat tidak bisa melenceng menjadi tiga gagasan berbeda tentang apa itu jeda.
  • Berkas dibaca ulang sebelum diserahkan. Jumlah pemutaran dan jeda per bingkai yang tampil di layar dibaca dari byte yang sudah jadi, bukan dari permintaannya — satu-satunya angka yang bisa salah pada kontrol pengulangan adalah yang ia kira sudah ditulisnya.
  • Diperiksa dengan implementasi lain. Waktu keluaran diverifikasi dengan libvips, pustaka gambar yang sepenuhnya terpisah, yang membaca daftar jeda per bingkai langsung dari byte yang dihasilkan alat ini.
  • Pembangunan ulang yang deterministik. Ketika enkode ulang tak terhindarkan, ia memakai median cut alih-alih pengkuantisasi acak yang dipakai kebanyakan pustaka GIF, jadi masukan yang sama dengan pengaturan yang sama selalu menghasilkan keluaran yang sama.

Untuk GIF, seluruh perubahannya hanyalah tambalan penanda waktu: satu bingkai dibongkar, semua piksel disalin, dan keluarannya diperiksa rentang demi rentang terhadap masukannya sebelum diserahkan. Ketika pembangunan ulang memang diperlukan, pemetaan palet dipercepat perangkat keras di perangkat yang mendukungnya, dan jalur cepat maupun jalur cadangan menghasilkan byte yang identik. Semua berjalan di perangkat Anda, bukan di server kami.

Pertanyaan yang sering diajukan

Apakah mengubah kecepatan menurunkan kualitas GIF saya?

Di sini tidak. Kecepatan tersimpan dalam delapan byte per bingkai — sebuah Graphic Control Extension yang membawa jeda — dan mengubahnya sama sekali tidak memerlukan pembongkaran gambar. Alat ini mengubah bidang-bidang itu di dalam berkas asli Anda dan menyalin setiap byte lain apa adanya, sehingga tabel warna, data gambar terkompresi, metode pembuangan, dan indeks transparansi keluar persis seperti saat masuk. Setiap pengubah kecepatan daring lain membangun ulang berkasnya, yang mengkuantisasi ulang warna yang sudah dipilih. Anda bisa memeriksanya: GIF hasil di sini berukuran sama dengan aslinya sampai beberapa byte, karena memang aslinya.

Seberapa cepat sebuah GIF sebenarnya bisa berjalan?

GIF menyimpan jeda tiap bingkai sebagai bilangan bulat perseratus detik, dan semua penampil — Chrome, Firefox, Safari, penampil gambar — memperlakukan jeda 0 atau 1 perseratus sebagai «secepat mungkin» dan menggantinya dengan sekitar 100 milidetik. Jadi jeda tercepat yang dihormati adalah 2 perseratus, yaitu 20 milidetik, atau 50 bingkai per detik. Sumber 100 ms karenanya bisa mencapai tepat 5x dengan seluruh bingkai dipertahankan, dan tidak lebih. Minta 10x dan alat ini akan bilang bahwa yang diberikan 5x, bukan berpura-pura; kalau Anda ingin kecepatan tambahannya, nyalakan pembuangan bingkai dan ia akan mencapai tepat 10x dengan menyimpan satu bingkai dari setiap dua.

Apakah mempercepat GIF menghilangkan bingkai?

Tidak, kecuali Anda memintanya. Jumlah bingkai adalah invariannya: perubahan kecepatan mengatur ulang waktu bingkai yang ada, bukan menghapusnya. Satu-satunya pengecualian disengaja dan mati secara bawaan: ketika percepatan menabrak batas bawah 20 milidetik, satu-satunya jalan ke depan adalah menampilkan lebih sedikit bingkai lebih lama, jadi sebuah kontrol menawarkan hal itu secara terbuka dan panel hasil menyebut berapa bingkai yang dipertahankan. Pembuangan adalah satu-satunya pengaturan yang memaksa alat membangun ulang berkas alih-alih mengubahnya, karena bingkai GIF sering disimpan sebagai selisih terhadap bingkai sebelumnya dan menghapus satu akan merusak sisanya.

Kenapa permintaan 2x saya keluar sebagai 1,96x di tempat lain?

Karena pembulatannya terjadi di tempat yang salah. Kalau sebuah alat mengalikan jeda, menyerahkan hasilnya ke penulis GIF, dan membiarkan penulis itu membulatkan ke perseratus, faktor yang diminta sudah terlupakan saat pembulatan terjadi: bingkai 51 ms menjadi 25,5 ms lalu 30 ms, dan animasinya kini berjalan 1,7x alih-alih 2x. Alat ini membulatkan selagi faktornya masih diketahui, lalu melaporkan kecepatan yang tercapai di samping yang diminta, sehingga selisihnya terlihat alih-alih jadi kejutan yang baru disadari seminggu kemudian.

Bisakah saya membuat GIF berjalan tepat sekian detik?

Bisa — untuk itulah mode Durasi ada, dan tidak ada alat kecepatan GIF daring lain yang menawarkannya. Ketik panjang yang Anda butuhkan dan seluruh garis waktu diskalakan agar pas, dengan sisa pembulatan dibawa dari satu bingkai ke bingkai berikutnya supaya totalnya jatuh tepat di angka yang diminta, bukan beberapa perseratus di bawahnya. Ini mode yang dipakai ketika sebuah GIF harus cocok dengan transisi salindia, dengan pengulangan dalam suntingan video, atau dengan durasi animasi maksimum sebuah platform sosial.

Apa bedanya mode Laju bingkai?

Faktor dan Durasi sama-sama mempertahankan irama animasi: bingkai yang ditahan empat kali lebih lama dari tetangganya tetap begitu. Laju bingkai mengganti irama itu dengan satu jeda yang berlaku untuk semua bingkai, yang justru Anda inginkan ketika sumbernya punya waktu tidak rata yang tidak disengaja — rekaman layar yang tersendat, atau animasi hasil ekspor alat yang menulis jedanya sembarangan. Ini merusak waktu yang disengaja, jadi ia menjadi mode tersendiri dan bukan perilaku bawaan.

Bisakah saya mengubah berapa kali GIF berulang?

Bisa, dalam langkah yang sama. Pilih Selamanya, Sekali, atau jumlah pemutaran tetap. Ini perlu diketahui karena formatnya membingungkan: penghitung pengulangan yang tersimpan dalam GIF adalah jumlah PENGULANGAN setelah pemutaran pertama, dan nol dicadangkan untuk «selamanya», jadi tidak ada nilai yang berarti «tepat sekali» — memutar sekali dinyatakan dengan meniadakan blok pengulangannya. Alat ini mengambil jumlah pemutaran yang benar-benar Anda inginkan dan menuliskan mana dari tiga hal itu yang benar.

Apakah memperlambat GIF membuat berkasnya lebih besar?

Di sini hampir tidak pernah, karena tidak ada yang dienkode ulang: bidang jeda tetap dua byte yang sama entah isinya 5 atau 500. GIF hasil pengaturan ulang berukuran sama dengan sumbernya dalam selisih satu dua byte. Alat yang membangun ulang bisa mengubah ukuran ke arah mana pun secara tak terduga, sebab palet baru terkompresi berbeda. Kalau berkas Anda memang sudah terlalu besar, Kompresor GIF adalah alatnya, dan ia bisa langsung menuju ukuran yang Anda sebutkan.

Bisakah saya mempercepat WebP animasi atau APNG?

Keduanya bisa dibuka, dan keluarannya berupa GIF. Itu konversi sungguhan dan bukan pengaturan ulang waktu, jadi gambarnya dibangun ulang: bingkai dibongkar, palet dibangun untuk seluruh animasi, dan hasilnya ditulis sebagai GIF89a standar. Aritmetika waktunya identik dengan jalur GIF — faktor sama, pembulatan sama, batas bawah 20 milidetik sama — tetapi jaminan «piksel tidak disentuh» hanya berlaku ketika GIF masuk dan GIF keluar.

Bisakah saya mengubah kecepatan beberapa GIF sekaligus?

Dengan Pro, bisa — sampai 20 berkas sekaligus, diunduh bersama dalam satu ZIP. Semuanya mendapat pengaturan yang sama, yang membuatnya berguna untuk sekumpulan klip reaksi atau folder rekaman dokumentasi yang terlalu lambat. Paket gratis menangani satu berkas dalam satu waktu, dengan kualitas penuh dan jalur tanpa kehilangan yang sama.

GIF saya punya jeda yang tidak rata. Apakah perubahan kecepatan akan merusaknya?

Tidak, di mode Faktor dan Durasi. Jeda setiap bingkai diskalakan dengan proporsi yang sama, jadi bingkai yang ditahan sepuluh kali lebih lama dari tetangganya tetap begitu — bentuk animasinya bertahan dan hanya lajunya yang berubah. Alat yang menawarkan satu kotak «jeda» tidak bisa melakukan ini: menetapkan satu angka untuk semua bingkai meratakan waktu yang tidak rata menjadi metronom, dan karena itulah perilaku tersebut di sini tinggal di mode Laju bingkai tersendiri alih-alih menjadi satu-satunya pilihan.