diff --git a/apps/web/src/components/voice/CloneModal/hooks/useAudioRecorder.ts b/apps/web/src/components/voice/CloneModal/hooks/useAudioRecorder.ts index 54a32b4ea..44620f563 100644 --- a/apps/web/src/components/voice/CloneModal/hooks/useAudioRecorder.ts +++ b/apps/web/src/components/voice/CloneModal/hooks/useAudioRecorder.ts @@ -62,7 +62,9 @@ export const useAudioRecorder = (onError?: (msg: string) => void) => { } mediaRecorder.onstop = () => { - const blob = new Blob(audioChunksRef.current, { type: "audio/webm" }) + // 使用浏览器实际生成的 MIME 类型,避免跨浏览器兼容性问题 + const mimeType = mediaRecorder.mimeType || "audio/webm" + const blob = new Blob(audioChunksRef.current, { type: mimeType }) setRecordedBlob(blob) // 停止音轨 stream.getTracks().forEach((track) => track.stop())