audio-buffer-from

Create AudioBuffer from any source

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
audio-buffer-from
2251.1.16 years ago6 years agoMinified + gzip package size for audio-buffer-from in KB

Readme

audio-buffer-from Build Status unstable Greenkeeper badge
Create AudioBuffer from any source.

Usage

$ npm install audio-buffer-from ```js var createBuffer = require('audio-buffer-from') //mono-buffer 1024 samples var abuf = createBuffer(1024) //stereo-buffer 1024 samples var abuf2 = createBuffer(1024, 2) //buffer from data with bound audio context var abuf3 = createBuffer(floatArray, {context: audioContext}) //empty 1-sample mono buffer with default context var abuf4 = createBuffer() //0-length no-context buffer var abuf5 = createBuffer(0) //from duration var abuf6 = createBuffer({duration: 1}) //from pcm data var abuf7 = createBuffer(new Uint8Array(0, 0, 255, 255), 'interleaved 96000') //from data-uri var abuf8 = createBuffer('data:application/octet-stream;base64,AP8A/w==', 'uint8') //from base64 string var abuf9 = createBuffer('AAAAAAAAAAAAAIA/AACAPw==', 'float32 stereo planar') //from node Buffer var abuf10 = createBuffer(Buffer.from(0, 255, 0, 127), 'interleaved') ```

API

audioBuffer = createBuffer(source|length, channels|format|options)

Create audio buffer from any source data or a number indicating length, pass options to ensure output buffer parameters. A channels number or format string can be used to shorthand options argument.

Source:

| Type | Interpretation | |---|---| | null | Blank 1-sample length buffer. | | Number | Length of resulting buffer. | | Array of Arrays | Every subarray is considered a channel data. | | AudioBuffer | Clone other AudioBuffer. | | AudioBufferList | Coalesce AudioBufferList to AudioBuffer. | | Audio | Retrieve AudioBuffer from Audio. | | Object | Create based on length/duration, channels/numberOfChannels and sampleRate properties. | | Array of Numbers | Raw data, interpreted by options.format, defaults to float64. | | Float32Array | Raw float32 data, amplitude range is -1..+1. | | Float64Array | Raw float64 data, amplitude range is -1..+1. | | Int8Array | Raw int8 data, amplitude range is -128..+127. | | Uint8Array | Raw uint8 data, amplitude range is 0..255. | | TypedArray | Any other typed array, described by options.format argument (see pcm-convert). | | ArrayBuffer | Raw data, interpreted by options.format. | | Buffer | Raw data, interpreted by options.format. | | base64 string | Base64-encoded data. | | dataURI string | DataURI string. | | ndarray | Create from ndarray instance. The shape property is considered as [length, channels]. | | ndsamples | Create from ndsamples instance, similar to ndarray. |

Options:

Property | Default | Meaning |---|---|--- length | 1 | Buffer length. If 0, buffer is unbound from context. context | audio-context | Audio context to bind. null-context creates context-free audio buffer. channels, numberOfChannels | 1 | Buffer number of channels. sampleRate, rate | 44100 | Buffer sample rate. format | null | Source pcm format string or object, see audio-format. If null, it will be detected from the source.

Related

License

© 2017 Dmitry Yv. MIT License