Commit Graph

29 Commits

Author SHA1 Message Date
Dean Herbert b18b5b9977
Add inline note about deadlock 2023-12-26 12:06:56 +09:00
Bartłomiej Dach f84b07e71a
Do not attempt to stop preview tracks when arriving from a "track completed" sync
This fixes an issue identified with the WASAPI implementation in
https://github.com/ppy/osu-framework/pull/6088. It has no real effect
on current `master`, but fixes a deadlock that occurs with the
aforementioned framework branch when one lets a preview track play out
to the end - at this point all audio will stop and an attempt to perform
any synchronous BASS operation (playing another track, seeking) will
result in a deadlock.

It isn't terribly clear as to why this is happening precisely, but
there does not appear to be any need to stop and seek at that point,
so this feels like a decent workaround even if the actual issue is
upstream (and will unblock pushing out WASAPI support to users).
2023-12-25 19:01:06 +01:00
Joseph Madamba ea624b8ad0 Reset preview track when stopping instead 2023-02-13 22:39:34 -08:00
Salman Ahmed a457a2fbbf Fix disposal of playing preview track not unmuting game track 2022-12-05 14:45:32 +03:00
Dan Balasescu 7bc8908ca9 Partial everything 2022-11-27 00:00:27 +09:00
Dean Herbert 786af81274 Fix `PreviewTrack` not disposing its owned audio `Track` 2022-08-05 14:15:01 +09:00
andy840119 094793bbe3 Mark the GetTrack() return type as nullable. 2022-07-31 22:01:30 +08:00
andy840119 6c964dee30 Rename the nullable disable annotation in the Audio namespace and mark some properties as nullable. 2022-07-31 22:00:14 +08:00
Dan Balasescu f8830c6850 Automated #nullable processing 2022-06-17 16:37:17 +09:00
Dean Herbert 47be20fa37 Private set on track for safety 2019-11-12 15:13:47 +09:00
iiSaLMaN 9d61d73ced Change Track and TrackManagerPreviewTrack accessibilities 2019-11-10 23:09:04 +03:00
Dean Herbert 91bcb5d4a7 Merge remote-tracking branch 'upstream/master' into fix-network-stalls 2019-11-06 19:06:28 +09:00
Dean Herbert c1a6cb1def Fix audio preview muting game audio indefinitely when beatmap panel is off-screen 2019-11-06 15:58:47 +09:00
Dean Herbert ddd58ea3da Use LongRunningLoad on network load components 2019-11-01 19:40:45 +09:00
Dean Herbert 372c5b081c Fix audio preview buttons not correctly handling load failure states
Closes #4593.
2019-05-23 12:07:49 +09:00
Dean Herbert c8793911a8 Enable more stringent inspectcode style inspections 2019-02-27 21:25:40 +09:00
smoogipoo 30815ace62 Fix crossthread operations due to Track.Completed 2019-02-27 16:52:34 +09:00
Roman Kapustin 71efbcf603 Merge remote-tracking branch 'ppy/master' into notify_track_completion_failure 2019-02-03 16:14:04 +03:00
Dean Herbert 8617aaa2a7 Update licence header (and remove year) 2019-01-24 17:43:03 +09:00
Roman Kapustin befe57e12e Stop PreviewTrack on Completed event 2018-11-17 15:23:52 +03:00
Dean Herbert 4b2b1f51f9 Apply some code review 2018-06-22 12:33:30 +09:00
smoogipoo 1932399521 Add testcases 2018-06-21 19:31:07 +09:00
smoogipoo 63a6fc2596 XMLDoc all the things 2018-06-21 18:54:50 +09:00
smoogipoo b2066c5d73 Rework preview tracks to reduce usage complexities 2018-06-21 18:40:27 +09:00
Roman Kapustin 9b69e1825d Make PreviewTrack.owner private 2018-06-02 22:06:45 +03:00
Roman Kapustin 330ce19041 Make PreviewTrack a component and use LoadComponentAsync 2018-06-01 23:36:25 +03:00
Roman Kapustin 5566732664 Get rid of PreviewTrackManager.onTrackStart and PreviewTrackManager.onTrackStop delegates 2018-06-01 21:36:30 +03:00
Roman Kapustin 88ac427ba6 PreviewTrack.Owner 2018-06-01 21:06:37 +03:00
Roman Kapustin 498244a308 Introduce PreviewTrack class 2018-05-25 00:37:53 +03:00