Commit graph

114 commits

Author SHA1 Message Date
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
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
c9868d5408 Implemented destroy method for WebAudioSound class 2017-12-10 13:17:39 +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
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
58d0be5279 Setting duration properties before calling super method 2017-12-06 18:06:39 +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
Pavle Goloskokovic
a27f32b3a3 Added getCurrentTime method to WebAudioSound class to precisely calculate current sound time 2017-12-05 19:43:08 +01:00
Pavle Goloskokovic
0543b8d5ef Calling resetConfig after starting buffer sound 2017-12-05 19:41:07 +01:00
Pavle Goloskokovic
b2950775a1 Applying config right before calling start on buffer source 2017-12-05 19:36:59 +01:00
Pavle Goloskokovic
7bde818fa5 Override applyConfig method and moved rateUpdates resetting logic there 2017-12-05 19:35:26 +01:00
Pavle Goloskokovic
97441f3bc8 Adding initial rate update to help calculate seek 2017-12-05 19:21:23 +01:00
Pavle Goloskokovic
ad687016ad Included config seek into calculation when playing sound 2017-12-05 19:19:19 +01:00
Pavle Goloskokovic
3176293f53 Resetting rateUpdates before playing sound source 2017-12-05 19:14:53 +01:00
Pavle Goloskokovic
fb9bc44685 Save rate updates only when sound is playing 2017-12-05 19:13:09 +01:00
Pavle Goloskokovic
7dd0a877ec Save sound current time instead of context current time 2017-12-05 19:12:18 +01:00
Pavle Goloskokovic
54f5e6141d Adding an item to rateUpdates every time setRate method is called 2017-12-05 19:11:30 +01:00
Pavle Goloskokovic
bc486daaa3 Adding rateUpdates field to WebAudioSound class to keep track of all rate changes 2017-12-05 19:09:34 +01:00
Pavle Goloskokovic
6e85e6a419 Adding seek property to WebAudioSound class 2017-12-05 19:07:40 +01:00
Pavle Goloskokovic
de1657de01 Updated comments with private and readonly descriptors 2017-12-04 22:09:41 +01:00
Pavle Goloskokovic
66d216af19 Reading total rate value directly from totalRate property in setRate 2017-12-01 15:41:24 +01:00
Pavle Goloskokovic
786c6913ac Removing WebAudioSpriteSound class, audio sprite creation logic is generic and can be used in base sound manager class, no need for adding more classes and making class hierarchy more complex 2017-11-30 22:15:47 +01:00
Pavle Goloskokovic
9a3d0a4140 Added hasOwnProperty check for traversing spritemap object 2017-11-30 18:56:38 +01:00