Commit Graph

4 Commits

Author SHA1 Message Date
Zaggy1024
077d63c6f3 LibMedia: Flush the video decoder when seeking
This allows H.264 videos to seek correctly.

(cherry picked from commit 8848ee775befd10cd404f70812b95b0bd3e959d0)
2024-07-04 22:09:32 +02:00
Zaggy1024
7b34152212 LibMedia: Add a function to flush persistent data from video decoders
Any data that sticks around in a decoder, especially frames that
haven't been retrieved, may cause issues for playback.

(cherry picked from commit c128a19903c42d5a66153445c457d41dc7ed30a1)
2024-07-04 22:09:32 +02:00
Zaggy1024
2bfaaa967c LibMedia: Give frame timestamps to video decoders
H.264 in Matroska can have blocks with unordered timestamps. Without
passing these to the decoder when providing data, the decoder will be
unable to reorder the frames to presentation 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.

(cherry picked from commit f6a4973578c4692f33283aee1c089afd0cdae508)
2024-07-04 22:09:32 +02:00
Zaggy1024
0a525881b6 LibMedia: Rename LibVideo to LibMedia
This change is in preparation for implementing audio codecs into the
library and using audio as timing for video playback.

(cherry picked from commit 7c10e1a08d7a109b63c9258578eb98aa9dcc1425)
2024-07-04 22:09:32 +02:00