Most people do this:
ffmpeg -i video.mp4 output.gif
...no, most people have never heard of ffmpeg and throw it in an online converter.
This is a most excellent place for technology news and articles.
Most people do this:
ffmpeg -i video.mp4 output.gif
...no, most people have never heard of ffmpeg and throw it in an online converter.
Which are probably just web front ends to the above?
Definitely, but then it's on whoever made the web tool. Still not "most people".
Not just that, sometimes they are also data stealers and virus makers!
As much as everyone likes to trash on it, this is part of what webp is for. Animated, loopable images at super small sizes that display on just about anything that runs a browser.
but then you have Apple...
Please stop making gifs at all. It's a terrible format that creates massive files that look like shit.
Webm is supported almost everywhere now and manages better quality at higher framerates and smaller file sizes.
I’ve honestly given up on support of new formats.
Here we are, 2026, and brand new software like Lemmy:
Doesn’t support AVIF
Doesn’t support JXL
Doesn’t support WebP
Won’t upload short, small videos either.
Meanwhile:
Many clients won’t play animated WebP
Most clients won’t play APNG
Many won’t load AVIF
Basically only Apple/Safari will load JXL
VP8/VP9/AV1 support in video isn’t universal
What am I supposed to do?
I used to send support requests over this, but I’ve given up. We are going to be stuck with SDR JPEGs and blocky GIFs forever, especially since media format literacy seems to be globally.
What am I supposed to do?
You decide what to target, and work with what you have. That's how it's always been with web technology.
If you need to support the barest minimal possible clients then you might not even have HTML5. Otherwise, if you have HTML5 you can use the source tag to provide clients with a choice of formats/encodings and they can pick the one they support. If the clients can't even mange that, well, things on the internet have always been broken anyway.
And somebody's gotta start somewhere, WebP was shoved down everyones' throats and now it's supported very broadly, as AVIF pick up users software devs will take notice and start supporting it.
Will they, though?
I cite Lemmy again. This is supposed to be a newer, better version of Reddit, basically, but I can't even upload a WebP to my instance... when are they supposed to adopt AVIF?
If I try to host externally, which is more of a pain, very few image hosts will take an AVIF. Not a single one I found except catbox will take a JXL.
Where's the pressure? Who's making these files and trying to use them? Even my phone converts uploaded JXL and HEIF files to SDR JPEGs upon upload, since it rightfully assumes nothing will work with them.
I hate to sound so cynical, but I had your mindset a while back. And outside Apple, precisely nothing has changed. Its gotten more dramatic, if anything, since HDR support is now basically DOA too.
Where’s the pressure? Who’s making these files and trying to use them?
The standards bodies and the companies that pay their bills. That's Netflix, Google, et al. All have a vested interest in good multimedia support in browsers. It's why browsers have shockingly good support actually, most of the problems are downstream on clients and implementations that don't know or care to enable these newer formats.
I used to love optimising images in gif format. I would make like 4–30kb memes and animations for my friends in Photoshop CS2. It's actually extremely efficient and lightweight if you do it right… You have cool tools like transparency between frames and unbroken colour blocks don't take any additional storage space. There's nothing wrong with gif.
The problem is how people use them. We take a live action video file and shove it through an automated converter tool that doesn't give a shit about efficiency and will do a complete repaint between frames and use 256+ colour palette. Then you end up with an ugly dithered overcooked piece of shit 50mb 10 second animation. Gif was not designed for this…
Problem is the medium people use to send GIFs to each other doesn’t support any alternatives
Counterpoint: GIFs loop by default in basically every app, WEBM doesn't
Can just use avif instead, it holds an AV1 stream and acts like gifs/images do WRT looping — also very broad support (more than AV1 in WebM containers).
Demonstration:

Edit: switched to an example with simpler decode requirements.
Thanks for bringing this format to my attention. I opened it in a browser and it's pretty sweet.
Hopefully app support will grown over time... Otherwise it'll be .gif 'till the end.
Does not work on Voyager for Android, the humble inefficient GIF continues in spite of more efficient options
Your example image doesn't work in boost while the gif above does :/
Your demonstration is a sluggishly loading static image on my end, so I guess support isnt that widespread :P
(Im using the app "Summit")
I checked that app's source code, and basically they're doing their own avif decode call instead of relying on a browser/webview to handle it. So essentially they forgot/don't know/don't intend to implement animated avif. Looks like they also use the aom reference decoder instead of using something faster like dav1d.
Static image, Eternity.
Lemmy won’t even upload AVIF files
As you can see below, it won’t play back for many users..
Works great as a static image. Would probably be better if it actually played...
your demo is a static image.
Using a browser or third party app?
Summit Android app.

the same file without visual quality loss could be a 156.79 KiB webp file, saving energy, internet, and storage costs
Don't get mad at people for using logical command line switches.
Get mad at ffmpeg for trash defaults.

Nope

I just tested this with a 8-second, 35MB mp4 video.
The "don't do this" command made a crappy looking 316MB gif.
The suggested pair of commands, using the palette file, made a 57MB very nice looking gif.
Seems legit to me but I'm not, as you say, an expert.
I am guessing the width and height of the video file are quite large. If you plop it down to a size suitable for gif, say maybe 400px width, you'll see a massive drop in filesize.
I wish the article had examples. It would be cool.
There is this older tutorial from 2015 that goes into more detail and includes examples.
Thanks. This is going straight to my 'cool info to never be used' pile.
