Wykres commitów

87 Commity (74af1e3f3c1ff9e0da8e82bf01b5b2dd52f3da5d)

Autor SHA1 Wiadomość Data
Igor null 74af1e3f3c fixed a few problems with array miscalculations
- scratch buffer is half the required size
- index array was half the required size
- drawElements accepts number of vertices, not number of triangles
2017-03-05 16:17:49 +02:00
Igor null fb87367c67 handle a few corner cases in renderDom 2017-02-12 13:58:37 +02:00
Igor null cadf59b3f2 replaced html string templates with DOM templates 2017-02-12 13:30:57 +02:00
m1el 18856f5140 Merge pull request #7 from cvn/master
Reusable audio element, mono fix
2017-02-07 18:34:17 +00:00
Chad von Nau 34e4043791 Release 0.2.1 2017-02-06 21:37:41 -08:00
Chad von Nau d5cac3966b make lineSize configurable 2017-02-06 21:37:06 -08:00
Chad von Nau dd62c8d911 refactor scriptProcessor path to avoid distortion 2017-02-06 15:12:48 -08:00
Chad von Nau a704660de2 fix Firefox/Edge issue where mono files only played in left channel 2017-02-06 15:12:48 -08:00
Chad von Nau 133aaef0f6 demo: add workaround for desktop Safari losing sync 2017-02-04 17:38:47 -08:00
Chad von Nau 9582b83042 demo: live mode now toggles without reload
- add initWoscope function, from refactored window.onload
- add resetWoscope function, to destroy and recreate woscope using same audio element
2017-02-04 17:38:47 -08:00
Chad von Nau 518477f5f0 make sourceNode configurable (live mode)
- Chrome has no way to destroy MediaElementSourceNodes, and only allows one per audio element
  - so if we want to to re-use an audio element, we must also pass a MediaElementSource node
  - get from ctx.sourceNode
  - use config.sourceNode to set
- also disconnect analyser/scriptProcessor nodes on destroy()
- also refactor gainWorkaround so gainNode goes after input node instead of before, easier to use
2017-02-04 17:38:47 -08:00
Chad von Nau 6a687f9d58 fix Edge bug, prevent error in destroy function
- Edge is missing WEBGL_lose_context - https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/10570688/
2017-02-04 16:59:13 -08:00
m1el cf480e7769 Merge pull request #6 from cvn/master
Add live mode, controls for sweep, bloom, invert, swap and live mode.
2017-02-02 07:37:02 +00:00
Chad von Nau 0d7ddbde7d Release 0.2.0 2017-02-01 23:23:55 -08:00
Chad von Nau 219fc0463e update license 2017-02-01 23:22:32 -08:00
Chad von Nau fdd9249c8b set analyser fftSize explicitly
- using default value of 2048. it looks as good as 4096 (nSamples) and performs better
- also make analyser channel connection more explicit
2017-02-01 23:09:46 -08:00
Chad von Nau 7463c1927a Safari createMediaElementSource volume workaround 2017-01-30 16:15:52 -08:00
Chad von Nau 3bdb8534ac make live mode compatible with Safari
- use createScriptProcessor instead of createAnalyser because Safari does not support getFloatTimeDomainData, and emulating with getByteTimeDomainData gives low resolution results
2017-01-30 15:35:18 -08:00
Chad von Nau b6c4a040ad add live mode, visualize in real time without preloading file into buffer 2017-01-30 13:20:00 -08:00
Chad von Nau cc274cafa5 add live option to demo page
- feature to be implemented in following commit
- allow volume to be 100% because it affects display size for live mode
2017-01-30 13:19:19 -08:00
Chad von Nau 6bce94b316 add destroy function, call it to clean up 2017-01-30 13:19:19 -08:00
Chad von Nau f08fb0acde update dependencies
- update budo
  - fix page load flakiness from external devices
  - fix "Possible EventEmitter memory leak detected" console error
- remove bannerify
  - was generating banner incorrectly with new versions of node
  - https://github.com/zemirco/bannerify/issues/2
- add browserify-banner
  - replaces bannerify, works correctly for this project
2017-01-23 17:19:03 -08:00
Chad von Nau 80691b9b0f add sweep mode, for more traditional oscilloscope display
- add vbo2, color2 for 2nd channel in sweep mode
2017-01-23 17:19:03 -08:00
Chad von Nau 73f817d107 refactor drawLine 2017-01-23 17:19:03 -08:00
Chad von Nau c7e84aa164 fix exception with mono files by duplicating ch0 to ch1
- "Uncaught DOMException: Failed to execute 'getChannelData' on 'AudioBuffer': channel index (1) exceeds number of channels (1)"
- matches behavior of createMediaElementSource with mono files
- add audioData.sourceChannels for communicating that source is mono, even though the data becomes stereo
2017-01-23 17:19:03 -08:00
Chad von Nau 37154c5b90 ctx.swap parameter now works during playback
- refactor loadWaveAtPosition to use subarray
2017-01-23 17:19:03 -08:00
Chad von Nau 0f030f9ec3 make foreground color configurable
- fsLine.glsl: remove redundant "precision highp float;"
2017-01-23 17:19:03 -08:00
Chad von Nau f113a692d2 make background color configurable 2017-01-23 17:19:03 -08:00
Chad von Nau 18b7e710b9 add options UI to demo (swap, invert, bloom) 2017-01-23 17:19:03 -08:00
Chad von Nau 5573461476 woscope returns context object 2017-01-23 17:19:03 -08:00
Chad von Nau f80777c14e make bloom accessible from config, rename doBloom to bloom 2017-01-23 17:19:03 -08:00
Chad von Nau 78fc1fee1f send audio file errors to error callback 2017-01-23 17:19:03 -08:00
Chad von Nau d9d99d80a4 don't throw web audio api error on load
- since errors stop execution in a js file, if woscope was concatenated with other files for deployment, it could break an app. this is fixed now.
- error on woscope invocation instead
- send web audio API errors to error callback
2017-01-23 17:19:03 -08:00
Chad von Nau 2f12aa3fb2 add error callback, refactor nogl error 2017-01-22 16:11:58 -08:00
Chad von Nau 16f934c0a0 Add support for Microsoft Edge 2017-01-11 23:44:30 -08:00
m1el d08d661ba7 Merge pull request #5 from redFrik/patch-1
minor correction: should be myAudio.play()
2016-01-29 11:45:55 +02:00
redFrik ed42f0205b minor correction: should be myAudio.play() 2016-01-27 22:29:35 +01:00
Igor null 80f4a35998 do not use globals in woscope rendering #4 2015-11-18 02:48:24 +02:00
Igor null f3aa0fe85e scale progress bar according to the canvas size #3 2015-11-18 02:02:15 +02:00
Igor null fd109b1b5d converted for of loops to Array#forEach 2015-11-18 01:50:04 +02:00
m1el af8b23143a Merge pull request #2 from cvn/master
update woscope-music submodule
2015-11-13 06:27:13 +02:00
Chad von Nau 17d49abf78 update woscope-music submodule and readme 2015-11-12 19:16:05 -08:00
m1el 34ba4ef49b Merge pull request #1 from cvn/master
Lots of stuff
2015-11-13 04:33:44 +02:00
Chad von Nau 9efdddef7e Release 0.1.0 2015-11-12 18:15:20 -08:00
Chad von Nau be118aa8ea add travis config for continuous integration 2015-11-12 18:14:58 -08:00
Chad von Nau 401ac9f60d integrate linting into build step 2015-11-12 18:14:58 -08:00
Chad von Nau f47362c8d7 improvements from PR #1 feedback 2015-11-12 18:14:39 -08:00
Chad von Nau 6e8e49f494 update readme with exmaple and dev commands 2015-11-09 13:19:35 -08:00
Chad von Nau 7f419661f7 change parameter name: htmlAudio -> audio 2015-11-09 13:19:35 -08:00
Chad von Nau cbd24eaa1a support dynamic canvas size, demo supports iPhone 2015-11-09 05:33:48 -08:00