fix: use direct ES module imports from lamejs source files

Fixed MP3 export by importing lamejs modules directly from source:
- Import MPEGMode, Lame, and BitStream from individual source files
- Use Lame API directly instead of Mp3Encoder wrapper
- Updated TypeScript declarations for each module
- Resolves "MPEGMode is not defined" error

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2025-11-19 08:16:52 +01:00
parent d5c84d35e4
commit 51114330ea
2 changed files with 70 additions and 17 deletions

34
types/lamejs.d.ts vendored
View File

@@ -1,7 +1,31 @@
declare module 'lamejs' {
export class Mp3Encoder {
constructor(channels: number, sampleRate: number, bitrate: number);
encodeBuffer(left: Int16Array, right: Int16Array): Int8Array;
flush(): Int8Array;
declare module 'lamejs/src/js/MPEGMode' {
const MPEGMode: {
STEREO: number;
JOINT_STEREO: number;
DUAL_CHANNEL: number;
MONO: number;
NOT_SET: number;
};
export default MPEGMode;
}
declare module 'lamejs/src/js/Lame' {
export default class Lame {
lame_init(): any;
lame_init_params(gfp: any): number;
lame_encode_buffer(
gfp: any,
left: Int16Array,
right: Int16Array,
samples: number,
mp3buf: Int8Array,
mp3bufPos: number
): number;
lame_encode_flush(gfp: any, mp3buf: Int8Array, mp3bufPos: number): number;
lame_close(gfp: any): number;
}
}
declare module 'lamejs/src/js/BitStream' {
export default class BitStream {}
}