Rust Isn’t Always the Answer: FFmpeg’s Bold Defense of C



This content originally appeared on Level Up Coding – Medium and was authored by Rahul Beniwal

C is not going anywhere

The programming world has been buzzing with the Rust wave. From Linux kernel modules to new-age system libraries, Rust is being hailed as the modern replacement for C — safe, elegant, and future-proof.

But then FFmpeg — the backbone of modern multimedia — proudly declared:

FFmpeg is proudly written in the C programming language for the highest performance. Other fashionable languages like C++, C#, Rust, Go etc do not meet the needs of FFmpeg.

Boom. A cannonball straight through the Rust hype balloon.

The Benchmark Bombshell

On Twitter (X), FFmpeg developers shared results from dav1d vs rav1d (an AV1 decoder, transpiled from C to Rust).

  • Single-thread: Rust was 6% slower
  • Multi-thread: Rust was a staggering 35% slower

For a library that powers Netflix, YouTube, VLC, and half the internet’s video stack — that’s not a small detail. That’s a dealbreaker.

When you’re shaving milliseconds off frame decoding across billions of streams, 35% slower isn’t “good enough.” It’s catastrophic.

The Developer Reactions

On linkedin Majority of developer and manager supported the FFmpeg but few of them criticized by saying them old fashioned.

  • Proudly’ 😉 Because C++ and Rust are so much slower..?
  • Right on.
  • P R E A C H
  • If you build hot spots in assembly, the language doesn’t matter. But then you lose portability.
  • Still have that book on my shelf. But… Allman braces >>> K&R. Flame on!
  • That book changed my life more than 30 years ago.

I can’t stress this enough — Kernighan & Ritchie’s The C Programming Language is a life-changing book. It shaped how I think about logic, efficiency, and problem-solving. And it’s under 200 pages — clear, elegant, and timeless.

That little book didn’t just teach me syntax. It taught me how computers really work. Even today, decades later, many of us still keep it on our shelves — not just for nostalgia, but because it’s still one of the best programming books ever written

The “New Age” Criticism

Something I’ve noticed, Many of the harshest critics of FFmpeg (and by extension, C) are new-age developers. Some of them haven’t even installed or seriously used FFmpeg, yet feel comfortable dismissing it as “outdated.”

Here’s the thing — FFmpeg is one of the most widely used, battle-tested tools in the world. If your favorite app plays a video, there’s a good chance FFmpeg is behind it. Criticizing it without truly understanding or using it feels… well, disconnected from reality.

Rust: Brilliant, But Not Perfect

Don’t get me wrong — Rust is an amazing language. Its design brings in fresh concepts like ownership, lifetimes, and fearless concurrency. These ideas pushed me to learn it myself, and I absolutely see the value.

But here’s where I feel the disconnect: Rust has become a little overhyped. It’s treated like a silver bullet for everything, and that creates unrealistic expectations.

Another pain point is the community culture. Compared to Python or Django — where I’ve been active and always found people welcoming and helpful — the Rust community can sometimes feel more… defensive. Too often, senior folks criticize C/C++ harshly, instead of patiently showing newcomers why and how those languages can be dangerous with concrete examples. That kind of guidance would be far more constructive.

That said, I’ll give Rust huge credit: its learning resources are top-notch. The official book (doc.rust-lang.org) is one of the best free programming books I’ve ever seen, period.

Even Linus Agrees

Even Linus Torvalds himself — arguably the most influential systems programmer alive — has said that for him, nothing beats C. He likes being able to visualize the assembly code beneath his C code and doesn’t mind dealing with the pitfalls.

And that’s the point: C is brutally transparent. If you know what you’re doing, it gives you complete control. Yes, it’s dangerous, but in the right hands, it’s unmatched. Rust, on the other hand, is safer by design, but safety can come with trade-offs.

No Silver Bullet

At the end of the day, there’s no single language that solves everything. Not C. Not Rust. Not Python.

  • If you need raw performance and portability, C is still king.
  • If you want safety guarantees and modern abstractions, Rust is a great choice.
  • If you value rapid development and ecosystem support, Python still rules.

Thank You for reading till the end, Please leave a 👏 and your advice in comment section and Follow Rahul Beniwal for more.


Rust Isn’t Always the Answer: FFmpeg’s Bold Defense of C was originally published in Level Up Coding on Medium, where people are continuing the conversation by highlighting and responding to this story.


This content originally appeared on Level Up Coding – Medium and was authored by Rahul Beniwal