Pavle Goloskokovic
|
7c2bd98e44
|
Simplified logic for removal of destroyed sounds
|
2018-01-05 20:14:34 +01:00 |
|
Pavle Goloskokovic
|
78c74739fc
|
Fixed sounds array truncate logic in update method
|
2018-01-05 19:35:44 +01:00 |
|
Pavle Goloskokovic
|
7e223685b3
|
Dispatching event when stopAll is called
|
2018-01-04 20:01:19 +01:00 |
|
Pavle Goloskokovic
|
734ce7e628
|
Dispatching event when resumeAll is called
|
2018-01-04 20:01:07 +01:00 |
|
Pavle Goloskokovic
|
4c172b6ffa
|
Dispatching event when pauseAll is called
|
2018-01-04 20:00:43 +01:00 |
|
Pavle Goloskokovic
|
ec657a6517
|
Using forEachActiveSound method when updating global rate and detune settings
|
2018-01-04 19:53:47 +01:00 |
|
Pavle Goloskokovic
|
55f8ca51af
|
Using forEachActiveSound method when destroying BaseSoundManager
|
2018-01-04 19:53:15 +01:00 |
|
Pavle Goloskokovic
|
2572b01e61
|
Using forEachActiveSound method for global playback methods
|
2018-01-04 19:52:44 +01:00 |
|
Pavle Goloskokovic
|
c424b61939
|
Added utility method forEachActiveSound that enables traversing only active (not destroyed) sounds
|
2018-01-04 19:51:54 +01:00 |
|
Pavle Goloskokovic
|
b3fad218bc
|
Added logic for removing destroyed sounds from sounds array on BaseSoundManager update call
|
2018-01-04 19:50:06 +01:00 |
|
Pavle Goloskokovic
|
cf31ed9a4d
|
Implemented destroy method for BaseSoundManager class
|
2018-01-04 19:48:00 +01:00 |
|
Pavle Goloskokovic
|
c919d331a6
|
Added docs for remove and removeByKey methods
|
2018-01-04 19:44:22 +01:00 |
|
Pavle Goloskokovic
|
267cfed1d0
|
Implemented removeByKey method
|
2018-01-04 19:43:41 +01:00 |
|
Pavle Goloskokovic
|
5f56d038f5
|
Implemented remove method
|
2018-01-04 19:41:43 +01:00 |
|
Pavle Goloskokovic
|
5790fe9a4f
|
Reordered destroy method calls
|
2018-01-04 19:39:21 +01:00 |
|
Pavle Goloskokovic
|
03187ae8b5
|
Using pendingRemove flag when destroying BaseSound
|
2018-01-04 19:38:51 +01:00 |
|
Pavle Goloskokovic
|
5d5acb40a9
|
Added pendingRemove flag that indicates if destroy method was called on this sound
|
2018-01-04 19:37:20 +01:00 |
|
Pavle Goloskokovic
|
1a38273cd8
|
Implemented resumeAll method
|
2018-01-04 19:32:10 +01:00 |
|
Pavle Goloskokovic
|
17dee3cd8d
|
Implemented pauseAll method
|
2018-01-04 19:30:29 +01:00 |
|
Pavle Goloskokovic
|
13f752baca
|
Implemented global playAudioSprite method to enable playing audiosprite sprites on the fly
|
2018-01-04 19:28:34 +01:00 |
|
Pavle Goloskokovic
|
6a64693257
|
Updated global play method to accept sound config and sound marker as second argument
|
2018-01-04 19:27:12 +01:00 |
|
Pavle Goloskokovic
|
66936490a1
|
Implemented global play method to enable playing sounds on the fly
|
2018-01-04 19:24:28 +01:00 |
|
Pavle Goloskokovic
|
70b31c7273
|
Implemented stopAll method
|
2018-01-04 15:59:44 +01:00 |
|
Pavle Goloskokovic
|
4ff8fca1c5
|
Instantiating event dispatcher before setting any property values
|
2018-01-03 21:55:51 +01:00 |
|
Pavle Goloskokovic
|
0472463dad
|
Instantiating event dispatcher before setting any property values
|
2018-01-03 21:55:41 +01:00 |
|
Pavle Goloskokovic
|
c293d4a516
|
Dispatching event when global detune value changes
|
2018-01-03 21:29:00 +01:00 |
|
Pavle Goloskokovic
|
f6976daf2b
|
Dispatching event when global rate value changes
|
2018-01-03 21:28:45 +01:00 |
|
Pavle Goloskokovic
|
3b5289a733
|
Dispatching event when global volume value changes
|
2018-01-03 21:28:13 +01:00 |
|
Pavle Goloskokovic
|
3967a111a4
|
Dispatching event when global mute value changes
|
2018-01-03 21:27:53 +01:00 |
|
Pavle Goloskokovic
|
d73208349f
|
Dispatching event when sound seek changes
|
2018-01-03 21:27:09 +01:00 |
|
Pavle Goloskokovic
|
dc796465b7
|
Dispatching event when sound detune value changes
|
2018-01-03 21:26:49 +01:00 |
|
Pavle Goloskokovic
|
de8919645a
|
Dispatching event when sound rate value changes
|
2018-01-03 21:26:31 +01:00 |
|
Pavle Goloskokovic
|
e0591df9fc
|
Dispatching event when sound volume value changes
|
2018-01-03 21:26:15 +01:00 |
|
Pavle Goloskokovic
|
0c70ae236e
|
Dispatching event when sound mute value changes
|
2018-01-03 21:26:01 +01:00 |
|
Pavle Goloskokovic
|
c8a0591b62
|
Added SoundValueEvent to index.js
|
2018-01-03 21:24:47 +01:00 |
|
Pavle Goloskokovic
|
a157dd2ccc
|
Added event class for sound value change
|
2018-01-03 21:24:33 +01:00 |
|
Pavle Goloskokovic
|
4210898a24
|
Replaced stop method call with logic needed to stop sound in order to avoiding dispatching both stop and ended events
|
2018-01-03 21:23:41 +01:00 |
|
Pavle Goloskokovic
|
89fce9135a
|
Dispatching event when sound ends
|
2018-01-03 21:22:07 +01:00 |
|
Pavle Goloskokovic
|
3356fc2d92
|
Dispatching event when calling stop method
|
2018-01-03 21:20:40 +01:00 |
|
Pavle Goloskokovic
|
99accdbbd0
|
Dispatching event when calling resume method
|
2018-01-03 21:20:22 +01:00 |
|
Pavle Goloskokovic
|
fbc7264d4c
|
Dispatching event when calling pause method
|
2018-01-03 21:20:02 +01:00 |
|
Pavle Goloskokovic
|
17985a0147
|
Dispatching event when calling play method
|
2018-01-03 21:19:44 +01:00 |
|
Pavle Goloskokovic
|
a664714c12
|
Removed unused dynamic fx code
|
2018-01-03 20:38:08 +01:00 |
|
Pavle Goloskokovic
|
d25b714e7e
|
Added global playAudioSprite method that enables playing sounds from audiosprite on the fly
|
2018-01-03 20:35:28 +01:00 |
|
Pavle Goloskokovic
|
912a737561
|
Added global play method that enables playing sounds on the fly
|
2018-01-03 20:32:31 +01:00 |
|
Pavle Goloskokovic
|
1c896ba1f7
|
Removed fadeTo method
|
2018-01-03 20:31:33 +01:00 |
|
Pavle Goloskokovic
|
92ee1bb7e0
|
Removed fade tween property from destroy method
|
2018-01-03 20:31:07 +01:00 |
|
Pavle Goloskokovic
|
36f918c26b
|
Removed fade tween property
|
2018-01-03 20:28:22 +01:00 |
|
Pavle Goloskokovic
|
aad8dea41b
|
Added SoundEvent class to index.js
|
2017-12-22 15:47:37 +01:00 |
|
Pavle Goloskokovic
|
e36e18977e
|
Dispatching loop event when sound loops
|
2017-12-22 15:47:15 +01:00 |
|
Pavle Goloskokovic
|
0ac51b879d
|
Added SoundEvent class
|
2017-12-22 15:46:48 +01:00 |
|
Pavle Goloskokovic
|
97e648bea6
|
Removed debug logging
|
2017-12-22 15:46:05 +01:00 |
|
Pavle Goloskokovic
|
c569aabc73
|
Resetting rate updates on sound loop
|
2017-12-22 15:45:28 +01:00 |
|
Pavle Goloskokovic
|
5635c04da0
|
Stopping and removing loop source when stopping and removing main source
|
2017-12-22 15:42:45 +01:00 |
|
Pavle Goloskokovic
|
c15afd2d29
|
Setting loopTime to 0 when stopping and resetting loop source
|
2017-12-22 15:42:09 +01:00 |
|
Pavle Goloskokovic
|
9b1db4257c
|
Setting playTime and startTime properties to loopTime value whe sound loops
|
2017-12-22 15:40:58 +01:00 |
|
Pavle Goloskokovic
|
c1688ddbfe
|
Setting loopTime to loop source start call when parameter value when creating it
|
2017-12-22 15:37:36 +01:00 |
|
Pavle Goloskokovic
|
54de230ac4
|
Added loopTime property to keep track of the time at which the sound loop source should actually start playback based on BaseAudioContext.currentTime value
|
2017-12-22 15:35:57 +01:00 |
|
Pavle Goloskokovic
|
34d0e4f7a6
|
Setting loop source to be main source when sound loops and creating next loop source
|
2017-12-22 15:33:19 +01:00 |
|
Pavle Goloskokovic
|
cd6b6bf574
|
Using the same current time value for updating source playback rate and adding rate update item to the array
|
2017-12-22 15:29:56 +01:00 |
|
Pavle Goloskokovic
|
13d891893c
|
Setting correct playback rate to loop source buffer when creating it
|
2017-12-22 15:27:42 +01:00 |
|
Pavle Goloskokovic
|
39f95cf6b4
|
Resetting loop source when updating sound playback rate if it is playing
|
2017-12-22 15:24:25 +01:00 |
|
Pavle Goloskokovic
|
187379ace2
|
Always topping and removing loop buffer source when setting loop property as it needs to be reset even if setting it to true
|
2017-12-22 15:21:21 +01:00 |
|
Pavle Goloskokovic
|
4d95cac657
|
Stopping and removing loop buffer source when setting loop property to false
|
2017-12-22 15:20:27 +01:00 |
|
Pavle Goloskokovic
|
b9ec8f2dea
|
Added method for stopping and removing loop buffer source
|
2017-12-22 15:18:35 +01:00 |
|
Pavle Goloskokovic
|
15db2bac74
|
Moved logic for calculating loop time into separate method
|
2017-12-21 17:21:59 +01:00 |
|
Pavle Goloskokovic
|
4f6a665451
|
Moved loop buffer source creation and starting logic into separate method
|
2017-12-21 17:19:45 +01:00 |
|
Pavle Goloskokovic
|
46a99af255
|
Calculating correct value for when parameter for loop buffer source start method
|
2017-12-21 17:17:10 +01:00 |
|
Pavle Goloskokovic
|
b559985b31
|
Creating and starting loop buffer source only if sound is currently playing
|
2017-12-21 17:10:57 +01:00 |
|
Pavle Goloskokovic
|
4538ee9af1
|
Calculating when, offset and duration parameters for buffer source start method and calling it in loop setter method
|
2017-12-21 17:08:29 +01:00 |
|
Pavle Goloskokovic
|
1779bcb853
|
Moved loop source creation logic into loop property setter
|
2017-12-21 17:04:01 +01:00 |
|
Pavle Goloskokovic
|
8e9cc41b36
|
Moved sound buffer source creation logic into separate method to be able to reuse it
|
2017-12-21 17:02:44 +01:00 |
|
Pavle Goloskokovic
|
e612e2eaae
|
Creating loop buffer source if looping is set in config
|
2017-12-21 16:58:43 +01:00 |
|
Pavle Goloskokovic
|
636275bc85
|
Added loop audio buffer source field
|
2017-12-21 16:56:19 +01:00 |
|
Pavle Goloskokovic
|
b2d0c72249
|
Added condition for handling looping in update method
|
2017-12-21 16:55:05 +01:00 |
|
Pavle Goloskokovic
|
a766ff9c2c
|
Setting hasLooped flag when sound has ended and is supposed to loop
|
2017-12-21 16:53:03 +01:00 |
|
Pavle Goloskokovic
|
879e52a735
|
Added hasLooped property for WebAudioSound class
|
2017-12-21 16:50:44 +01:00 |
|
Pavle Goloskokovic
|
f19262acd4
|
Replaced setTargetAtTime calls with setValueAtTime calls
|
2017-12-18 17:29:01 +01:00 |
|
Pavle Goloskokovic
|
7033e1c9f5
|
Merge remote-tracking branch 'origin/master'
|
2017-12-18 17:14:55 +01:00 |
|
orblazer
|
09afe0be34
|
Fix deprecated WebAudio value change on FX
|
2017-12-16 02:47:30 +01:00 |
|
Pavle Goloskokovic
|
287dc70d61
|
Simplified rate updates logic in setRate method
|
2017-12-14 14:09:00 +01:00 |
|
Pavle Goloskokovic
|
06362216d1
|
Fixed issue with changing rate on a sound with delayed playback
|
2017-12-14 14:04:05 +01:00 |
|
Pavle Goloskokovic
|
7adb101d7e
|
Updating rate updates correctly if delay has not yet elapsed
|
2017-12-13 22:49:13 +01:00 |
|
Pavle Goloskokovic
|
8ea3dbd6af
|
Removed completed TODO
|
2017-12-13 22:48:27 +01:00 |
|
Pavle Goloskokovic
|
2126381bdd
|
Updated startTime property description
|
2017-12-13 22:48:05 +01:00 |
|
Pavle Goloskokovic
|
b21331fb1c
|
Returning difference between playTime and startTime from seek getter if delay has not yet elapsed
|
2017-12-13 22:47:39 +01:00 |
|
Pavle Goloskokovic
|
e173cac7d5
|
Ignoring seek setter calls on delayed playing sound if delay has not yet elapsed
|
2017-12-13 22:46:02 +01:00 |
|
Pavle Goloskokovic
|
7ee1f78f18
|
Ignoring resume calls on delayed playing sound if delay has not yet elapsed
|
2017-12-13 22:44:59 +01:00 |
|
Pavle Goloskokovic
|
a17ffeb5b9
|
Ignoring pause calls on delayed playing sound if delay has not yet elapsed
|
2017-12-13 22:43:42 +01:00 |
|
Pavle Goloskokovic
|
1993aabbf4
|
Resetting startTime when stopping buffer source
|
2017-12-13 22:42:16 +01:00 |
|
Pavle Goloskokovic
|
b087a92612
|
Setting startTime to value when sound should start playing and playTime to correct relative value
|
2017-12-13 22:41:33 +01:00 |
|
Pavle Goloskokovic
|
d4645313f4
|
Added startTime property to keep track of the time when the sound actually started playing music
|
2017-12-13 22:39:24 +01:00 |
|
Pavle Goloskokovic
|
52d2be65f3
|
Updated playTime property description
|
2017-12-13 22:36:57 +01:00 |
|
Pavle Goloskokovic
|
ca3a4b9373
|
Renaming startTime property to playTime
|
2017-12-13 22:32:34 +01:00 |
|
Pavle Goloskokovic
|
e8617a87a3
|
Taking delay config setting into account when playing sound source
|
2017-12-13 22:29:55 +01:00 |
|
Pavle Goloskokovic
|
58da23987c
|
Removing completed TODO
|
2017-12-13 22:26:54 +01:00 |
|
Pavle Goloskokovic
|
f7ab4ca402
|
Resetting delay value in resetConfig method
|
2017-12-13 22:26:32 +01:00 |
|
Pavle Goloskokovic
|
e87fdb71ec
|
Added default delay value to initial sound marker config
|
2017-12-13 22:25:58 +01:00 |
|
Pavle Goloskokovic
|
7369f04b99
|
Added default delay value to initial sound config
|
2017-12-13 22:25:22 +01:00 |
|
Pavle Goloskokovic
|
a13f90b4a1
|
Removed completed TODO
|
2017-12-12 20:26:11 +01:00 |
|
Pavle Goloskokovic
|
dca07e84fb
|
Setting loop value at the end of applyConfig method
|
2017-12-12 20:21:42 +01:00 |
|
Pavle Goloskokovic
|
0e5b2594c5
|
Removing unneeded logic from loop property setter
|
2017-12-12 20:20:45 +01:00 |
|
Pavle Goloskokovic
|
95abc59e3e
|
Resetting config when looping sound in order to reset any non-zero seek value
|
2017-12-12 20:18:51 +01:00 |
|
Pavle Goloskokovic
|
bb281605c6
|
Checking if looping is enabled when sound ends and if it is creating and playing source sound again
|
2017-12-12 20:17:42 +01:00 |
|
Pavle Goloskokovic
|
1f5d4f2769
|
Removed createBufferSource method since its logic was used only in one place
|
2017-12-12 20:13:58 +01:00 |
|
Pavle Goloskokovic
|
67477708b2
|
Ditching loopSource approach as logic would be too complicated when taking playback rate into account
|
2017-12-12 20:11:46 +01:00 |
|
Pavle Goloskokovic
|
47522af035
|
Reordering setting loop value in applyConfig before rate and detune to enable rate and detune to update loop source as well
|
2017-12-12 20:02:17 +01:00 |
|
Pavle Goloskokovic
|
c06a2bc78c
|
Setting loop source rate in setRate method if looping is enables
|
2017-12-12 20:00:49 +01:00 |
|
Pavle Goloskokovic
|
dbc4b8b6f2
|
Renamed createLoopBufferSource to createAndStartLoopBufferSource and added some logic for starting loop source
|
2017-12-12 20:00:04 +01:00 |
|
Pavle Goloskokovic
|
d13bdfde62
|
Added createBufferSource to reuse buffer source creation logic
|
2017-12-12 19:58:44 +01:00 |
|
Pavle Goloskokovic
|
648187295e
|
Added method for creating loop buffer source
|
2017-12-12 19:56:18 +01:00 |
|
Pavle Goloskokovic
|
d788ed3a44
|
Stop and remove loopSource in stopAndRemoveBufferSource
|
2017-12-12 19:52:24 +01:00 |
|
Pavle Goloskokovic
|
bca40391fe
|
If value set to loop property is the same as config value skip any further commands
|
2017-12-12 19:47:57 +01:00 |
|
Pavle Goloskokovic
|
c8f43e7a5a
|
Added a bit of logic and couple of TODOs to handle loop source when setting loop property value
|
2017-12-12 19:46:08 +01:00 |
|
Pavle Goloskokovic
|
bcda86c566
|
Setting config value when setting loop property
|
2017-12-12 19:44:41 +01:00 |
|
Pavle Goloskokovic
|
48f86abb65
|
Returning config value when getting loop property
|
2017-12-12 19:43:21 +01:00 |
|
Pavle Goloskokovic
|
02962f316e
|
Defined loop property for WebAudioSound class
|
2017-12-12 19:42:21 +01:00 |
|
Pavle Goloskokovic
|
121672d442
|
Added loopSource field for timed loop sound source
|
2017-12-12 19:40:36 +01:00 |
|
Pavle Goloskokovic
|
429d86ba31
|
Added TODO for handling removed or destroyed sounds
|
2017-12-10 13:18:03 +01:00 |
|
Pavle Goloskokovic
|
c9868d5408
|
Implemented destroy method for WebAudioSound class
|
2017-12-10 13:17:39 +01:00 |
|
Pavle Goloskokovic
|
594d1512aa
|
Implemented destroy method for BaseSound class
|
2017-12-10 13:17:17 +01:00 |
|
Pavle Goloskokovic
|
b5e8a60530
|
Saving seek value only when sound is playing or paused, for consistency
|
2017-12-07 20:58:54 +01:00 |
|
Pavle Goloskokovic
|
8d161ac06d
|
Returning config value when paused and 0 when stopped when getting seek value
|
2017-12-07 20:58:07 +01:00 |
|
Pavle Goloskokovic
|
e4ca4d4b75
|
Updated description for mute property
|
2017-12-07 20:57:05 +01:00 |
|
Pavle Goloskokovic
|
361ff7ff94
|
Updated description for volume property
|
2017-12-07 20:56:51 +01:00 |
|
Pavle Goloskokovic
|
42003ca74c
|
Updated description for seek property
|
2017-12-07 20:56:34 +01:00 |
|
Pavle Goloskokovic
|
d856a97e98
|
Reverting to resetting config on every play method call
|
2017-12-07 20:55:47 +01:00 |
|
Pavle Goloskokovic
|
11d9d5455d
|
Resetting config on stop call
|
2017-12-07 20:17:38 +01:00 |
|
Pavle Goloskokovic
|
1973781052
|
Resetting config when calling play method only if current call plays different marker than previous (to enable setting seek before replaying same sound)
|
2017-12-07 20:17:00 +01:00 |
|
Pavle Goloskokovic
|
75d480ffba
|
Added protected access modifier to overridden applyConfig method
|
2017-12-07 20:14:58 +01:00 |
|
Pavle Goloskokovic
|
c3107ca629
|
Setting paused time (seek) before calling stopAndRemoveBufferSource since getCurrentTime depends on startTime value and it gets reset in stopAndRemoveBufferSource method
|
2017-12-07 20:13:52 +01:00 |
|
Pavle Goloskokovic
|
039ed52cf2
|
Resetting startTime value inside of stopAndRemoveBufferSource method to have more consistent sound state
|
2017-12-07 20:11:09 +01:00 |
|
Pavle Goloskokovic
|
0a5e8de376
|
Using subclass values for duration properties if available
|
2017-12-06 18:07:43 +01:00 |
|
Pavle Goloskokovic
|
58d0be5279
|
Setting duration properties before calling super method
|
2017-12-06 18:06:39 +01:00 |
|
Pavle Goloskokovic
|
0338d6f7c0
|
Initializing duration properties before config because some config options' setters use those values (seek)
|
2017-12-06 18:06:05 +01:00 |
|
Pavle Goloskokovic
|
b01859eb06
|
Moved config initialization right before config options initializations
|
2017-12-06 18:04:18 +01:00 |
|
Pavle Goloskokovic
|
260d519a7e
|
Resetting config before merging it with config provided to play method
|
2017-12-05 20:25:31 +01:00 |
|
Pavle Goloskokovic
|
99aa2b22c4
|
Resetting sound playback at seek time if sound is playing
|
2017-12-05 20:22:49 +01:00 |
|
Pavle Goloskokovic
|
06b7ad91fd
|
Updated a TODO to add delay config setting
|
2017-12-05 20:21:14 +01:00 |
|
Pavle Goloskokovic
|
b3f5b03e6f
|
Calling getCurrentTime directly when setting seek as paused time since we don't want to self-assign it
|
2017-12-05 20:20:33 +01:00 |
|
Pavle Goloskokovic
|
4e0c274ca4
|
No need to reset config seek value since it is reset in resetConfig method
|
2017-12-05 20:19:02 +01:00 |
|
Pavle Goloskokovic
|
44ce0edd82
|
Moved the same logic for calculating offset duration and startTime into createAndStartBufferSource method
|
2017-12-05 20:17:14 +01:00 |
|
Pavle Goloskokovic
|
25a11687c2
|
Replaced pausedTime field with config seek value
|
2017-12-05 20:01:06 +01:00 |
|
Pavle Goloskokovic
|
f347bcc45a
|
Limiting seek value to be between 0 and current duration in seek property setter
|
2017-12-05 19:57:07 +01:00 |
|
Pavle Goloskokovic
|
7920ad3b6d
|
Setting config seek value to value provided to seek property setter
|
2017-12-05 19:55:48 +01:00 |
|
Pavle Goloskokovic
|
d7f65cc003
|
Added comments to make it easier to figure out isPaused and isPlaying current values at any time
|
2017-12-05 19:51:15 +01:00 |
|
Pavle Goloskokovic
|
1590ab2dda
|
Returning config seek value in seek property getter if is not playing
|
2017-12-05 19:48:52 +01:00 |
|
Pavle Goloskokovic
|
5a5444e936
|
Returning value from getCurrentTime in seek property getter only if sound is currently playing
|
2017-12-05 19:47:41 +01:00 |
|
Pavle Goloskokovic
|
6c7f7ae732
|
Setting pausedTime to current seek value
|
2017-12-05 19:45:33 +01:00 |
|
Pavle Goloskokovic
|
aa503131a4
|
Returning value from getCurrentTime in seek property getter
|
2017-12-05 19:44:37 +01:00 |
|