Jean-Baptiste Kempf
๐ค SpeakerAppearances Over Time
Podcast Appearances
What about Lucasfilm?
The one Star Wars video game, the first 10-second opening sequence, someone has gone and implemented that and made sure that's bit exact on one disk that existed at one time of one little sequence in the game.
There was a file that's a valid zip and a valid MP3 at the same time or something like that.
The stream needs to be cut up by what's known as the container, the demultiplexer or demux.
We'll try and keep the jargon light throughout this, but it needs to go and start demarcating video and audio frames.
So it just gets data from the operating system blocks at a time and needs to start cutting these frames up into compressed data.
it then needs to start doing simple parsing of the video frames, mainly to figure out whether that codec is GPU decodable or needs to fall back to software.
We're very sort of used to assuming the GPU will play all of these things, there'll be hardware acceleration.
I think it's up to 45% of files are not GPU decodable.
So these need to be probed, they need to be detected.
There can be variants of a given codec, some of which are decodable on the GPU.
Different vendors of GPU might have different capabilities.
So those need to be detected.
So if it's GPU capable, you pass it through to the GPU black box.
So now if there's a software fallback,
That means in the beginning is to first do de-entropy coding.
So removing the mathematical coding of the bitstream.
So this uses capabilities such as Hoffman coding or arithmetic coding to actually decompress the mathematical layer of the bitstream.
We then need to start reading the syntax elements for intra-prediction.
So intra-prediction are like still images of the video.