-
Notifications
You must be signed in to change notification settings - Fork 419
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
Add an option to change behavior of IsAlive
in SampleChannel
#6401
base: master
Are you sure you want to change the base?
Conversation
How about we add a And then, every other case should auto-free when playback ends or I believe everywhere in osu! we operate under the assumption that channels are auto-freeing by default as I believe that's effectively how they work in BASS when they're |
I think adding
|
So what happens when the channel is played, manually stopped, and the |
That's right. I'll live until it gets disposed somehow. I think there is a misunderstanding about ManualFree. Do you want channels to be unable to resume playback once it is stopped when ManualFree is false? I first assumed that you don't want such behavior, but I guess I misread your comment. I'm okay with that if that's what you mean. |
Yeah, my idea is to consider |
IsAlive
in SampleChannel
This PR provides an option to change behavior of
IsAlive
in SampleChannel. To make auto-free work, #6397 is required.If
ManualFree
is false (default), it works the same as before:IsAlive
will be false afterStop
or the end of playback.If
ManualFree
is true,IsAlive
will never be true until the user explicitly callsDispose
.It also contains a fix for an issue where calling
Play
after disposal makesPlaying
true.