Tiada muat naik, 100% setempat, tiada akaun

Artikel

Mengapa GIF begitu berat

GIF beranimasi tiga saat kerap kali lebih berat daripada satu minit penuh video MP4 yang meliputi klip yang sama, yang mengejutkan sesiapa yang biasa menganggap video sebagai format yang lebih berat. GIF tidak pernah direka sebagai cara cekap untuk menyimpan pergerakan; ia format imej dari 1987 yang kebetulan menyokong urutan bingkai, dan setiap pilihan reka bentuk di sebaliknya mendahului pemampatan video moden selama beberapa dekad.

GIF ialah urutan imej, bukan strim video

Graphics Interchange Format, diperkenalkan oleh CompuServe pada 1987 dan disemak semula sebagai GIF89a pada 1989, menyimpan animasi sebagai siri bingkai imej individu yang dimainkan mengikut susunan, setiap satu imej statik termampatnya sendiri. Kodek video sebenar seperti H.264 sebaliknya mengekod kebanyakan bingkai sebagai perbezaan daripada bingkai sebelumnya, kerana bingkai video berturutan biasanya sangat serupa, hanya menyimpan apa yang berubah. GIF tiada mekanisme setara: malah adegan yang kebanyakannya statik menyimpan semula sebahagian besar setiap bingkai tunggal.

Gambar rajah membandingkan GIF, yang menyimpan imej bebas penuh setiap bingkai, dengan kodek video, yang menyimpan kebanyakan bingkai sebagai perbezaan daripada yang sebelumnya.

256 warna, tidak kira sumbernya memerlukannya atau tidak

GIF menghadkan setiap bingkai kepada palet paling banyak 256 warna, dipilih daripada julat yang jauh lebih besar yang sebenarnya dikandungi foto atau video. Rakaman skrin atau klip video dengan gradien dan pencahayaan yang lancar diratakan ke atas palet terhad itu, memperkenalkan jalur dan dither yang kelihatan, dan fail itu masih perlu menyimpan seluruh data warna terkurang itu pada setiap bingkai tunggal, tanpa pemampatan silang-bingkai untuk kembali kepadanya.

Perbandingan swatch warna: palet GIF 256 warna bersebelahan julat warna penuh foto atau sumber video asal.

Mengapa format itu tidak pernah mendapat penggantian moden

Gelung animasi dan sokongan sejagat GIF, setiap pelayar dan aplikasi pemesejan boleh memainkannya tanpa plugin, mengekalkannya digunakan secara berterusan lama selepas pilihan yang lebih baik wujud, cara yang sama MP3 kekal digunakan selepas kodek audio yang lebih cekap dihantar. WebP dan APNG kedua-duanya menyokong animasi dengan pemampatan setiap bingkai sebenar dan jauh lebih banyak warna, dan menghasilkan fail yang jelas lebih kecil bagi kandungan yang sama, tetapi tiada satu pun mencapai tahap sokongan sejagat GIF merentas setiap platform dan konteks perkongsian, jadi GIF kekal sebagai lalai bagi animasi gelung pendek walaupun ia cara paling tidak cekap untuk menyimpannya.

MP4 bagi klip yang sama biasanya jauh lebih kecil

Menukar klip pendek yang sama kepada MP4 dengan H.264 mengekalkan pemampatan perbezaan-bingkai kodek video dan julat warna penuh, itulah sebab fail itu biasanya berakhir sebahagian kecil daripada saiz GIF yang setara bagi kandungan dan panjang yang sama. Pertukarannya ialah MP4 memerlukan pemain video berbanding memaparkan sebaris sebagai imej di mana jua GIF melakukannya, walaupun kebanyakan aplikasi pemesejan dan platform sosial moden sudah main automatik MP4 pendek dengan cara yang sama mereka akan lakukan bagi GIF.

Menukar antara GIF dan video tanpa memuat naik apa-apa

Alat GIF-ke-video kami mengekod semula GIF beranimasi sebagai MP4 padat, dan video-ke-GIF melakukan sebaliknya apabila GIF sebenar, bagi konteks yang khusus memerlukannya, adalah apa yang benar-benar anda perlukan, kedua-duanya sepenuhnya dalam pelayar anda menggunakan ffmpeg yang dikompil kepada WebAssembly. Menukar GIF berat sedia ada kepada MP4 dahulu, kemudian hanya kembali kepada GIF bagi beberapa konteks yang benar-benar memerlukan format itu, biasanya cara terpantas untuk mengecilkan saiz fail animasi yang dikongsi tanpa kehilangan gelungnya.

Alat dalam artikel ini

Soalan lazim

Mengapa GIF pendek lebih berat daripada video MP4 yang jauh lebih panjang?

GIF menyimpan semula kebanyakan setiap bingkai secara bebas tanpa pemampatan silang-bingkai, terhad kepada 256 warna, manakala MP4 mengekod kebanyakan bingkai sebagai sekadar perbezaan daripada yang sebelumnya dan mengekalkan jauh lebih banyak perincian warna. Overhed setiap bingkai format GIF bertambah dengan cepat walaupun bagi klip sebahagian kecil daripada panjang videonya.

Bolehkah saya mengecilkan GIF tanpa menukarnya kepada video?

Ya, sehingga satu tahap: menurunkan kadar bingkai, mengecilkan dimensi piksel, atau memotong klip lebih pendek semuanya mengurangkan saiz GIF secara langsung, kerana bingkai yang lebih sedikit atau lebih kecil bermakna lebih sedikit data untuk disimpan. Tiada satu pun itu mengubah kekurangan asas format itu dalam pemampatan silang-bingkai, itulah sebab menukar kepada MP4 biasanya menjimatkan jauh lebih banyak berbanding memotong GIF lebih pendek.

Adakah MP4 bergelung secara automatik cara GIF melakukannya?

Kebanyakan aplikasi pemesejan dan platform sosial main automatik dan bergelung MP4 pendek sebaris, cara yang sama mereka mengendalikan GIF, jadi hasil visualnya biasanya identik bagi penonton. Konteks yang memaparkan tag imej mentah tanpa sokongan pemain video, sesetengah e-mel dan perisian forum lama, masih memerlukan fail GIF sebenar.

Sumber