mirror of
https://github.com/LadybirdBrowser/ladybird
synced 2026-05-05 06:32:30 +02:00
LibMedia: Change demuxers to use IncrementallyPopulatedStream as input
Refactor the FFmpeg and Matroska demuxers to consume data through `IncrementallyPopulatedStream::Cursor` instead of a pointer to fully buffered. This change establishes a new rule: each track must be initialized with its own cursor. Data providers now explicitly create a per-track context via `Demuxer::create_context_for_track(track, cursor)`, and own pointer to that cursor. In the upcoming changes, holding the cursor in the provider would allow to signal "cancel blocking reads" so an in-flight seek can fail immediately when a newer seek request arrives.
This commit is contained in:
committed by
Gregory Bertilson
parent
b9db157cea
commit
c5d8cb5c47
Notes:
github-actions[bot]
2025-12-16 08:44:38 +00:00
Author: https://github.com/kalenikaliaksandr Commit: https://github.com/LadybirdBrowser/ladybird/commit/c5d8cb5c470 Pull-request: https://github.com/LadybirdBrowser/ladybird/pull/7132 Reviewed-by: https://github.com/Zaggy1024 ✅
@@ -323,7 +323,7 @@ private:
|
||||
GC::Ptr<TextTrackList> m_text_tracks;
|
||||
|
||||
// https://html.spec.whatwg.org/multipage/media.html#media-data
|
||||
ByteBuffer m_media_data;
|
||||
RefPtr<Media::IncrementallyPopulatedStream> m_media_data;
|
||||
|
||||
// https://html.spec.whatwg.org/multipage/media.html#can-autoplay-flag
|
||||
bool m_can_autoplay { true };
|
||||
|
||||
Reference in New Issue
Block a user