Making a Video Codec and Player for a game engine, from scratch @MadrigalGames
Making a Video Codec and Player for a game engine, from scratch  @MadrigalGames
Uploaded February 2024 | Updated September 2026, 1 week ago
In this video, we take a look at how a custom video codec and playback system was built for the Basis game engine.

This video is a follow-up to the previous part: youtu.be/zBhhckL5Q4k

For more information, check out the development blog at madrigalgames.com

Motion JPEG: en.wikipedia.org/wiki/Motion_JPEG
Y′UV: en.wikipedia.org/wiki/Y%E2%80%B2UV
Chroma subsampling: en.wikipedia.org/wiki/Chroma_subsampling
yuv2rgb: github.com/descampsa/yuv2rgb
Video codec basics: youtube.com/watch?v=LDeL7-49qm4
Video encoding from scratch: github.com/kevmo314/codec-from-scratch
The QOI format: qoiformat.org

#MadeWithMotionCanvas
Making a Video Codec and Player for a game engine, from scratchtransmission001C++/C#/Zig GameDev Live #56⚡Working on WASM / Mod supportC++/C#/Zig GameDev Live #57⚡D3D12 with NVRHIWhy so many programming languages?Traction Point gamedev Live #28⚡Custom Engine, Zig, C++, BlenderCar Driving Game AI - Status UpdateNode Graphs to Native Code⚡C++/C#/Zig Gamedev LiveC++/C#/Zig GameDev Live #49⚡Updating the PhysX versionThe name of the game: Traction PointPorting my renderer to Vulkan - Part 10 of N - Graphics pipeline statetransmission031 - messing around with node-based particles
Madrigal Games |

Making a Video Codec and Player for a game engine, from scratch

SHARE TO X SHARE TO REDDIT SHARE TO FACEBOOK WALLPAPER