Commit graph

824 commits

Author SHA1 Message Date
Richard Davey
ee426c9ae4 If you set a WebAudioSound to loop and set SoundManager.pauseOnBlur = false, then if you start the sound and tab away from Phaser, the sound wouldn't then loop on return to the game, if the loop _expired_ while the tab was out of focus. This was due to checking the audio source node target against the wrong internal property. Fix #6702 2024-09-02 18:27:10 +01:00
Richard Davey
38d27c1fd7 Changed version number 2024-06-06 15:49:06 +01:00
Richard Davey
ca8102ab30
Merge pull request #6781 from samme/feature/audio-warnings
Improve the audio warnings
2024-06-06 15:29:01 +01:00
samme
f01e2764c9 Add BaseSoundManager#isPlaying 2024-05-03 07:39:37 -07:00
samme
f7e029ca2d Improve the audio warnings 2024-04-04 08:40:06 -07:00
Richard Davey
2dfd421495 WebAudioSound will now set hasEnded = false as part of stopAndRemoveBufferSource, after the source has been stopped and disconnected. This should prevent it from being left in a true state if the source onended callback fired late, after the sound had been re-played. Fix #6657 2024-02-20 17:50:44 +00:00
Richard Davey
1f8276ac76 Updated copyright year, company and author 2024-02-19 17:12:24 +00:00
Richard Davey
494ea72108 The BaseSound.destroy method will now call BaseSound.stop which will reset the isPlaying and other flags. Fix #6645 2023-11-08 16:26:48 +00:00
Jay Kim
064b7cce25
fix: memory leak in WebAudioSoundManager
`unlockHandler` was not removed because of `this` was not binded to `bodyRemove` function, causing serious memory leak.
2023-04-14 18:16:38 +09:00
Richard Davey
f68218477c Setting SoundManager.pauseOnBlur to true would not stop the audio if a game lost focus on certain browsers (like Firefox and Chrome on Android 13). This is now enforced via the new gameLostFocus flag. Fix #6354 2023-04-12 03:23:21 +01:00
Richard Davey
ddc79c71a2 Update WebAudioSound.js 2023-04-03 20:19:26 +01:00
Richard Davey
68186fae34
Merge pull request #6382 from alxwest/spatial-sound
Spatial sound
2023-02-17 17:32:54 +00:00
Richard Davey
a3b771e5ee
Merge pull request #6388 from samme/fix/listener-positionX
Fix "listener.positionX is undefined" error
2023-02-17 17:30:23 +00:00
Richard Davey
5ad4cbba7d Types fix 2023-02-17 17:25:11 +00:00
samme
2a5a7d07f9 Fix "listener.positionX is undefined" error
Fixes #6385
2023-02-13 10:12:04 -08:00
Alex West
6f6f96959d Efficient spatial audio processing 2023-02-02 17:43:04 +00:00
Alex West
ee2bf925ae Missed reference 2023-02-02 14:53:22 +00:00
Alex West
f1b40a8475 audioDestination to listenerPosition 2023-02-02 14:52:28 +00:00
Alex West
2507bb0fa4 Blip in sound's spatial source on play and pause. 2023-02-02 13:55:08 +00:00
Alex West
2df3d5979d Merge branch 'spatial-sound' of https://github.com/alxwest/phaser into spatial-sound 2023-02-02 13:22:30 +00:00
Richard Davey
a679b3e835 Update SpatialSoundConfig.js 2023-02-01 17:22:52 +00:00
Alex West
2eb916238b Reduce processing on spatial audio for some browsers 2023-02-01 15:06:12 +00:00
Richard Davey
717f09e244 Tidying up the spatial audio functions to make them more game friendly 2023-01-31 18:47:49 +00:00
Richard Davey
60b4dabf59 Corrected the source properties and swapped to use GetFastValue #6355 2023-01-31 16:28:20 +00:00
Richard Davey
a062fe3281 Changed default cone outer angle to 0 2023-01-31 16:18:27 +00:00
Richard Davey
0cedda1cd9 Fix jsdocs and eslint #6355 2023-01-31 15:50:55 +00:00
Richard Davey
2e2b572e43 Added missing property declarations for spatialNode and spatialSource and added missing nulll of the source in destroy #6355 2023-01-31 15:49:09 +00:00
Richard Davey
c2efac5ea8 Update SpatialSoundConfig.js 2023-01-31 15:48:08 +00:00
Alex West
114d267ffa whitespace 2023-01-30 14:20:39 +00:00
Alex West
c1f42c9369 Bug fix: reset position of listener when applying config. 2023-01-30 14:17:40 +00:00
Alex West
fc737e60b7 Removed z value change. 2023-01-26 16:23:25 +00:00
Alex West
9ff5dc5e77 Set defaults to web audio's standards. 2023-01-26 16:22:53 +00:00
Alex West
cce08adf5c bug fix: chained audio nodes incorrectly.
bug fix: null exception raised when context.createPanner isn't defined.
2023-01-26 13:18:57 +00:00
Alex West
34b50d9f5d Forgot the brackets... 2023-01-26 11:57:41 +00:00
Alex West
b015d2b27a createPanner() instead of initializing PannerNode 2023-01-24 09:55:06 +00:00
Alex West
33a3388892 Requested changes from PR 2023-01-24 09:26:42 +00:00
Alex West
98b4364f55 Whitespace fix 2023-01-20 09:58:20 +00:00
Alex West
d124f19c33 Removed redundant comment 2023-01-19 18:09:50 +00:00
Alex West
8f60ada769 First pass at 2D spatial sound. 2023-01-19 18:09:16 +00:00
Richard Davey
468bf7821d Updated copyright year 2023-01-02 17:36:27 +00:00
Richard Davey
14ddd29fbd Fixed TS errors 2022-11-30 15:06:52 +00:00
Richard Davey
9bdf022bed The BaseSoundManager.getAll method used to require a key parameter, to return Sounds matching the key. This is now optional and if not given, all Sound instances are returned. 2022-11-22 18:49:37 +00:00
Richard Davey
320317c884 The WebAudioSoundManager will now detect if the Audio Context enters a 'suspended' or 'interrupted' state as part of its update loop and if so it'll try to resume the context. This can happen if you change or disable the audio device, such as plugging in headphones with built-in audio drivers then disconnecting them, or swapping tabs on iOS. Fix #5353 2022-11-22 18:38:49 +00:00
Richard Davey
ee2b5f5e35 Clarify jsdocs. Fix #6043 2022-11-22 18:26:13 +00:00
Richard Davey
45fbebb53a BaseSoundManager.getAllPlaying is a new method that will return all currently playing sounds in the Sound Manager.
Fix #6147
2022-11-21 21:38:54 +00:00
Richard Davey
d71b53a7f5 Updated jsdocs. Fix #5981 2022-11-18 22:14:59 +00:00
Richard Davey
064e8a3ec2 Fixed type issues 2022-11-10 16:05:20 +00:00
Richard Davey
023343c789 All events have a type of string. Fix #6136 2022-09-21 22:01:03 +01:00
Richard Davey
6fe41a4845 Fix path 2022-09-20 22:24:27 +01:00
Richard Davey
6c70869ea4 Lots of jsdoc / TS fixes 2022-09-20 22:17:21 +01:00