@libraz/libsonare 1.0.4 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.npm.md DELETED
@@ -1,114 +0,0 @@
1
- # libsonare
2
-
3
- [![CI](https://img.shields.io/github/actions/workflow/status/libraz/libsonare/ci.yml?branch=main&label=CI)](https://github.com/libraz/libsonare/actions)
4
- [![npm](https://img.shields.io/npm/v/@libraz/libsonare)](https://www.npmjs.com/package/@libraz/libsonare)
5
- [![PyPI](https://img.shields.io/pypi/v/libsonare)](https://pypi.org/project/libsonare/)
6
- [![License](https://img.shields.io/github/license/libraz/libsonare)](https://github.com/libraz/libsonare/blob/main/LICENSE)
7
-
8
- Fast, dependency-free audio analysis library for browser and Node.js via WebAssembly.
9
-
10
- > **Audio input:** This package expects already-decoded `Float32Array` mono
11
- > samples (it does not bundle a file decoder). Use the Web Audio API in the
12
- > browser or `node:wasi` / a JS audio decoder in Node to obtain samples.
13
- > If you need to read WAV/MP3/M4A files directly in Node, use the native
14
- > N-API package [`@libraz/libsonare-native`](https://github.com/libraz/libsonare/tree/main/bindings/node) instead.
15
-
16
- ## Installation
17
-
18
- ```bash
19
- npm install @libraz/libsonare
20
- ```
21
-
22
- ## Usage
23
-
24
- ```typescript
25
- import { init, detectBpm, detectKey, analyze, Audio } from '@libraz/libsonare';
26
-
27
- await init();
28
-
29
- // Function API
30
- const bpm = detectBpm(samples, sampleRate);
31
- const key = detectKey(samples, sampleRate);
32
- const result = analyze(samples, sampleRate);
33
- console.log(`BPM: ${result.bpm}, Key: ${result.key.name}`);
34
-
35
- // Audio class API
36
- const audio = Audio.fromBuffer(samples, sampleRate);
37
- console.log(`BPM: ${audio.detectBpm()}`);
38
- console.log(`Key: ${audio.detectKey().name}`);
39
- ```
40
-
41
- ### Decoding files in the browser
42
-
43
- ```typescript
44
- import { init, analyze } from '@libraz/libsonare';
45
-
46
- await init();
47
-
48
- const arrayBuffer = await fetch('song.m4a').then((r) => r.arrayBuffer());
49
- const audioCtx = new AudioContext();
50
- const decoded = await audioCtx.decodeAudioData(arrayBuffer);
51
- // Mono downmix for libsonare:
52
- const samples = decoded.getChannelData(0);
53
- const result = analyze(samples, decoded.sampleRate);
54
- ```
55
-
56
- Web Audio's `decodeAudioData` handles whatever codecs the browser ships with
57
- (WAV/MP3/M4A/AAC/Opus/FLAC on most modern browsers).
58
-
59
- ### Browser (CDN)
60
-
61
- ```html
62
- <script type="module">
63
- import { init, analyze } from 'https://esm.sh/@libraz/libsonare';
64
-
65
- await init();
66
- // ... use with Web Audio API
67
- </script>
68
- ```
69
-
70
- ### Bundlers (Vite, webpack, Next.js, etc.)
71
-
72
- If your bundler doesn't automatically resolve the `.wasm` file, specify its path:
73
-
74
- ```typescript
75
- import wasmUrl from '@libraz/libsonare/wasm?url'; // Vite
76
- import { init } from '@libraz/libsonare';
77
-
78
- await init({ wasmPath: wasmUrl });
79
- ```
80
-
81
- ### Real-time Streaming
82
-
83
- ```typescript
84
- import { init, StreamAnalyzer } from '@libraz/libsonare';
85
-
86
- await init();
87
-
88
- const analyzer = new StreamAnalyzer({ sampleRate: 44100 });
89
-
90
- // In audio processing callback
91
- analyzer.process(audioChunk);
92
-
93
- const stats = analyzer.stats();
94
- console.log(`BPM: ${stats.estimate.bpm}, Key: ${stats.estimate.key}`);
95
- ```
96
-
97
- ## Features
98
-
99
- - **Detection**: BPM, key, beats, onsets, chords, sections
100
- - **Effects**: HPSS, time stretch, pitch shift, normalize, trim
101
- - **Features**: STFT, mel spectrogram, MFCC, chroma, CQT/VQT, spectral features
102
- - **Pitch**: YIN, pYIN algorithms
103
- - **Streaming**: Real-time analysis with progressive estimates
104
- - **Conversions**: Hz/mel/MIDI/note, frames/time, resample
105
-
106
- ## Also available
107
-
108
- ```bash
109
- pip install libsonare # Python bindings with CLI
110
- ```
111
-
112
- ## License
113
-
114
- [Apache License 2.0](https://github.com/libraz/libsonare/blob/main/LICENSE)
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../js/index.ts"],"names":[],"mappings":"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"}