-
Notifications
You must be signed in to change notification settings - Fork 292
Introduce FixedSource as experimental #828
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
Conversation
|
Sorry for my buddy Claude posting on my behalf earlier. Looks good to both him and me 😄 How much effort do we want to put into salvaging the current situation with
I've got a couple things brewing to basically ensure consistent usage of |
I personally zero :) I hate spans now 😝. Once the experimental stuff gets stable I would like to recommend to users to convert to FixedSource ASAP. We should at some point benchmark:
That would break resampling I think? Or do you suggest a signal to watch that changes? The latter would wreck performance (which is why I gave up on it).
Good point the current name & contract contradict each-other. Though we could also rename the method to resolve this. In my perfect world the DynamicSource is just there for backwards compatibility, decoders would get a re-sampler build. With a re-sampler build in they can optimally use all the info they have about parameter stability. |
We can keep the discussion going here 👍 after I merge this. |
If you see no reason against it, then I'll put in some effort to fix
The resampler at the end of the pipeline would basically be a pass-through, when
No, the current resampler just takes frames (not spans) without even calling For the future resampler with Rubato, I think we should use a fixed-out regime. That means that:
I'm also toying around with
I imagine it'd be possible to signal over a broadcast channel. But with your architecture, we don't need to. |
This introduces a small component from rodio-experiments into rodio under the experimental flag.
For full context see that repo, though in short this enables: