Skip to content

Commit 2ca3188

Browse files
authored
feat: load lazily mp3 encoding library for audio recorder (#2432)
1 parent 977ec39 commit 2ca3188

File tree

1 file changed

+2
-2
lines changed
  • src/components/MediaRecorder/transcode

1 file changed

+2
-2
lines changed

src/components/MediaRecorder/transcode/mp3.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
import { Mp3Encoder } from '@breezystack/lamejs';
21
import { renderAudio, toAudioBuffer } from './audioProcessing';
32

43
const ENCODING_BIT_RATE = 128; // kbps;
@@ -22,10 +21,11 @@ const splitDataByChannel = (audioBuffer: AudioBuffer) =>
2221
);
2322

2423
export async function encodeToMp3(file: File, sampleRate: number) {
24+
const lameJs = await import('@breezystack/lamejs');
2525
const audioBuffer = await renderAudio(await toAudioBuffer(file), sampleRate);
2626
const channelCount = audioBuffer.numberOfChannels;
2727
const dataByChannel = splitDataByChannel(audioBuffer);
28-
const mp3Encoder = new Mp3Encoder(channelCount, sampleRate, ENCODING_BIT_RATE);
28+
const mp3Encoder = new lameJs.Mp3Encoder(channelCount, sampleRate, ENCODING_BIT_RATE);
2929

3030
const dataBuffer: Int8Array[] = [];
3131
let remaining = dataByChannel[0].length;

0 commit comments

Comments
 (0)