Falsehoods programmers believe about video stuff (2016)

11 ksec 2 6/9/2025, 2:23:33 PM haasn.dev ↗

Comments (2)

thegrim33 · 3h ago
I recently built a media player for my custom render engine, using FFMPEG, and boy did I run into a lot of these.

I thought, "how hard could it be?". Just point FFMPEG at a media file and have it work its magic and return to me frames to display and audio to play.

Thousands and thousands of lines of code later, dealing with different clocks and delving into researching PID to figure out how to properly sync audio with video, dealing with multiple layers of async processing, out of order decoding, different codecs, GPU decoding, every edge case imaginable, and so much more, it was one of the most miserable things I've done in a very long time.

Not to mention the FFMPEG project is written in 30 year old style C with virtually zero documentation. It's gone through massive horrible refactors every 5 years and the end result is incredibly fragile and gross. I can't believe such a popular project is in such a horrible state. Multiple times in the process I was on the verge of just dropping what I was doing and devoting the next year of my life to working on a modern replacement for FFMPEG. If anyone wants a project, there's one right there.

mitchbob · 5h ago
Earlier discussion (250 points, 134 comments):

https://news.ycombinator.com/item?id=13259686