npm

Check out our latest tech talk, "JavaScript Supply Chain Security" presented by VP of Security, Adam Baldwin.Watch it here »

wav-encoder

1.3.0 • Public • Published

wav-encoder

Build Status NPM Version License

promise-based wav encoder

Installation

$ npm install wav-encoder

API

  • encode(audioData: AudioData, [opts: object]): Promise<ArrayBuffer>
    • audioData should contain two fields sampleRate and channelData.
    • opts is an optional parameter which used to design the output wav format.
      • opts.bitDepth the number of bits of information in each sample
      • opts.float encode to float values
      • opts.symmetric encode to symmetrical values (see #10)
      • The default format is { float: false, bitDepth: 16 }
  • encode.sync(audioData: AudioData, [opts: object]): ArrayBuffer
    • synchronous version
interface AudioData {
  sampleRate: number;
  channelData: Float32Array[];
}

Usage

const fs = require("fs");
const WavEncoder = require("wav-encoder");
 
const whiteNoise1sec = {
  sampleRate: 44100,
  channelData: [
    new Float32Array(44100).map(() => Math.random() - 0.5),
    new Float32Array(44100).map(() => Math.random() - 0.5)
  ]
};
 
WavEncoder.encode(whiteNoise1sec).then((buffer) => {
  fs.writeFileSync("noise.wav", new Buffer(buffer));
});

License

MIT

install

npm i wav-encoder

Downloadsweekly downloads

584

version

1.3.0

license

MIT

homepage

github.com

repository

Gitgithub

last publish

collaborators

  • avatar
Report a vulnerability