diff --git a/main/xiaozhi-server/test/test_page.html b/main/xiaozhi-server/test/test_page.html index 39c08d5f..cd55d5fc 100644 --- a/main/xiaozhi-server/test/test_page.html +++ b/main/xiaozhi-server/test/test_page.html @@ -14,7 +14,7 @@ } .container { - max-width: 800px; + max-width: 1000px; margin: 0 auto; background-color: white; border-radius: 10px; @@ -482,9 +482,10 @@
- + + placeholder="WebSocket服务器地址,如:ws://127.0.0.1:8000/xiaozhi/v1/" />
@@ -1062,7 +1063,7 @@ } } - // 初始化音频录制和处理 + // 初始化音频录制和处理 async function initAudio() { try { // 请求麦克风权限 @@ -1307,7 +1308,8 @@ // 先检查OTA状态 log('正在检查OTA状态...', 'info'); const otaUrl = document.getElementById('otaUrl').value.trim(); - + localStorage.setItem('otaUrl', otaUrl); + localStorage.setItem('wsUrl', url); try { const otaResponse = await fetch(otaUrl, { method: 'POST', @@ -1638,6 +1640,16 @@ // 初始更新显示值 updateDisplayValues(); + const savedOtaUrl = localStorage.getItem('otaUrl'); + if (savedOtaUrl) { + document.getElementById('otaUrl').value = savedOtaUrl; + } + + const savedWsUrl = localStorage.getItem('wsUrl'); + if (savedWsUrl) { + document.getElementById('serverUrl').value = savedWsUrl; + } + // 切换面板显示 toggleButton.addEventListener('click', () => { const isExpanded = configPanel.classList.contains('expanded'); @@ -1959,7 +1971,7 @@ this.buffer = new Int16Array(this.frameSize); this.bufferIndex = 0; this.isRecording = false; - + // 监听来自主线程的消息 this.port.onmessage = (event) => { if (event.data.command === 'start') { @@ -1967,7 +1979,7 @@ this.port.postMessage({ type: 'status', status: 'started' }); } else if (event.data.command === 'stop') { this.isRecording = false; - + // 发送剩余的缓冲区 if (this.bufferIndex > 0) { const finalBuffer = this.buffer.slice(0, this.bufferIndex); @@ -1977,18 +1989,18 @@ }); this.bufferIndex = 0; } - + this.port.postMessage({ type: 'status', status: 'stopped' }); } }; } - + process(inputs, outputs, parameters) { if (!this.isRecording) return true; - + const input = inputs[0][0]; // 获取第一个输入通道 if (!input) return true; - + // 将浮点采样转换为16位整数并存储 for (let i = 0; i < input.length; i++) { if (this.bufferIndex >= this.frameSize) { @@ -1999,15 +2011,15 @@ }); this.bufferIndex = 0; } - + // 转换为16位整数 (-32768到32767) this.buffer[this.bufferIndex++] = Math.max(-32768, Math.min(32767, Math.floor(input[i] * 32767))); } - + return true; } } - + registerProcessor('audio-recorder-processor', AudioRecorderProcessor); `;