Today in FFmpeg being FFmpeg: Apparently pal8 to yuv444p format conversion is broken, and always seems to use the BT.601 YUV matrix even when you ask for BT.709.

This means that when you make a video out of a PNG, by default you get the wrong colors if it's more than 1279x576 pixels or so (the heuristic players use to decide for untagged files), but then if you try to force bt.709, it will work... if your PNG is full RGB. If it uses a color palette, which many PNG writers do automatically if it has fewer than 256 unique colors, then it mysteriously still breaks.

Forcing a round trip through the rgb24 color format fixed it...

Edit: Also, after sorting the above out, it plays back fine on mpv/vlc/firefox/chromium. ffplay shows the wrong colors (in a different way). I guess ffplay itself is also buggy...

0

If you have a fediverse account, you can quote this note from your own instance. Search https://vt.social/users/lina/statuses/115687366903131355 on your instance and quote it. (Note that quoting is not supported in Mastodon.)