Skip to content

Commit bb57a26

Browse files
committed
🐞 fix: 去除多余 dispatchEvent
1 parent 10ef32c commit bb57a26

1 file changed

Lines changed: 4 additions & 3 deletions

File tree

src/core/audio-player/ffmpeg-engine/FFmpegAudioPlayer.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@ const LOW_WATER_MARK = 10;
1919
* - 支持 Seek 操作
2020
*/
2121
export class FFmpegAudioPlayer extends BaseAudioPlayer {
22+
/** 静态消息 ID 计数器,确保唯一性 */
23+
private static messageIdCounter = 0;
2224
/** 解码 Worker 实例 */
2325
private worker: Worker | null = null;
2426
/** 音频元数据 */
@@ -141,7 +143,7 @@ export class FFmpegAudioPlayer extends BaseAudioPlayer {
141143
this.worker = new AudioWorker();
142144
this.setupWorkerListeners();
143145

144-
this.currentMessageId = Date.now();
146+
this.currentMessageId = ++FFmpegAudioPlayer.messageIdCounter;
145147
if (this.worker) {
146148
this.worker.postMessage({
147149
type: "INIT",
@@ -224,7 +226,7 @@ export class FFmpegAudioPlayer extends BaseAudioPlayer {
224226
}
225227
});
226228
this.activeSources = [];
227-
this.currentMessageId = Date.now();
229+
this.currentMessageId = ++FFmpegAudioPlayer.messageIdCounter;
228230

229231
this.worker.postMessage({
230232
type: "SEEK",
@@ -528,7 +530,6 @@ export class FFmpegAudioPlayer extends BaseAudioPlayer {
528530
this.timeUpdateIntervalId = setInterval(() => {
529531
if (this.playerState === "playing" && !this.isWorkerSeeking) {
530532
this.emit(AUDIO_EVENTS.TIME_UPDATE);
531-
this.dispatchEvent(new Event("timeupdate"));
532533
}
533534
}, 250);
534535
}

0 commit comments

Comments
 (0)