Audio Improvements #47
cosmonaut
commented 2023-03-07 23:16:37 +00:00
Owner
- Audio is now processed on a background thread instead of the main thread
- Audio tick rate is now ~200Hz
- Audio thread is also woken up after Game.Update to process changes as soon as possible
- MoonWorks.Math.Easings class completely rewritten to be easier to understand and use
- SoundInstance properties no longer call into FAudio unless the value actually changed
- SoundInstance property values can now be interpolated over time (tweens)
- SoundInstance tweens can be delayed
- SoundInstance sets a sane filter frequency default when switching filter type
- StreamingSound classes can be designated to update automatically on the audio thread or manually
- StreamingSound buffer consumption should now set Stopped state in a more sane way
- Added ReverbEffect, which creates a submix voice for a reverb effect
- SoundInstance can apply a ReverbEffect, which enables the Reverb property
- Audio resource tracking improvements
- Some tweaks to VideoPlayer to make its behavior more consistent
- Audio is now processed on a background thread instead of the main thread
- Audio tick rate is now ~200Hz
- Audio thread is also woken up after Game.Update to process changes as soon as possible
- MoonWorks.Math.Easings class completely rewritten to be easier to understand and use
- SoundInstance properties no longer call into FAudio unless the value actually changed
- SoundInstance property values can now be interpolated over time (tweens)
- SoundInstance tweens can be delayed
- SoundInstance sets a sane filter frequency default when switching filter type
- StreamingSound classes can be designated to update automatically on the audio thread or manually
- StreamingSound buffer consumption should now set Stopped state in a more sane way
- Added ReverbEffect, which creates a submix voice for a reverb effect
- SoundInstance can apply a ReverbEffect, which enables the Reverb property
- Audio resource tracking improvements
- Some tweaks to VideoPlayer to make its behavior more consistent
cosmonaut
added 21 commits 2023-03-07 23:16:38 +00:00
f891586801
change AudioDevice to run on a background thread
040bf1c184
rewrite Easings class
f70caa1a42
audio interpolation support + audio threading
52c4fa26c7
working on thread safety
8aa9ce550d
fix audio thread deadlocks
0d441ae07a
optimize audio resource tracking
0781a99273
fix thread contention for audio tweens
e93f4f09bb
graphics resource tracking optimization
96800cc348
check >= on tween duration
b0259e2b61
remove unnecessary ogg loop override
d69f62d2ce
fix video loader race condition
4d41d230af
avoid calling into FAudio if property did not change
4df836a6a7
add delayed audio tween support
c0ed7bc13d
move tween logic to AudioTweenManager
34aa069d6b
initialize audio tween pool with 16 instances
f9628f12c7
set neutral frequency when switching filter type
93fe59fb15
streaming sound buffer consumption tweak
7014400d12
disable threaded upate for theora streaming sound
d17fb55810
clear tweens on property hard set
4591920bf6
ReverbEffect is now an AudioResource
771e6c234b
expose sound Format property + improve property setter ranges
cosmonaut
added 1 commit 2023-03-07 23:26:01 +00:00
abfcdb975d
lock StreamingSound.Stop for consistency
cosmonaut
merged commit 1f0e3b5040 into main 2023-03-07 23:28:57 +00:00
cosmonaut
deleted branch audio_thread 2023-03-07 23:28:57 +00:00
cosmonaut
referenced this issue from a commit 2023-03-07 23:28:57 +00:00
Audio Improvements (#47)
Loading…
Reference in New Issue
There is no content yet.
Delete Branch "audio_thread"
Deleting a branch is permanent. Although the deleted branch may exist for a short time before cleaning up, in most cases it CANNOT be undone. Continue?