Skip to content

Commit

Permalink
v0.1.4: Found a better way to do v0.1.3
Browse files Browse the repository at this point in the history
  • Loading branch information
nicross committed Feb 6, 2021
1 parent d1ba467 commit 69a73ab
Show file tree
Hide file tree
Showing 6 changed files with 92 additions and 80 deletions.
152 changes: 78 additions & 74 deletions dist/syngen.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
/*! syngen v0.1.3 */
/*! syngen v0.1.4 */
(() => {
'use strict'

Expand Down Expand Up @@ -7820,6 +7820,78 @@ syngen.audio.synth.shaped = function (synth, curve) {
* @typedef {Object} syngen.audio.synth~Plugin
*/

/**
* Returns a large reverb impulse.
* @method
* @returns {AudioBuffer}
*/
syngen.audio.buffer.impulse.large = (() => {
const context = syngen.audio.context()

const sampleRate = context.sampleRate,
size = 4 * sampleRate

const buffer = context.createBuffer(1, size, sampleRate)

for (let n = 0; n < buffer.numberOfChannels; n += 1) {
const data = buffer.getChannelData(n)
for (let i = 0; i < size; i += 1) {
const factor = ((size - i) / size) ** 8
data[i] = factor * ((2 * Math.random()) - 1)
}
}

return () => buffer
})()

/**
* Returns a medium reverb impulse.
* @method
* @returns {AudioBuffer}
*/
syngen.audio.buffer.impulse.medium = (() => {
const context = syngen.audio.context()

const sampleRate = context.sampleRate,
size = 2 * sampleRate

const buffer = context.createBuffer(1, size, sampleRate)

for (let n = 0; n < buffer.numberOfChannels; n += 1) {
const data = buffer.getChannelData(n)
for (let i = 0; i < size; i += 1) {
const factor = ((size - i) / size) ** 6
data[i] = factor * ((2 * Math.random()) - 1)
}
}

return () => buffer
})()

/**
* Returns a small reverb impulse.
* @method
* @returns {AudioBuffer}
*/
syngen.audio.buffer.impulse.small = (() => {
const context = syngen.audio.context()

const sampleRate = context.sampleRate,
size = 1 * sampleRate

const buffer = context.createBuffer(1, size, sampleRate)

for (let n = 0; n < buffer.numberOfChannels; n += 1) {
const data = buffer.getChannelData(n)
for (let i = 0; i < size; i += 1) {
const factor = ((size - i) / size) ** 4
data[i] = factor * ((2 * Math.random()) - 1)
}
}

return () => buffer
})()

/**
* Returns Brownian noise with intensity inversely proportional to the frequency squared.
* @method
Expand Down Expand Up @@ -7911,78 +7983,6 @@ syngen.audio.buffer.noise.white = (() => {
return () => buffer
})()

/**
* Returns a large reverb impulse.
* @method
* @returns {AudioBuffer}
*/
syngen.audio.buffer.impulse.large = (() => {
const context = syngen.audio.context()

const sampleRate = context.sampleRate,
size = 4 * sampleRate

const buffer = context.createBuffer(1, size, sampleRate)

for (let n = 0; n < buffer.numberOfChannels; n += 1) {
const data = buffer.getChannelData(n)
for (let i = 0; i < size; i += 1) {
const factor = ((size - i) / size) ** 8
data[i] = factor * ((2 * Math.random()) - 1)
}
}

return () => buffer
})()

/**
* Returns a medium reverb impulse.
* @method
* @returns {AudioBuffer}
*/
syngen.audio.buffer.impulse.medium = (() => {
const context = syngen.audio.context()

const sampleRate = context.sampleRate,
size = 2 * sampleRate

const buffer = context.createBuffer(1, size, sampleRate)

for (let n = 0; n < buffer.numberOfChannels; n += 1) {
const data = buffer.getChannelData(n)
for (let i = 0; i < size; i += 1) {
const factor = ((size - i) / size) ** 6
data[i] = factor * ((2 * Math.random()) - 1)
}
}

return () => buffer
})()

/**
* Returns a small reverb impulse.
* @method
* @returns {AudioBuffer}
*/
syngen.audio.buffer.impulse.small = (() => {
const context = syngen.audio.context()

const sampleRate = context.sampleRate,
size = 1 * sampleRate

const buffer = context.createBuffer(1, size, sampleRate)

for (let n = 0; n < buffer.numberOfChannels; n += 1) {
const data = buffer.getChannelData(n)
for (let i = 0; i < size; i += 1) {
const factor = ((size - i) / size) ** 4
data[i] = factor * ((2 * Math.random()) - 1)
}
}

return () => buffer
})()

/**
* Provides a auxiliary send for global reverb processing.
* Because `ConvolverNode`s are quite intensive, implementations are encouraged to leverage this to provide a single global reverb.
Expand Down Expand Up @@ -8814,7 +8814,11 @@ syngen.input.keyboard = (() => {
}
})()

document.addEventListener('visibilitychange', () => syngen.input.keyboard.reset())
window.addEventListener('blur', (e) => {
if (e.target === window) {
syngen.input.keyboard.reset()
}
})

/**
* Exposes mouse movement, scrolling, and buttons pressed.
Expand Down
4 changes: 2 additions & 2 deletions dist/syngen.min.js

Large diffs are not rendered by default.

6 changes: 5 additions & 1 deletion docs/syngen_input_keyboard.js.html
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,11 @@ <h1 class="page-title">Source: syngen/input/keyboard.js</h1>
}
})()

document.addEventListener('visibilitychange', () => syngen.input.keyboard.reset())
window.addEventListener('blur', (e) => {
if (e.target === window) {
syngen.input.keyboard.reset()
}
})
</code></pre>
</article>
</section>
Expand Down
2 changes: 1 addition & 1 deletion package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "syngen",
"version": "0.1.3",
"version": "0.1.4",
"description": "A spatial sound and synthesis framework for audio game development and experience design.",
"license": "Unlicense",
"main": "dist/syngen.js",
Expand Down
6 changes: 5 additions & 1 deletion src/syngen/input/keyboard.js
Original file line number Diff line number Diff line change
Expand Up @@ -47,4 +47,8 @@ syngen.input.keyboard = (() => {
}
})()

document.addEventListener('visibilitychange', () => syngen.input.keyboard.reset())
window.addEventListener('blur', (e) => {
if (e.target === window) {
syngen.input.keyboard.reset()
}
})

0 comments on commit 69a73ab

Please sign in to comment.