Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

skip_duration not instant #392

Closed
janwirth opened this issue Aug 22, 2021 · 4 comments
Closed

skip_duration not instant #392

janwirth opened this issue Aug 22, 2021 · 4 comments

Comments

@janwirth
Copy link

I was wondering how to build a scrubbable progress bar with rodio - Source.skip_duration is not instant, so this method won't work. If rodio is not the right tool to build an audio player, can you please point me in the right direction?

@janwirth janwirth changed the title skip_duration takes long. skip_duration not instant Aug 22, 2021
@VanillaBrooks
Copy link

related to #176 and #338 (with hacky workaround)

As far as I have seen rodio is the simplest way to do this in rust. If low latency is really important on the audio you may be better off building in another language, or working on backend support.

@woelper
Copy link

woelper commented Nov 21, 2021

I don't know if that helps, but I've built a very simple audio player with seeking. It's using Kira as an audio lib and seeking was easy to do. The downside is that kira does not stream (yet), so loading audio takes longer than in rodio. Seeking is instant though.

@est31
Copy link
Member

est31 commented Nov 22, 2021

Closing as dupe of #176

@est31 est31 closed this as completed Nov 22, 2021
@est31
Copy link
Member

est31 commented Nov 22, 2021

That being said, it's not a perfect dupe of #176, as one can think of fast-mode skip_duration like functionality in many formats, which is basically linear seeking, and easier to implement than logarithmic seeking. E.g. in vorbis it's easy to find out the number of samples in a packet without decoding it, so it is possible to skip the given number of samples if needed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants