From e6daaeca7c66f2b9fcedcdd65c520da2cbf45044 Mon Sep 17 00:00:00 2001 From: liwei1dao Date: Tue, 2 Sep 2025 18:15:29 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=8A=E4=BC=A0=E9=9F=B3=E4=B9=90=E6=9C=8D?= =?UTF-8?q?=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/modules/agent/views/music_card.dart | 2 +- .../Sources/agent_service/AgentServiceImpl.swift | 5 +++-- .../com/yunqiinnovation/ble_service/BleCompanionManager.kt | 1 + .../music_service/Sources/music_service/MusicService.swift | 6 +++--- 4 files changed, 8 insertions(+), 6 deletions(-) diff --git a/lib/modules/agent/views/music_card.dart b/lib/modules/agent/views/music_card.dart index bdbb4e332..58912ad66 100644 --- a/lib/modules/agent/views/music_card.dart +++ b/lib/modules/agent/views/music_card.dart @@ -233,7 +233,7 @@ Widget buildMusicContent( final id = item["id"]; final name = item["name"] ?? "未知歌曲"; final url = item["url"] ?? ""; - final singer = item["sgener"] ?? "未知歌手"; + final singer = item["singer"] ?? "未知歌手"; final image = item["image"] ?? ""; final ts = item["ts"] ?? 0; return Column( diff --git a/local_plugins/agent_service/ios/agent_service/Sources/agent_service/AgentServiceImpl.swift b/local_plugins/agent_service/ios/agent_service/Sources/agent_service/AgentServiceImpl.swift index 0b15a3942..fccbf1bf4 100644 --- a/local_plugins/agent_service/ios/agent_service/Sources/agent_service/AgentServiceImpl.swift +++ b/local_plugins/agent_service/ios/agent_service/Sources/agent_service/AgentServiceImpl.swift @@ -1450,6 +1450,7 @@ extension AgentServiceImpl: TtsEventListener { restartIdleCheck() sendEvent(name: "tts_started", data: ["status": "started"]) audioPlayer?.stopAwaitSound() + case .synthesisCompleted: isSpeaking = false restartIdleCheck() @@ -1458,11 +1459,11 @@ extension AgentServiceImpl: TtsEventListener { case .playbackStarted: restartIdleCheck() sendEvent(name: "playback_started", data: ["status": "playback_started"]) - + MusicService.shared.reduceVolume() case .playbackCompleted: restartIdleCheck() sendEvent(name: "playback_completed", data: ["status": "playback_completed"]) - + MusicService.shared.restoreVolume() case .synthesisCanceled: isSpeaking = false restartIdleCheck() diff --git a/local_plugins/ble_service/android/src/main/kotlin/com/yunqiinnovation/ble_service/BleCompanionManager.kt b/local_plugins/ble_service/android/src/main/kotlin/com/yunqiinnovation/ble_service/BleCompanionManager.kt index 03f2634df..5694090f6 100644 --- a/local_plugins/ble_service/android/src/main/kotlin/com/yunqiinnovation/ble_service/BleCompanionManager.kt +++ b/local_plugins/ble_service/android/src/main/kotlin/com/yunqiinnovation/ble_service/BleCompanionManager.kt @@ -395,6 +395,7 @@ class BleCompanionManager(private val context: Context) { // 构建过滤器 val filter = ScanFilter.Builder() .setDeviceAddress(mac) + // .setServiceUuid(ParcelUuid(java.util.UUID.fromString("0000FEAA-0000-1000-8000-00805F9B34FB"))) .setManufacturerData(0xEFAB, byteArrayOf(0xA0.toByte(), 0x01)) .build() diff --git a/local_plugins/music_service/ios/music_service/Sources/music_service/MusicService.swift b/local_plugins/music_service/ios/music_service/Sources/music_service/MusicService.swift index 320702e8b..79e54376b 100644 --- a/local_plugins/music_service/ios/music_service/Sources/music_service/MusicService.swift +++ b/local_plugins/music_service/ios/music_service/Sources/music_service/MusicService.swift @@ -273,10 +273,10 @@ public class MusicService: NSObject { } /// 降低音量(AI说话时) - func reduceVolume() { + public func reduceVolume() { if !isVolumeReduced { originalVolume = currentVolume - let reducedVolume = max(0.0, min(1.0, currentVolume * 0.3)) // 降低到30% + let reducedVolume = max(0.0, min(1.0, currentVolume * 0.2)) // 降低到30% setVolume(volume: reducedVolume) isVolumeReduced = true print("AI说话开始,音量从 \(originalVolume) 降低到 \(reducedVolume)") @@ -284,7 +284,7 @@ public class MusicService: NSObject { } /// 恢复原始音量(AI说话结束时) - func restoreVolume() { + public func restoreVolume() { if isVolumeReduced { setVolume(volume: originalVolume) isVolumeReduced = false