Commit graph

394 commits

Author SHA1 Message Date
Pavle Goloskokovic
b151ba518a Reverting compatibility changes as they are handled by a polyfill 2018-01-06 15:12:12 +01:00
Pavle Goloskokovic
2d2bf4c0e3 Added check for touch events when trying to unlock web audio on iOS devices 2018-01-06 15:03:28 +01:00
Pavle Goloskokovic
01e5274c76 Removed completed webkit implementation compatibility TODO 2018-01-06 15:02:30 +01:00
Pavle Goloskokovic
0645145010 Added fallback to noteOff method call for webkit implementation when stopping loop buffer source 2018-01-06 15:01:41 +01:00
Pavle Goloskokovic
7f04143b7c Added fallback to noteOff method call for webkit implementation when stopping buffer source 2018-01-06 15:01:24 +01:00
Pavle Goloskokovic
cd0c6b27a7 Added fallback to noteGrainOn method call for webkit implementation when starting loop buffer source 2018-01-06 15:00:43 +01:00
Pavle Goloskokovic
00c90eb81a Added fallback to noteGrainOn method call for webkit implementation when starting buffer source 2018-01-06 14:59:56 +01:00
Pavle Goloskokovic
9665ab2f7c Added fallback to createGainNode method call for webkit implementation when creating global volume node 2018-01-06 14:58:15 +01:00
Pavle Goloskokovic
e66f1b7030 Added fallback to createGainNode method call for webkit implementation when creating global mute node 2018-01-06 14:57:50 +01:00
Pavle Goloskokovic
e635351f0b Added fallback to createGainNode method call for webkit implementation when creating sound volume node 2018-01-06 14:56:59 +01:00
Pavle Goloskokovic
a508d7ef4c Added fallback to createGainNode method call for webkit implementation when creating sound gain node 2018-01-06 14:56:39 +01:00
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