Skip to content

feat: improved seeking#3

Merged
devgianlu merged 4 commits intomasterfrom
improved-seeking
Oct 18, 2023
Merged

feat: improved seeking#3
devgianlu merged 4 commits intomasterfrom
improved-seeking

Conversation

@devgianlu
Copy link
Copy Markdown
Owner

@devgianlu devgianlu commented Oct 12, 2023

This is an attempt at improving the seeking algorithm. The old way is completely bogus because lots of error adds up when seeking far from the beginning of the stream. The method implement now requires to fetch the entire stream to find the precise location which is not ideal.

This changes are required for a good playback experience on devices that use very long output buffers (pipewire on Fedora default to 10s): when pausing we throw away 10s of frames which must be rewinded in the decoder before resuming playback or they'll be lost.

Currently reverse enginnering the propertary seek table in the first ogg metadata page (mentioned here).

@devgianlu devgianlu added the enhancement New feature or request label Oct 12, 2023
@devgianlu devgianlu force-pushed the improved-seeking branch 2 times, most recently from f5ae572 to ce39706 Compare October 18, 2023 17:29
@devgianlu devgianlu marked this pull request as ready for review October 18, 2023 17:32
@devgianlu devgianlu merged commit 89deb94 into master Oct 18, 2023
@devgianlu devgianlu deleted the improved-seeking branch October 18, 2023 17:37
@devgianlu devgianlu changed the title Improved seeking feat: improved seeking Oct 19, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant