ladybird/Libraries/LibMedia/Sinks
Zaggy1024 5e770666a8 LibMedia: Detect buffering in audio tracks as well as video
Previously, we would just listen to the single video track for
buffering, so if for some reason the audio data runs ahead of the
video, we would drop some audio until the video buffered. Instead,
stop playing audio at the last available sample when any provider is
blocked.

Also, PlaybackManager now starts in the Buffering state, so that it can
wait for enough data to be ready to play without interruption. When the
end of the stream is reached, the buffering state is exited to ensure
that we don't get stuck buffering at the end of a media file.
2026-03-21 23:11:47 -05:00
..
AudioMixingSink.cpp LibMedia: Detect buffering in audio tracks as well as video 2026-03-21 23:11:47 -05:00
AudioMixingSink.h LibMedia: Detect buffering in audio tracks as well as video 2026-03-21 23:11:47 -05:00
AudioSink.h LibMedia: Play audio through PlaybackManager using Providers/Sinks 2025-10-27 17:28:49 -07:00
DisplayingVideoSink.cpp LibMedia: Gracefully fall back to video-only playback when audio fails 2026-03-21 23:11:47 -05:00
DisplayingVideoSink.h LibMedia: Gracefully fall back to video-only playback when audio fails 2026-03-21 23:11:47 -05:00
VideoSink.h