From dfeaebb038e5df7f07fa94bb60aafa14e2d73ac0 Mon Sep 17 00:00:00 2001 From: renzhiyuan <465386466@qq.com> Date: Sun, 31 Aug 2025 22:35:28 +0800 Subject: [PATCH] 1 --- public/resource/sounds/1.wav | Bin 0 -> 161358 bytes src/App.vue | 97 ++++++++----- src/components/AudioStreamer.vue | 240 +++++++++++++++++++++++++++---- src/utils/resource.js | 1 + 4 files changed, 277 insertions(+), 61 deletions(-) create mode 100644 public/resource/sounds/1.wav diff --git a/public/resource/sounds/1.wav b/public/resource/sounds/1.wav new file mode 100644 index 0000000000000000000000000000000000000000..0415e945ec6f9ad7650967486b01f88f69ae1afb GIT binary patch literal 161358 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 { - talk(resourceMap.get('start')) - .then(() => { - startStreaming() - text.value="请简单阐述mysql的索引机制,请简单阐述mysql的索引机制请简单阐述mysql的索引机制请简单阐述mysql的索引机制请简单阐述mysql的索引机制" - Ques() - }) + startStreaming() + //const mouthOpen = 1; // 映射到 0~1 范围 + //handlePlayAction(resourceMap.get('test_wav')) + + //let voicePath=resourceMap.get('start') + // live2DSprite._model.("PARAM_Mouth_OpenY", volume) + //live2DSprite._model.playVoice({ voicePath, immediate: true }); + // talk(resourceMap.get('start')) + // .then(() => { + // startStreaming() + // text.value="请简单阐述mysql的索引机制,请简单阐述mysql的索引机制请简单阐述mysql的索引机制请简单阐述mysql的索引机制请简单阐述mysql的索引机制" + // Ques() + // }) }; const overClick = () => { app.ticker.stop() //stopStreaming() }; +const handlePlayAction = (voicePath) => { + console.log("接收到地址:"+voicePath); + live2DSprite.playVoice({ voicePath, immediate: true }) +}; + +const handleBlob = async (blobUrl) => { + // 获取 Blob 对象 + const response = await fetch(blobUrl); + const blob = await response.blob(); + let targetPath="1.wav" + // 创建下载链接 + const a = document.createElement('a'); + a.href = URL.createObjectURL(blob); + a.download = targetPath.split('/').pop(); // 提取文件名(如 "start.wav") + a.click(); + + // 释放内存 + URL.revokeObjectURL(a.href); + + + return handlePlayAction(targetPath); +}; + + +const talk = async (voicePath) => { + return new Promise((resolve, reject) => { + try { + const tempAudio = new Audio(voicePath); + tempAudio.onloadedmetadata = () => { + const duration = tempAudio.duration * 1000; // 转换为毫秒 + // 2. 播放语音 + live2DSprite.playVoice({ voicePath, immediate: true }); + // 3. 使用 setTimeout 模拟播放结束监听 + setTimeout(() => { + console.log("语音播放完成(估算时间)"); + resolve(); // 通知调用者播放完成 + }, duration); + }; + // 4. 处理加载错误 + tempAudio.onerror = () => { + reject(new Error("语音加载失败")); + }; + } catch (error) { + reject(error); // 捕获其他异常 + } + }); +}; function ansTran(delta){ live2DSprite.x += 8; @@ -54,8 +108,6 @@ const Ques=()=>{ app.ticker.stop() showQues.value=true }, 1000); - - } @@ -133,40 +185,12 @@ const modelInit=async (modelPath)=>{ } } - - onUnmounted(() => { console.log("释放实例") live2DSprite.destroy() }) -const talk = async (voicePath) => { - return new Promise((resolve, reject) => { - try { - const tempAudio = new Audio(voicePath); - tempAudio.onloadedmetadata = () => { - const duration = tempAudio.duration * 1000; // 转换为毫秒 - // 2. 播放语音 - live2DSprite.playVoice({ voicePath, immediate: true }); - // 3. 使用 setTimeout 模拟播放结束监听 - setTimeout(() => { - console.log("语音播放完成(估算时间)"); - resolve(); // 通知调用者播放完成 - }, duration); - }; - // 4. 处理加载错误 - tempAudio.onerror = () => { - reject(new Error("语音加载失败")); - }; - } catch (error) { - reject(error); // 捕获其他异常 - } - }); -}; - - - const isStreaming = ref(false); const status = ref(""); @@ -224,6 +248,7 @@ const handleError = (error) => { :is-streaming="isStreaming" @update-status="handleStatusUpdate" @streaming-error="handleError" + @audio-generated="handlePlayAction" />

{{ status }}

diff --git a/src/components/AudioStreamer.vue b/src/components/AudioStreamer.vue index cb97177..2368ce1 100644 --- a/src/components/AudioStreamer.vue +++ b/src/components/AudioStreamer.vue @@ -11,18 +11,26 @@ export default { props: { isStreaming: Boolean, }, - emits: ["update-status", "streaming-error"], + emits: ["update-status", "streaming-error","audio-generated"], setup(props, { emit }) { const status = ref(""); let audioContext = null; let mediaStream = null; let socket = null; let audioWorkletNode = null; - + let speechSynthesis = null; + let mediaSource = null; + let audioStream = null; + let audioElement = null; const SAMPLE_RATE = 16000; const CHANNELS = 1; - - // 统一资源清理方法 + const audioQueue = []; + let isAppending = false; + let receivedChunks = []; // 存储接收到的数据块 + let totalSize = 0; + let isReceiving = false; + let hasReceivedHeader = false; + let wavParams ={}; const cleanupResources = () => { if (audioWorkletNode) { audioWorkletNode.disconnect(); @@ -30,7 +38,7 @@ export default { audioWorkletNode = null; } if (mediaStream) { - mediaStream.getTracks().forEach(track => track.stop()); + mediaStream.getTracks().forEach((track) => track.stop()); mediaStream = null; } if (socket) { @@ -45,15 +53,99 @@ export default { audioContext.close().catch(() => {}); audioContext = null; } + if (speechSynthesis) { + speechSynthesis.cancel(); + speechSynthesis = null; + } + if (audioElement) { + audioElement.pause(); + audioElement.src = ""; + audioElement = null; + } + if (mediaSource) { + if (mediaSource.readyState === "open") { + mediaSource.endOfStream(); + } + mediaSource = null; + } + audioStream = null; + }; + + const processAudioQueue = () => { + if ( + audioQueue.length === 0 || + isAppending || + !mediaSource || + mediaSource.readyState !== "open" || + !audioStream + ) { + return; + } + + isAppending = true; + const audioData = audioQueue.shift(); + + try { + if (audioStream.updating) { + audioQueue.unshift(audioData); + isAppending = false; + return; + } + + audioStream.appendBuffer(audioData); + } catch (error) { + console.error("Error appending audio buffer:", error); + isAppending = false; + // 尝试恢复:重新创建 MediaSource 和音频元素 + setupAudioElement(); + processAudioQueue(); + } + }; + + const setupAudioElement = () => { + if (audioElement) { + audioElement.pause(); + audioElement.src = ""; + } + + mediaSource = new MediaSource(); + audioElement = document.createElement("audio"); + audioElement.src = URL.createObjectURL(mediaSource); + audioElement.play().catch((e) => { + console.error("Audio element play failed:", e); + }); + + mediaSource.addEventListener("sourceopen", () => { + try { + audioStream = mediaSource.addSourceBuffer("audio/mpeg"); + audioStream.addEventListener("updateend", () => { + isAppending = false; + processAudioQueue(); + }); + audioStream.addEventListener("error", (e) => { + console.error("SourceBuffer error:", e); + isAppending = false; + }); + } catch (error) { + console.error("Failed to add SourceBuffer:", error); + } + }); + + mediaSource.addEventListener("sourceended", () => { + console.log("MediaSource ended"); + }); }; const startStreaming = async () => { try { - // 先清理旧资源 cleanupResources(); + setupAudioElement(); - // 1. 初始化 WebSocket - socket = new WebSocket("ws://localhost:8000/ws"); + audioContext = new (window.AudioContext || window.webkitAudioContext)({ + sampleRate: SAMPLE_RATE, + }); + + socket = new WebSocket("ws://127.0.0.1:27004/ws/transcribe"); socket.binaryType = "arraybuffer"; socket.onopen = () => { @@ -69,32 +161,55 @@ export default { cleanupResources(); }; - // 2. 初始化 AudioContext(必须全新创建) - audioContext = new AudioContext({ sampleRate: SAMPLE_RATE }); + socket.onmessage = (event) => { + if (event.data instanceof ArrayBuffer) { + const chunk = new Uint8Array(event.data); + + //如果是第一个 chunk,检查 WAV 头 + // if (!hasReceivedHeader) { + // const header = chunk.slice(0, 4); + // const isRiff = header[0] === 0x52 && header[1] === 0x49 && header[2] === 0x46 && header[3] === 0x46; + // if (!isRiff) { + // console.error("错误:第一个 chunk 不是有效的 WAV 头!"); + // hasReceivedHeader=false + // return; + // } + // hasReceivedHeader = true; + // } + + receivedChunks.push(chunk); + totalSize += chunk.length; + } else { + const data = JSON.parse(event.data); + if (data.type === "EOF") { + wavParams = { + sampleRate: data.sampleRate, + numChannels: data.numChannels, + bitDepth: data.bitDepth, + }; + finalizeWavFile(); + } + } + }; - // 3. 获取麦克风输入 mediaStream = await navigator.mediaDevices.getUserMedia({ audio: true }); const source = audioContext.createMediaStreamSource(mediaStream); - // 4. 加载 AudioWorklet 处理器 await audioContext.audioWorklet.addModule("/audio-processor.js"); - - // 5. 创建新的 AudioWorkletNode audioWorkletNode = new AudioWorkletNode(audioContext, "audio-processor"); - // 6. 监听音频数据并发送到 WebSocket audioWorkletNode.port.onmessage = (event) => { if (socket?.readyState === WebSocket.OPEN) { socket.send(event.data); } }; - // 7. 连接音频流 source.connect(audioWorkletNode); audioWorkletNode.connect(audioContext.destination); emit("update-status", "Streaming started"); } catch (error) { + console.error("Streaming error:", error); cleanupResources(); emit("streaming-error", error.message); } @@ -106,15 +221,89 @@ export default { }; watch( - () => props.isStreaming, - (newVal) => { - if (newVal) { - startStreaming(); - } else { - stopStreaming(); - } - }, - { immediate: true } + () => props.isStreaming, + (newVal) => { + if (newVal) { + startStreaming(); + } else { + stopStreaming(); + } + }, + { immediate: true } + ); + + function finalizeWavFile() { + if (!wavParams || receivedChunks.length === 0) return; + + const { sampleRate, numChannels, bitDepth } = wavParams; + const pcmData = new Uint8Array(totalSize); + let offset = 0; + + for (const chunk of receivedChunks) { + pcmData.set(chunk, offset); + offset += chunk.length; + } + + const wavHeader = generateWavHeader(sampleRate, numChannels, bitDepth, totalSize); + const wavData = new Uint8Array(wavHeader.length + totalSize); + wavData.set(wavHeader); + wavData.set(pcmData, wavHeader.length); + + const wavBlob = new Blob([wavData], { type: "audio/wav" }); + const audioUrl = URL.createObjectURL(wavBlob); + emit("audio-generated", audioUrl); + + // 清理 + receivedChunks = []; + totalSize = 0; + wavParams ={}; + } + + + const cleanupAudioData = () => { + receivedChunks = []; + totalSize = 0; + }; + + // 生成 WAV 头 + function generateWavHeader(sampleRate, numChannels, bitDepth, dataSize) { + const bytesPerSample = bitDepth / 8; + const blockAlign = numChannels * bytesPerSample; + const buffer = new ArrayBuffer(44); + const view = new DataView(buffer); + + // RIFF 头 + view.setUint32(0, 0x52494646, false); // "RIFF" + view.setUint32(4, 36 + dataSize, true); // 文件总大小 - 8 + view.setUint32(8, 0x57415645, false); // "WAVE" + + // fmt 子块 + view.setUint32(12, 0x666d7420, false); // "fmt " + view.setUint32(16, 16, true); // 子块大小(16 for PCM) + view.setUint16(20, 1, true); // 格式(1 = PCM) + view.setUint16(22, numChannels, true); + view.setUint32(24, sampleRate, true); + view.setUint32(28, sampleRate * blockAlign, true); // 字节率 + view.setUint16(32, blockAlign, true); + view.setUint16(34, bitDepth, true); + + // data 子块 + view.setUint32(36, 0x64617461, false); // "data" + view.setUint32(40, dataSize, true); // 音频数据大小 + + return new Uint8Array(buffer); + } + + watch( + () => props.isStreaming, + (newVal) => { + if (newVal) { + startStreaming(); + } else { + stopStreaming(); + } + }, + { immediate: true } ); onUnmounted(() => { @@ -124,4 +313,5 @@ export default { return { status }; }, }; + \ No newline at end of file diff --git a/src/utils/resource.js b/src/utils/resource.js index f88b65b..8b0c2e1 100644 --- a/src/utils/resource.js +++ b/src/utils/resource.js @@ -4,5 +4,6 @@ export const resourceMap = new Map([ ['start', '/resource/sounds/start.wav'], ['model', '/resource/models/UG/ugofficial.model3.json'], ['log', '/resource/img/log.png'], + ['test_wav', '/resource/sounds/1.wav'], // 其他资源... ]); \ No newline at end of file