LibMedia: Give frame timestamps to FFmpeg decoders

H.264 in Matroska can have blocks with unordered timestamps. Without
passing these as the presentation timestamp into the FFmpeg decoder,
the frames will not be returned in chronological order.

VideoFrame will now include a timestamp that is used by the
PlaybackManager, rather than assuming that it is the same timestamp
returned by the demuxer.
This commit is contained in:
Zaggy1024
2024-06-19 18:29:12 -05:00
committed by Andrew Kaster
parent 084cf68dd5
commit f6a4973578
11 changed files with 42 additions and 26 deletions

View File

@@ -11,6 +11,6 @@ extern "C" int LLVMFuzzerTestOneInput(u8 const* data, size_t size)
{
AK::set_debug_enabled(false);
Media::Video::VP9::Decoder vp9_decoder;
(void)vp9_decoder.receive_sample({ data, size });
(void)vp9_decoder.receive_sample(Duration::zero(), { data, size });
return 0;
}