@mediabunny/flac-encoder 1.36.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/LICENSE +373 -0
- package/README.md +140 -0
- package/dist/bundles/mediabunny-flac-encoder.js +235 -0
- package/dist/bundles/mediabunny-flac-encoder.min.js +1365 -0
- package/dist/bundles/mediabunny-flac-encoder.min.mjs +1364 -0
- package/dist/bundles/mediabunny-flac-encoder.mjs +194 -0
- package/dist/mediabunny-flac-encoder.d.ts +22 -0
- package/dist/modules/build/flac.d.ts +3 -0
- package/dist/modules/build/flac.d.ts.map +1 -0
- package/dist/modules/build/flac.js +0 -0
- package/dist/modules/src/encode.worker.d.ts +9 -0
- package/dist/modules/src/encode.worker.d.ts.map +1 -0
- package/dist/modules/src/encode.worker.js +165 -0
- package/dist/modules/src/encoder.d.ts +27 -0
- package/dist/modules/src/encoder.d.ts.map +1 -0
- package/dist/modules/src/encoder.js +160 -0
- package/dist/modules/src/index.d.ts +9 -0
- package/dist/modules/src/index.d.ts.map +1 -0
- package/dist/modules/src/index.js +20 -0
- package/dist/modules/src/shared.d.ts +51 -0
- package/dist/modules/src/shared.d.ts.map +1 -0
- package/dist/modules/src/shared.js +9 -0
- package/dist/modules/tsconfig.tsbuildinfo +1 -0
- package/package.json +54 -0
- package/src/bridge.c +255 -0
- package/src/encode.worker.ts +193 -0
- package/src/encoder.ts +200 -0
- package/src/index.ts +20 -0
- package/src/shared.ts +54 -0
package/src/index.ts
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright (c) 2026-present, Vanilagy and contributors
|
|
3
|
+
*
|
|
4
|
+
* This Source Code Form is subject to the terms of the Mozilla Public
|
|
5
|
+
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
6
|
+
* file, You can obtain one at https://mozilla.org/MPL/2.0/.
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
const FLAC_ENCODER_LOADED_SYMBOL = Symbol.for('@mediabunny/flac-encoder loaded');
|
|
10
|
+
if ((globalThis as Record<symbol, unknown>)[FLAC_ENCODER_LOADED_SYMBOL]) {
|
|
11
|
+
console.error(
|
|
12
|
+
'[WARNING]\n@mediabunny/flac-encoder was loaded twice.'
|
|
13
|
+
+ ' This will likely cause the encoder not to work correctly.'
|
|
14
|
+
+ ' Check if multiple dependencies are importing different versions of @mediabunny/flac-encoder,'
|
|
15
|
+
+ ' or if something is being bundled incorrectly.',
|
|
16
|
+
);
|
|
17
|
+
}
|
|
18
|
+
(globalThis as Record<symbol, unknown>)[FLAC_ENCODER_LOADED_SYMBOL] = true;
|
|
19
|
+
|
|
20
|
+
export { registerFlacEncoder } from './encoder';
|
package/src/shared.ts
ADDED
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright (c) 2026-present, Vanilagy and contributors
|
|
3
|
+
*
|
|
4
|
+
* This Source Code Form is subject to the terms of the Mozilla Public
|
|
5
|
+
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
6
|
+
* file, You can obtain one at https://mozilla.org/MPL/2.0/.
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
export type PacketInfo = {
|
|
10
|
+
encodedData: ArrayBuffer;
|
|
11
|
+
samples: number;
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
export type WorkerCommand = {
|
|
15
|
+
type: 'init';
|
|
16
|
+
data: {
|
|
17
|
+
numberOfChannels: number;
|
|
18
|
+
sampleRate: number;
|
|
19
|
+
};
|
|
20
|
+
} | {
|
|
21
|
+
type: 'encode';
|
|
22
|
+
data: {
|
|
23
|
+
ctx: number;
|
|
24
|
+
audioData: ArrayBuffer;
|
|
25
|
+
numSamples: number;
|
|
26
|
+
};
|
|
27
|
+
} | {
|
|
28
|
+
type: 'flush';
|
|
29
|
+
data: {
|
|
30
|
+
ctx: number;
|
|
31
|
+
};
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
export type WorkerResponseData = {
|
|
35
|
+
type: 'init';
|
|
36
|
+
ctx: number;
|
|
37
|
+
header: ArrayBuffer;
|
|
38
|
+
} | {
|
|
39
|
+
type: 'encode';
|
|
40
|
+
packets: PacketInfo[];
|
|
41
|
+
} | {
|
|
42
|
+
type: 'flush';
|
|
43
|
+
packets: PacketInfo[];
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
export type WorkerResponse = {
|
|
47
|
+
id: number;
|
|
48
|
+
} & ({
|
|
49
|
+
success: true;
|
|
50
|
+
data: WorkerResponseData;
|
|
51
|
+
} | {
|
|
52
|
+
success: false;
|
|
53
|
+
error: unknown;
|
|
54
|
+
});
|