Commit ·
5f422a0
1
Parent(s): ab1716f
docs: update changelog for v0.5.1 bug fixes
Browse files- PROJECT_PLAN.md +52 -0
- index.html +12 -1
PROJECT_PLAN.md
CHANGED
|
@@ -1000,6 +1000,58 @@ def _optimize_microphone_settings(self) -> None:
|
|
| 1000 |
| 参数 | 修复前 | 修复后 | 说明 |
|
| 1001 |
|------|--------|--------|------|
|
| 1002 |
| 拍一拍持续对话 | 阻塞 | 正常工作 | 移除阻塞音频播放 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1003 |
| 麦克风灵敏度 | ~30cm | ~2-3m | 全面优化 AGC 和增益 |
|
| 1004 |
| AGC 开关 | 关闭 | 开启 | 自动音量归一化 |
|
| 1005 |
| AGC 最大增益 | ~15dB | 30dB | 提升远距离拾音 |
|
|
|
|
| 1000 |
| 参数 | 修复前 | 修复后 | 说明 |
|
| 1001 |
|------|--------|--------|------|
|
| 1002 |
| 拍一拍持续对话 | 阻塞 | 正常工作 | 移除阻塞音频播放 |
|
| 1003 |
+
|
| 1004 |
+
---
|
| 1005 |
+
|
| 1006 |
+
## 🔧 v0.5.1 Bug 修复 (2026-01-08)
|
| 1007 |
+
|
| 1008 |
+
### 问题 1: 音乐播放在语音对话后不恢复
|
| 1009 |
+
|
| 1010 |
+
**问题描述**: 播放音乐时,语音对话结束后,音乐没有恢复播放。
|
| 1011 |
+
|
| 1012 |
+
**根本原因**: Sendspin 被错误地连接到 `tts_player` 而不是 `music_player`。
|
| 1013 |
+
|
| 1014 |
+
**修复方案**:
|
| 1015 |
+
- `voice_assistant.py`: Sendspin discovery 现在连接到 `music_player`
|
| 1016 |
+
- `satellite.py`: `duck()`/`unduck()` 现在调用 `music_player.pause_sendspin()`/`resume_sendspin()`
|
| 1017 |
+
|
| 1018 |
+
### 问题 2: tap_sensitivity 设置不持久化
|
| 1019 |
+
|
| 1020 |
+
**问题描述**: ESPHome 中设置的 tap_sensitivity 值在重启后丢失。
|
| 1021 |
+
|
| 1022 |
+
**修复方案**:
|
| 1023 |
+
- `models.py`: 在 `Preferences` dataclass 中添加 `tap_sensitivity` 字段
|
| 1024 |
+
- `entity_registry.py`: 实体 setter 现在保存到 `preferences.json`
|
| 1025 |
+
- 启动时从保存的偏好设置加载值
|
| 1026 |
+
|
| 1027 |
+
### 问题 3: 语音助手唤醒时的音频冲突
|
| 1028 |
+
|
| 1029 |
+
**问题描述**: 音频推流时(Sendspin 或 ESPHome 音频),语音助手被唤醒会导致冲突。
|
| 1030 |
+
|
| 1031 |
+
**修复方案**:
|
| 1032 |
+
- `audio_player.py`: 添加 `pause_sendspin()` 和 `resume_sendspin()` 方法
|
| 1033 |
+
- `satellite.py`: `duck()` 现在暂停 Sendspin,`unduck()` 恢复它
|
| 1034 |
+
- 改进 `pause()` 方法以实际停止音频输出
|
| 1035 |
+
|
| 1036 |
+
### 问题 4: AttributeError for _camera_server
|
| 1037 |
+
|
| 1038 |
+
**问题描述**: `_set_conversation_mode()` 中引用了不存在的 `_camera_server` 属性。
|
| 1039 |
+
|
| 1040 |
+
**修复方案**: 将 `self._camera_server` 改为 `self.camera_server`(移除下划线前缀)
|
| 1041 |
+
|
| 1042 |
+
### 问题 5: tap_sensitivity 默认值错误
|
| 1043 |
+
|
| 1044 |
+
**问题描述**: tap_sensitivity 默认值仍为 2.0g,而不是预期的 0.5g。
|
| 1045 |
+
|
| 1046 |
+
**修复方案**: 使用 `TAP_THRESHOLD_G_DEFAULT` 常量作为默认值
|
| 1047 |
+
|
| 1048 |
+
### 问题 6: Sendspin 采样率优化
|
| 1049 |
+
|
| 1050 |
+
**问题描述**: ReSpeaker 硬件输入/输出是 16kHz(硬件限制),但 Sendspin 可能尝试使用更高采样率。
|
| 1051 |
+
|
| 1052 |
+
**修复方案**: 在 Sendspin 支持格式列表中优先使用 16kHz,避免不必要的重采样
|
| 1053 |
+
|
| 1054 |
+
---
|
| 1055 |
| 麦克风灵敏度 | ~30cm | ~2-3m | 全面优化 AGC 和增益 |
|
| 1056 |
| AGC 开关 | 关闭 | 开启 | 自动音量归一化 |
|
| 1057 |
| AGC 最大增益 | ~15dB | 30dB | 提升远距离拾音 |
|
index.html
CHANGED
|
@@ -97,6 +97,18 @@
|
|
| 97 |
<h2>Changelog</h2>
|
| 98 |
<div class="how-to-use changelog-container">
|
| 99 |
<div class="changelog-scroll">
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 100 |
<div class="changelog-entry">
|
| 101 |
<span class="version">v0.5.0</span>
|
| 102 |
<span class="date">2026-01-07</span>
|
|
@@ -109,7 +121,6 @@
|
|
| 109 |
<li>Audio resampling for Sendspin (44.1/48kHz → 16kHz)</li>
|
| 110 |
<li>Pose composition using SDK's compose_world_offset</li>
|
| 111 |
<li>Noise suppression default reduced to 15%</li>
|
| 112 |
-
<li>Tap-to-wake default threshold reduced to 0.5g (most sensitive)</li>
|
| 113 |
<li>Fix: Replace non-existent clear_output_buffer with stop_playing</li>
|
| 114 |
</ul>
|
| 115 |
</div>
|
|
|
|
| 97 |
<h2>Changelog</h2>
|
| 98 |
<div class="how-to-use changelog-container">
|
| 99 |
<div class="changelog-scroll">
|
| 100 |
+
<div class="changelog-entry">
|
| 101 |
+
<span class="version">v0.5.1</span>
|
| 102 |
+
<span class="date">2026-01-08</span>
|
| 103 |
+
<ul>
|
| 104 |
+
<li>Fix: Sendspin now connects to music_player (fixes music not resuming after voice conversation)</li>
|
| 105 |
+
<li>Fix: tap_sensitivity persistence - saved to preferences.json and restored on startup</li>
|
| 106 |
+
<li>Fix: Audio conflict prevention - Sendspin pauses during voice assistant wakeup</li>
|
| 107 |
+
<li>Fix: AttributeError for _camera_server in satellite.py</li>
|
| 108 |
+
<li>Fix: tap_sensitivity default changed from 2.0g to 0.5g</li>
|
| 109 |
+
<li>Optimize: ReSpeaker 16kHz prioritized in Sendspin supported formats</li>
|
| 110 |
+
</ul>
|
| 111 |
+
</div>
|
| 112 |
<div class="changelog-entry">
|
| 113 |
<span class="version">v0.5.0</span>
|
| 114 |
<span class="date">2026-01-07</span>
|
|
|
|
| 121 |
<li>Audio resampling for Sendspin (44.1/48kHz → 16kHz)</li>
|
| 122 |
<li>Pose composition using SDK's compose_world_offset</li>
|
| 123 |
<li>Noise suppression default reduced to 15%</li>
|
|
|
|
| 124 |
<li>Fix: Replace non-existent clear_output_buffer with stop_playing</li>
|
| 125 |
</ul>
|
| 126 |
</div>
|