Commit Graph

29 Commits (0500d949306e665a572cdac39790b0302adc71c7)

Author SHA1 Message Date
cosmonaut eebbaeb6ae new StreamingVoice and AudioData system 2023-08-02 14:10:48 -07:00
cosmonaut a0408a863c start reimplementing streaming audio on voice API 2023-08-01 19:36:07 -07:00
cosmonaut c2cb83f93f faux mastering voice + submitting static sounds 2023-08-01 18:13:17 -07:00
cosmonaut e2c85ec728 restructure and implement Voice hierarchy 2023-08-01 11:22:49 -07:00
cosmonaut b1c7740b86 started reworking audio around Voice API 2023-07-31 01:16:19 -07:00
cosmonaut 81cd397013 fix AudioDevice crash on shutdown 2023-07-28 15:02:20 -07:00
cosmonaut e73c7ede55 rename SoundQueue to SoundSequence 2023-07-28 13:21:50 -07:00
cosmonaut 1d86d0c210 add SoundQueue 2023-07-28 13:02:50 -07:00
cosmonaut 5ff7da927a try-catch inside AudioThreadMain 2023-06-28 13:20:18 -07:00
cosmonaut fc0937b2ff fix crash caused by audio weak references 2023-06-14 18:22:49 -07:00
cosmonaut 5df08727c1 Sound instancing rework 2023-05-11 17:56:40 -07:00
cosmonaut 1f0e3b5040 Audio Improvements (#47)
- Audio is now processed on a background thread instead of the main thread
- Audio tick rate is now ~200Hz
- 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

Reviewed-on: #47
2023-03-07 23:28:57 +00:00
cosmonaut f8b14ea94f add ReverbEffect 2023-03-01 17:47:09 -08:00
cosmonaut e9aacb44da Add synchronized audio playback mechanism 2023-02-16 15:12:35 -08:00
cosmonaut d76633bdfc change sizeof calls to Marshal.SizeOf in interop situations 2022-12-13 19:01:40 -08:00
cosmonaut 751b8310ce Fix crash when no audio device found 2022-11-30 09:43:49 -08:00
cosmonaut ea86212199 add AudioDevice.MasteringVolume property 2022-10-20 15:00:25 -07:00
TheSpydog eb8c350a47 Fix debug assertion in AudioDevice constructor (#25)
Let's try this again...

Co-authored-by: Caleb Cornett <caleb.cornett@outlook.com>
Reviewed-on: #25
Co-authored-by: TheSpydog <thespydog@noreply.example.org>
Co-committed-by: TheSpydog <thespydog@noreply.example.org>
2022-08-30 17:09:32 +00:00
cosmonaut 4756fe2b14 add SetMasteringVolume method to AudioDevice 2022-05-23 19:11:48 -07:00
cosmonaut a0082bcec6 change Marshal.SizeOf to sizeof 2022-04-27 14:14:15 -07:00
cosmonaut be4b5cf2c7 fix audio not being disposed in correct order 2022-04-20 14:57:24 -07:00
cosmonaut 8973b3e658 Formatting pass 2022-02-22 21:14:32 -08:00
cosmonaut a0c57c7a59 Cleanup fixes 2022-02-22 16:44:39 -08:00
cosmonaut 5eb5027bf1 initial 3D audio implementation 2021-02-26 16:17:26 -08:00
cosmonaut eda1efedbe properly destroy audio 2021-01-28 18:01:42 -08:00
cosmonaut 58427b8c90 refactor sound API to support generic decoding 2021-01-20 12:39:31 -08:00
cosmonaut ec09a5952b attach reverb 2021-01-19 22:06:23 -08:00
cosmonaut ec28d17a75 fix static sound loading + window title 2021-01-19 21:33:25 -08:00
cosmonaut 768bf38e3f starting audio implementation 2021-01-19 18:06:10 -08:00