
Why FFmpeg and VLC quietly power so much of the internet’s video
This is a preview based only on the published show notes. Lex Fridman talks with Jean-Baptiste Kempf of VLC/VideoLAN and FFmpeg contributor Kieran Kunhya about how video playback, codecs, containers, open-source development, and internet video infrastructure fit together.
*Preview based on the episode’s published show notes, not a recap of the audio.* If you use video online every day and want to understand the software stack underneath it, this episode looks especially promising. The guest lineup alone signals a deep technical conversation: Jean-Baptiste Kempf, lead developer of VLC and president of VideoLAN, joins longtime FFmpeg contributor and codec engineer Kieran Kunhya. From the outline, the discussion appears to move from approachable fundamentals into highly specialized territory. Early sections cover topics like the weirdest things VLC can open, how video playback works, and the difference between codecs and containers. That makes this seem accessible even if you know the names FFmpeg and VLC but haven’t dug into how they actually work. Later, the episode seems to widen into the culture and politics of open source. The notes point to segments on turning down millions to keep VLC ad-free, FFmpeg’s relationship with Google, the history of FFmpeg, the Libav fork, and open-source burnout. If you’re interested in how major infrastructure projects survive, that may be as compelling as the technical material. There’s also a strong systems-and-performance angle: reverse engineering codecs, FFmpeg testing, handwritten assembly, Rust, x264, compression basics, ultra low latency streaming, AV2, patents, archiving, and the future of FFmpeg and VLC. Overall, this looks like a long-form conversation for listeners who want both practical video-tech foundations and a look at the human side of maintaining essential open-source tools.
About this episode
<p>Jean-Baptiste Kempf is lead developer of VLC and president of VideoLAN. Kieran Kunhya is a longtime FFmpeg contributor, codec engineer, and the person behind the now-infamous FFmpeg account on X.<br /> Thank you for listening ❤ Check out our sponsors: <a href="https://lexfridman.com/sponsors/ep496-sc">https://lexfridman.com/sponsors/ep496-sc</a><br /> See below for timestamps, transcript, and to give feedback, submit questions, contact Lex, etc.</p> <p><b>Transcript:</b><br /> <a href="https://lexfridman.com/ffmpeg-transcript">https://lexfridman.com/ffmpeg-transcript</a></p> <p><b>CONTACT LEX:</b><br /> <b>Feedback</b> – give feedback to Lex: <a href="https://lexfridman.com/survey">https://lexfridman.com/survey</a><br /> <b>AMA</b> – submit questions, videos or call-in: <a href="https://lexfridman.com/ama">https://lexfridman.com/ama</a><br /> <b>Hiring</b> – join our team: <a href="https://lexfridman.com/hiring">https://lexfridman.com/hiring</a><br /> <b>Other</b> – other ways to get in touch: <a href="https://lexfridman.com/contact">https://lexfridman.com/contact</a></p> <p><b>EPISODE LINKS:</b><br /> FFmpeg on X: <a href="https://x.com/FFmpeg">https://x.com/FFmpeg</a><br /> FFmpeg: <a href="https://ffmpeg.org/">https://ffmpeg.org/</a><br /> VideoLAN (VLC): <a href="https://www.videolan.org/">https://www.videolan.org/</a><br /> VideoLAN on X: <a href="https://x.com/videolan">https://x.com/videolan</a><br /> Jean-Baptiste’s Website: <a href="https://jbkempf.com/">https://jbkempf.com/</a><br /> Jean-Baptiste’s LinkedIn: <a href="https://www.linkedin.com/in/jbkempf/">https://www.linkedin.com/in/jbkempf/</a><br /> Jean-Baptiste’s GitHub: <a href="https://github.com/jbkempf">https://github.com/jbkempf</a><br /> Kieran’s X: <a href="https://x.com/kierank_">https://x.com/kierank_</a><br /> Kieran’s LinkedIn: <a href="https://bit.ly/3OORhmC">https://bit.ly/3OORhmC</a><br /> Kieran’s GitHub: <a href="https://github.com/kierank">https://github.com/kierank</a></p> <p><b>SPONSORS:</b><br /> To support this podcast, check out our sponsors & get discounts:<br /> <b>Larridin:</b> Measure AI adoption in your business.<br /> Go to <a href="https://lexfridman.com/s/larridin-ep496-sc">https://larridin.com</a><br /> <b>Blitzy:</b> AI agent for large enterprise codebases.<br /> Go to <a href="https://lexfridman.com/s/blitzy-ep496-sc">https://blitzy.com/lex</a><br /> <b>BetterHelp:</b> Online therapy and counseling.<br /> Go to <a href="https://lexfridman.com/s/betterhelp-ep496-sc">https://betterhelp.com/lex</a><br /> <b>Fin:</b> AI agent for customer service.<br /> Go to <a href="https://lexfridman.com/s/fin-ep496-sc">https://fin.ai/lex</a><br /> <b>LMNT:</b> Zero-sugar electrolyte drink mix.<br /> Go to <a href="https://lexfridman.com/s/lmnt-ep496-sc">https://drinkLMNT.com/lex</a><br /> <b>Perplexity:</b> AI-powered answer engine.<br /> Go to <a href="https://lexfridman.com/s/perplexity-ep496-sc">https://perplexity.ai/</a></p> <p><b>OUTLINE:</b><br /> (00:00) – Introduction<br /> (03:00) – Sponsors, Comments, and Reflections<br /> (10:48) – Weirdest things VLC opens<br /> (15:12) – How video playback works<br /> (24:33) – Video codecs and containers<br /> (35:20) – FFmpeg explained<br /> (56:20) – Linus Torvalds<br /> (1:00:59) – Turning down millions to keep VLC ad-free<br /> (1:15:17) – FFmpeg & Google drama<br /> (1:34:31) – FFmpeg developers<br /> (1:41:08) – VLC and FFmpeg<br /> (1:45:42) – History of FFmpeg<br /> (1:48:59) – Reverse engineering codecs<br /> (2:02:14) – FFmpeg testing<br /> (2:06:21) – Assembly code (handwritten)<br /> (2:30:39) – Rust programming language<br /> (2:39:55) – FFmpeg and Libav fork<br /> (2:48:17) – Open source burnout<br /> (2:56:04) – x264 and internet video<br /> (3:09:20) – Video compression basics<br /> (3:16:17) – CIA and fake VLC<br /> (3:26:52) – Ultra low latency streaming<br /> (3:44:20) – AV2 codec and video patents<br /> (3:54:12) – VLC backdoors<br /> (4:04:27) – Video archiving<br /> (4:11:04) – Future of FFmpeg and VLC</p>