Files
JiboOs/docs/sound/ChainBuilder.js
2026-03-16 13:53:01 +02:00

79 lines
1.8 KiB
JavaScript

/**
* @class ChainBuilder
* @private
* @param {AudioContext} audioContext The audio context.
*/
/**
* Cleans up.
* @method ChainBuilder#destroy
*/
/**
* Gets the nodes.
* @method ChainBuilder#nodes
* @return {Object}
*/
/**
* Gets the first node.
* @method ChainBuilder#first
* @return {Object}
*/
/**
* Gets the last node.
* @method ChainBuilder#last
* @return {Object}
*/
/**
* Adds a node to the chain.
* @method ChainBuilder#_addNode
* @private
* @param {*} node
* @param {*} properties
*/
/**
* Clones the bufferSource. Used just before playing a sound.
* @method ChainBuilder#cloneBufferSource
* @returns {AudioBufferSourceNode} The clone AudioBufferSourceNode.
*/
/**
* Adds a bufferSource.
* @method ChainBuilder#bufferSrouce
* @param {Object} [properties] Properties to set in the created node.
*/
/**
* Adds a createMediaStreamSource.
* @method ChainBuilder#mediaStreamSource
* @param {Object} [properties] Properties to set in the created node.
*/
/**
* Adds a createMediaElementSource.
* @method ChainBuilder#mediaElementSource
* @param {HTMLElement} element The element to add.
* @param {Object} [properties] Properties to set in the created node.
*/
/**
* Adds a panner.
* @method ChainBuilder#panner
* @param {Object} [properties] Properties to set in the created node.
*/
/**
* Adds an analyser.
* @method ChainBuilder#analyser
* @param {Object} [properties] Properties to set in the created node.
*/
/**
* Adds a gainNode.
* @method ChainBuilder#gainNode
* @param {Object} [properties] Properties to set in the created node.
*/