/lame-wasm

lame mp3 encoding library wrapper, with binary compiled to web assembly

Primary LanguageTypeScriptMIT LicenseMIT

@amilajack/lame-wasm

A WebAssembly MP3 Encoder that works in node and in the browser.

Setup

npm install @amilajack/lame-wasm

Usage

import lame from '@amilajack/lame-wasm';
import Buffer from 'buffer';

const sampleRate = 44100;
const secs = 10;
const samples = new Float32Array(sampleRate * secs);
for (let i = 0; i < samples.length; i++) {
    samples[i] = Math.random() * 2 - 1;
}
const encoder = await Lame.load();
const buffers: Buffer[] = [];
for (const chunk of encoder.encode(samples, samples)) {
    buffers.push(Buffer.from(chunk));
}
const fullBuffer = Buffer.concat(buffers);