Skip to content

audiojs/flac-encode

Repository files navigation

@audio/flac-encode

Encode PCM audio samples to FLAC (lossless) format.
WASM (libFLAC via libflacjs) — works in both node and browser.

npm install @audio/flac-encode

import flac from '@audio/flac-encode';

const encoder = await flac({ sampleRate: 44100 });
const chunk = encoder.encode(channelData); // → Uint8Array (FLAC frames)
const tail = encoder.flush();              // → Uint8Array (remaining)
// concatenate chunk + tail for complete FLAC file

Options

Option Default Description
sampleRate Sample rate (required)
channels auto 1 or 2. Auto-detected from first encode call.
bitDepth 16 16 or 24
compression 5 Compression level 0–8 (higher = smaller, slower)

Streaming

const encoder = await flac({ sampleRate: 44100, compression: 8 });
const a = encoder.encode(chunk1);
const b = encoder.encode(chunk2);
const c = encoder.flush();
// complete FLAC = concat(a, b, c)
encoder.free();

License

MIT

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors