bashi / minimp3-wasm

A tiny WebAssembly MP3 decoder

Home Page:https://bashi.github.io/minimp3-wasm/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

minimp3-wasm

A demo of compiling minimp3 to WebAssembly without Emscripten.

Usage

import { createDecoder } from './dist/minimp3-wasm.js';

const mp3Data = /* Some Uint8Array */;
const decoder = await createDecoder(mp3Data, './dist/decoder.opt.wasm');

decoder.seek(/*position_in_secounds=*/30);
const results = decoder.decode(/*duration_in_seconds=*/10);
// => { pcm: Int16Array(...), ... }

Building

Prerequisites:

$ make
$ npm install
$ npm run build

The decoder wasm and its bindings will be generated under dist/ directory.

About

A tiny WebAssembly MP3 decoder

https://bashi.github.io/minimp3-wasm/

License:Apache License 2.0


Languages

Language:C 37.9%Language:JavaScript 36.7%Language:TypeScript 14.5%Language:HTML 8.1%Language:Makefile 2.7%