music-segment-detector 0.2.1 → 0.3.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/dist/audioAnalyzer.js +6 -8
- package/dist/audioAnalyzer.js.map +1 -1
- package/dist/audioAnalyzer.worker.js +2 -10
- package/dist/audioAnalyzer.worker.js.map +1 -1
- package/dist/wav.d.ts +11 -0
- package/dist/wav.js +272 -0
- package/dist/wav.js.map +1 -0
- package/package.json +5 -5
package/dist/audioAnalyzer.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import fs from "fs/promises";
|
|
2
|
-
import
|
|
2
|
+
import wav from "./wav.js";
|
|
3
3
|
import Meyda from "meyda";
|
|
4
4
|
import { WorkerPool } from "./workerPool.js";
|
|
5
5
|
/**
|
|
@@ -7,15 +7,13 @@ import { WorkerPool } from "./workerPool.js";
|
|
|
7
7
|
*/
|
|
8
8
|
async function readWavFile(filePath) {
|
|
9
9
|
const buffer = await fs.readFile(filePath);
|
|
10
|
-
const audioData =
|
|
10
|
+
const audioData = wav.decode(buffer);
|
|
11
|
+
if (!audioData) {
|
|
12
|
+
throw new Error("Failed to decode WAV file");
|
|
13
|
+
}
|
|
11
14
|
// 如果是多声道,只取第一个声道
|
|
12
|
-
const
|
|
15
|
+
const channelData = audioData.channelData[0];
|
|
13
16
|
const sampleRate = audioData.sampleRate;
|
|
14
|
-
// 将数据转换为SharedArrayBuffer以在Worker间共享
|
|
15
|
-
const dataSize = originalData.length * originalData.BYTES_PER_ELEMENT;
|
|
16
|
-
const sharedBuffer = new SharedArrayBuffer(dataSize);
|
|
17
|
-
const channelData = new Float32Array(sharedBuffer);
|
|
18
|
-
channelData.set(originalData);
|
|
19
17
|
return { sampleRate, channelData };
|
|
20
18
|
}
|
|
21
19
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"audioAnalyzer.js","sourceRoot":"","sources":["../src/audioAnalyzer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,aAAa,CAAC;AAC7B,OAAO,
|
|
1
|
+
{"version":3,"file":"audioAnalyzer.js","sourceRoot":"","sources":["../src/audioAnalyzer.ts"],"names":[],"mappings":"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"}
|
|
@@ -85,7 +85,7 @@ parentPort.on("message", (msg) => {
|
|
|
85
85
|
zcr,
|
|
86
86
|
spectralEnergy,
|
|
87
87
|
variance,
|
|
88
|
-
mfcc:
|
|
88
|
+
mfcc: mfcc,
|
|
89
89
|
spectralCentroid,
|
|
90
90
|
spectralRolloff,
|
|
91
91
|
spectralFlatness,
|
|
@@ -99,18 +99,10 @@ parentPort.on("message", (msg) => {
|
|
|
99
99
|
});
|
|
100
100
|
}
|
|
101
101
|
}
|
|
102
|
-
// 发送最终结果,转移所有 MFCC 数组的 ArrayBuffer 以减少内存占用
|
|
103
|
-
const transferables = [];
|
|
104
|
-
// 收集所有可转移的 ArrayBuffer
|
|
105
|
-
for (const feature of features) {
|
|
106
|
-
if (feature.mfcc instanceof Float32Array) {
|
|
107
|
-
transferables.push(feature.mfcc.buffer);
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
102
|
parentPort.postMessage({
|
|
111
103
|
type: "result",
|
|
112
104
|
features,
|
|
113
|
-
}
|
|
105
|
+
});
|
|
114
106
|
}
|
|
115
107
|
catch (error) {
|
|
116
108
|
// 发送错误信息
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"audioAnalyzer.worker.js","sourceRoot":"","sources":["../src/audioAnalyzer.worker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B;;GAEG;AACH,SAAS,YAAY,CAAC,OAAqB;IACzC,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,GAAG,IAAI,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACjC,CAAC;IACD,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AACzC,CAAC;AAED;;GAEG;AACH,SAAS,YAAY,CAAC,OAAqB;IACzC,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,IACE,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;YACvC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EACvC,CAAC;YACD,KAAK,EAAE,CAAC;QACV,CAAC;IACH,CAAC;IACD,OAAO,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC;AAChC,CAAC;AAED;;GAEG;AACH,SAAS,uBAAuB,CAAC,OAAqB;IACpD,qBAAqB;IACrB,IAAI,cAAc,GAAG,CAAC,CAAC;IACvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACzC,cAAc,IAAI,IAAI,GAAG,IAAI,CAAC;IAChC,CAAC;IACD,OAAO,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;AACzC,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB,CAAC,OAAqB,EAAE,IAAY;IAC5D,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;QAC/B,GAAG,IAAI,IAAI,GAAG,IAAI,CAAC;IACrB,CAAC;IACD,OAAO,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC;AAC9B,CAAC;AAED,IAAI,CAAC,UAAU,EAAE,CAAC;IAChB,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;AAC9D,CAAC;AAED,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE;IAC/B,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,GACtE,GAAG,CAAC;IAEN,MAAM,QAAQ,GAAoB,EAAE,CAAC;IACrC,MAAM,YAAY,GAAG,MAAM,GAAG,QAAQ,CAAC;IAEvC,IAAI,CAAC;QACH,KAAK,IAAI,CAAC,GAAG,QAAQ,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACvC,MAAM,KAAK,GAAG,CAAC,GAAG,OAAO,CAAC;YAC1B,MAAM,GAAG,GAAG,KAAK,GAAG,UAAU,CAAC;YAC/B,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YAE7C,MAAM,SAAS,GAAG,KAAK,GAAG,UAAU,CAAC;YAErC,OAAO;YACP,MAAM,GAAG,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;YACjC,MAAM,MAAM,GAAG,GAAG,GAAG,GAAG,CAAC;YACzB,MAAM,GAAG,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;YACjC,MAAM,cAAc,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC;YAEvD,OAAO;YACP,IAAI,IAAI,GAAG,CAAC,CAAC;YACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACvC,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9B,CAAC;YACD,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC;YACtB,MAAM,QAAQ,GAAG,iBAAiB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YAEjD,0BAA0B;YAC1B,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CACjC,CAAC,MAAM,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,kBAAkB,CAAC,EACnE,MAAM,CACA,CAAC;YAET,MAAM,IAAI,GAAI,aAAa,EAAE,IAAiB,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACxE,MAAM,gBAAgB,GAAG,aAAa,EAAE,gBAAgB,IAAI,CAAC,CAAC;YAC9D,MAAM,eAAe,GAAG,aAAa,EAAE,eAAe,IAAI,CAAC,CAAC;YAC5D,MAAM,gBAAgB,GAAG,aAAa,EAAE,gBAAgB,IAAI,CAAC,CAAC;YAE9D,iCAAiC;YACjC,QAAQ,CAAC,IAAI,CAAC;gBACZ,SAAS;gBACT,GAAG;gBACH,MAAM;gBACN,GAAG;gBACH,cAAc;gBACd,QAAQ;gBACR,IAAI,EAAE,IAAI
|
|
1
|
+
{"version":3,"file":"audioAnalyzer.worker.js","sourceRoot":"","sources":["../src/audioAnalyzer.worker.ts"],"names":[],"mappings":"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"}
|
package/dist/wav.d.ts
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
declare function decode(buffer: any): {
|
|
2
|
+
sampleRate: number;
|
|
3
|
+
channelData: Float32Array<SharedArrayBuffer>[];
|
|
4
|
+
} | undefined;
|
|
5
|
+
declare function encode(channelData: any, opts: any): SharedArrayBuffer;
|
|
6
|
+
declare const _default: {
|
|
7
|
+
decode: typeof decode;
|
|
8
|
+
encode: typeof encode;
|
|
9
|
+
};
|
|
10
|
+
export default _default;
|
|
11
|
+
export { decode, encode };
|
package/dist/wav.js
ADDED
|
@@ -0,0 +1,272 @@
|
|
|
1
|
+
/* -*- Mode: Java; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
|
2
|
+
/* vim: set shiftwidth=2 tabstop=2 autoindent cindent expandtab: */
|
|
3
|
+
// fork from https://github.com/andreasgal/node-wav
|
|
4
|
+
// @ts-nocheck
|
|
5
|
+
"use strict";
|
|
6
|
+
const data_decoders = {
|
|
7
|
+
pcm8: (buffer, offset, output, channels, samples) => {
|
|
8
|
+
let input = new Uint8Array(buffer, offset);
|
|
9
|
+
let pos = 0;
|
|
10
|
+
for (let i = 0; i < samples; ++i) {
|
|
11
|
+
for (let ch = 0; ch < channels; ++ch) {
|
|
12
|
+
let data = input[pos++] - 128;
|
|
13
|
+
output[ch][i] = data < 0 ? data / 128 : data / 127;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
},
|
|
17
|
+
pcm16: (buffer, offset, output, channels, samples) => {
|
|
18
|
+
let input = new Int16Array(buffer, offset);
|
|
19
|
+
let pos = 0;
|
|
20
|
+
for (let i = 0; i < samples; ++i) {
|
|
21
|
+
for (let ch = 0; ch < channels; ++ch) {
|
|
22
|
+
let data = input[pos++];
|
|
23
|
+
output[ch][i] = data < 0 ? data / 32768 : data / 32767;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
pcm24: (buffer, offset, output, channels, samples) => {
|
|
28
|
+
let input = new Uint8Array(buffer, offset);
|
|
29
|
+
let pos = 0;
|
|
30
|
+
for (let i = 0; i < samples; ++i) {
|
|
31
|
+
for (let ch = 0; ch < channels; ++ch) {
|
|
32
|
+
let x0 = input[pos++];
|
|
33
|
+
let x1 = input[pos++];
|
|
34
|
+
let x2 = input[pos++];
|
|
35
|
+
let xx = x0 + (x1 << 8) + (x2 << 16);
|
|
36
|
+
let data = xx > 0x800000 ? xx - 0x1000000 : xx;
|
|
37
|
+
output[ch][i] = data < 0 ? data / 8388608 : data / 8388607;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
pcm32: (buffer, offset, output, channels, samples) => {
|
|
42
|
+
let input = new Int32Array(buffer, offset);
|
|
43
|
+
let pos = 0;
|
|
44
|
+
for (let i = 0; i < samples; ++i) {
|
|
45
|
+
for (let ch = 0; ch < channels; ++ch) {
|
|
46
|
+
let data = input[pos++];
|
|
47
|
+
output[ch][i] = data < 0 ? data / 2147483648 : data / 2147483647;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
},
|
|
51
|
+
pcm32f: (buffer, offset, output, channels, samples) => {
|
|
52
|
+
let input = new Float32Array(buffer, offset);
|
|
53
|
+
let pos = 0;
|
|
54
|
+
for (let i = 0; i < samples; ++i) {
|
|
55
|
+
for (let ch = 0; ch < channels; ++ch)
|
|
56
|
+
output[ch][i] = input[pos++];
|
|
57
|
+
}
|
|
58
|
+
},
|
|
59
|
+
pcm64f: (buffer, offset, output, channels, samples) => {
|
|
60
|
+
let input = new Float64Array(buffer, offset);
|
|
61
|
+
let pos = 0;
|
|
62
|
+
for (let i = 0; i < samples; ++i) {
|
|
63
|
+
for (let ch = 0; ch < channels; ++ch)
|
|
64
|
+
output[ch][i] = input[pos++];
|
|
65
|
+
}
|
|
66
|
+
},
|
|
67
|
+
};
|
|
68
|
+
const data_encoders = {
|
|
69
|
+
pcm8: (buffer, offset, input, channels, samples) => {
|
|
70
|
+
let output = new Uint8Array(buffer, offset);
|
|
71
|
+
let pos = 0;
|
|
72
|
+
for (let i = 0; i < samples; ++i) {
|
|
73
|
+
for (let ch = 0; ch < channels; ++ch) {
|
|
74
|
+
let v = Math.max(-1, Math.min(input[ch][i], 1));
|
|
75
|
+
v = ((v * 0.5 + 0.5) * 255) | 0;
|
|
76
|
+
output[pos++] = v;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
},
|
|
80
|
+
pcm16: (buffer, offset, input, channels, samples) => {
|
|
81
|
+
let output = new Int16Array(buffer, offset);
|
|
82
|
+
let pos = 0;
|
|
83
|
+
for (let i = 0; i < samples; ++i) {
|
|
84
|
+
for (let ch = 0; ch < channels; ++ch) {
|
|
85
|
+
let v = Math.max(-1, Math.min(input[ch][i], 1));
|
|
86
|
+
v = (v < 0 ? v * 32768 : v * 32767) | 0;
|
|
87
|
+
output[pos++] = v;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
},
|
|
91
|
+
pcm24: (buffer, offset, input, channels, samples) => {
|
|
92
|
+
let output = new Uint8Array(buffer, offset);
|
|
93
|
+
let pos = 0;
|
|
94
|
+
for (let i = 0; i < samples; ++i) {
|
|
95
|
+
for (let ch = 0; ch < channels; ++ch) {
|
|
96
|
+
let v = Math.max(-1, Math.min(input[ch][i], 1));
|
|
97
|
+
v = (v < 0 ? 0x1000000 + v * 8388608 : v * 8388607) | 0;
|
|
98
|
+
output[pos++] = (v >> 0) & 0xff;
|
|
99
|
+
output[pos++] = (v >> 8) & 0xff;
|
|
100
|
+
output[pos++] = (v >> 16) & 0xff;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
},
|
|
104
|
+
pcm32: (buffer, offset, input, channels, samples) => {
|
|
105
|
+
let output = new Int32Array(buffer, offset);
|
|
106
|
+
let pos = 0;
|
|
107
|
+
for (let i = 0; i < samples; ++i) {
|
|
108
|
+
for (let ch = 0; ch < channels; ++ch) {
|
|
109
|
+
let v = Math.max(-1, Math.min(input[ch][i], 1));
|
|
110
|
+
v = (v < 0 ? v * 2147483648 : v * 2147483647) | 0;
|
|
111
|
+
output[pos++] = v;
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
},
|
|
115
|
+
pcm32f: (buffer, offset, input, channels, samples) => {
|
|
116
|
+
let output = new Float32Array(buffer, offset);
|
|
117
|
+
let pos = 0;
|
|
118
|
+
for (let i = 0; i < samples; ++i) {
|
|
119
|
+
for (let ch = 0; ch < channels; ++ch) {
|
|
120
|
+
let v = Math.max(-1, Math.min(input[ch][i], 1));
|
|
121
|
+
output[pos++] = v;
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
},
|
|
125
|
+
pcm64f: (buffer, offset, input, channels, samples) => {
|
|
126
|
+
let output = new Float64Array(buffer, offset);
|
|
127
|
+
let pos = 0;
|
|
128
|
+
for (let i = 0; i < samples; ++i) {
|
|
129
|
+
for (let ch = 0; ch < channels; ++ch) {
|
|
130
|
+
let v = Math.max(-1, Math.min(input[ch][i], 1));
|
|
131
|
+
output[pos++] = v;
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
},
|
|
135
|
+
};
|
|
136
|
+
function lookup(table, bitDepth, floatingPoint) {
|
|
137
|
+
let name = "pcm" + bitDepth + (floatingPoint ? "f" : "");
|
|
138
|
+
let fn = table[name];
|
|
139
|
+
if (!fn)
|
|
140
|
+
throw new TypeError("Unsupported data format: " + name);
|
|
141
|
+
return fn;
|
|
142
|
+
}
|
|
143
|
+
function decode(buffer) {
|
|
144
|
+
let pos = 0, end = 0;
|
|
145
|
+
if (buffer.buffer) {
|
|
146
|
+
// If we are handed a typed array or a buffer, then we have to consider the
|
|
147
|
+
// offset and length into the underlying array buffer.
|
|
148
|
+
pos = buffer.byteOffset;
|
|
149
|
+
end = buffer.length;
|
|
150
|
+
buffer = buffer.buffer;
|
|
151
|
+
}
|
|
152
|
+
else {
|
|
153
|
+
// If we are handed a straight up array buffer, start at offset 0 and use
|
|
154
|
+
// the full length of the buffer.
|
|
155
|
+
pos = 0;
|
|
156
|
+
end = buffer.byteLength;
|
|
157
|
+
}
|
|
158
|
+
let v = new DataView(buffer);
|
|
159
|
+
function u8() {
|
|
160
|
+
let x = v.getUint8(pos);
|
|
161
|
+
pos++;
|
|
162
|
+
return x;
|
|
163
|
+
}
|
|
164
|
+
function u16() {
|
|
165
|
+
let x = v.getUint16(pos, true);
|
|
166
|
+
pos += 2;
|
|
167
|
+
return x;
|
|
168
|
+
}
|
|
169
|
+
function u32() {
|
|
170
|
+
let x = v.getUint32(pos, true);
|
|
171
|
+
pos += 4;
|
|
172
|
+
return x;
|
|
173
|
+
}
|
|
174
|
+
function string(len) {
|
|
175
|
+
let str = "";
|
|
176
|
+
for (let i = 0; i < len; ++i)
|
|
177
|
+
str += String.fromCharCode(u8());
|
|
178
|
+
return str;
|
|
179
|
+
}
|
|
180
|
+
if (string(4) !== "RIFF")
|
|
181
|
+
throw new TypeError("Invalid WAV file");
|
|
182
|
+
u32();
|
|
183
|
+
if (string(4) !== "WAVE")
|
|
184
|
+
throw new TypeError("Invalid WAV file");
|
|
185
|
+
let fmt;
|
|
186
|
+
while (pos < end) {
|
|
187
|
+
let type = string(4);
|
|
188
|
+
let size = u32();
|
|
189
|
+
let next = pos + size;
|
|
190
|
+
switch (type) {
|
|
191
|
+
case "fmt ":
|
|
192
|
+
let formatId = u16();
|
|
193
|
+
if (formatId !== 0x0001 && formatId !== 0x0003)
|
|
194
|
+
throw new TypeError("Unsupported format in WAV file: " + formatId.toString(16));
|
|
195
|
+
fmt = {
|
|
196
|
+
format: "lpcm",
|
|
197
|
+
floatingPoint: formatId === 0x0003,
|
|
198
|
+
channels: u16(),
|
|
199
|
+
sampleRate: u32(),
|
|
200
|
+
byteRate: u32(),
|
|
201
|
+
blockSize: u16(),
|
|
202
|
+
bitDepth: u16(),
|
|
203
|
+
};
|
|
204
|
+
break;
|
|
205
|
+
case "data":
|
|
206
|
+
if (!fmt)
|
|
207
|
+
throw new TypeError('Missing "fmt " chunk.');
|
|
208
|
+
let samples = Math.floor(size / fmt.blockSize);
|
|
209
|
+
let channels = fmt.channels;
|
|
210
|
+
let sampleRate = fmt.sampleRate;
|
|
211
|
+
let channelData = [];
|
|
212
|
+
for (let ch = 0; ch < channels; ++ch)
|
|
213
|
+
channelData[ch] = new Float32Array(new SharedArrayBuffer(samples * 4));
|
|
214
|
+
lookup(data_decoders, fmt.bitDepth, fmt.floatingPoint)(buffer, pos, channelData, channels, samples);
|
|
215
|
+
return {
|
|
216
|
+
sampleRate: sampleRate,
|
|
217
|
+
channelData: channelData,
|
|
218
|
+
};
|
|
219
|
+
break;
|
|
220
|
+
}
|
|
221
|
+
pos = next;
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
function encode(channelData, opts) {
|
|
225
|
+
let sampleRate = opts.sampleRate || 16000;
|
|
226
|
+
let floatingPoint = !!(opts.float || opts.floatingPoint);
|
|
227
|
+
let bitDepth = floatingPoint ? 32 : opts.bitDepth | 0 || 16;
|
|
228
|
+
let channels = channelData.length;
|
|
229
|
+
let samples = channelData[0].length;
|
|
230
|
+
let buffer = new SharedArrayBuffer(44 + samples * channels * (bitDepth >> 3));
|
|
231
|
+
let v = new DataView(buffer);
|
|
232
|
+
let pos = 0;
|
|
233
|
+
function u8(x) {
|
|
234
|
+
v.setUint8(pos++, x);
|
|
235
|
+
}
|
|
236
|
+
function u16(x) {
|
|
237
|
+
v.setUint16(pos, x, true);
|
|
238
|
+
pos += 2;
|
|
239
|
+
}
|
|
240
|
+
function u32(x) {
|
|
241
|
+
v.setUint32(pos, x, true);
|
|
242
|
+
pos += 4;
|
|
243
|
+
}
|
|
244
|
+
function string(s) {
|
|
245
|
+
for (var i = 0; i < s.length; ++i)
|
|
246
|
+
u8(s.charCodeAt(i));
|
|
247
|
+
}
|
|
248
|
+
// write header
|
|
249
|
+
string("RIFF");
|
|
250
|
+
u32(buffer.byteLength - 8);
|
|
251
|
+
string("WAVE");
|
|
252
|
+
// write 'fmt ' chunk
|
|
253
|
+
string("fmt ");
|
|
254
|
+
u32(16);
|
|
255
|
+
u16(floatingPoint ? 0x0003 : 0x0001);
|
|
256
|
+
u16(channels);
|
|
257
|
+
u32(sampleRate);
|
|
258
|
+
u32(sampleRate * channels * (bitDepth >> 3));
|
|
259
|
+
u16(channels * (bitDepth >> 3));
|
|
260
|
+
u16(bitDepth);
|
|
261
|
+
// write 'data' chunk
|
|
262
|
+
string("data");
|
|
263
|
+
u32(buffer.byteLength - 44);
|
|
264
|
+
lookup(data_encoders, bitDepth, floatingPoint)(buffer, pos, channelData, channels, samples);
|
|
265
|
+
return buffer;
|
|
266
|
+
}
|
|
267
|
+
export default {
|
|
268
|
+
decode,
|
|
269
|
+
encode,
|
|
270
|
+
};
|
|
271
|
+
export { decode, encode };
|
|
272
|
+
//# sourceMappingURL=wav.js.map
|
package/dist/wav.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wav.js","sourceRoot":"","sources":["../src/wav.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "music-segment-detector",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "Audio music segment detection library - Automatically detect music segments from WAV audio files",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -28,15 +28,15 @@
|
|
|
28
28
|
"music-detection",
|
|
29
29
|
"audio-analysis"
|
|
30
30
|
],
|
|
31
|
-
"author": "",
|
|
31
|
+
"author": "renmu123",
|
|
32
|
+
"homepage": "https://github.com/renmu123/music-segment-detector",
|
|
32
33
|
"license": "MIT",
|
|
33
34
|
"repository": {
|
|
34
35
|
"type": "git",
|
|
35
|
-
"url": ""
|
|
36
|
+
"url": "https://github.com/renmu123/music-segment-detector.git"
|
|
36
37
|
},
|
|
37
38
|
"dependencies": {
|
|
38
|
-
"meyda": "^5.6.3"
|
|
39
|
-
"wav-decoder": "^1.3.0"
|
|
39
|
+
"meyda": "^5.6.3"
|
|
40
40
|
},
|
|
41
41
|
"devDependencies": {
|
|
42
42
|
"@types/node": "^20.11.5",
|