|
|
|
@ -54,7 +54,7 @@ public class SimpleAudioReceiver: NSObject { |
|
|
|
private var currentRoute: AudioOutputRoute? |
|
|
|
//public var onAudioData: ((Data) -> Void)? |
|
|
|
public var recordfile: RecordFile? |
|
|
|
|
|
|
|
public var isHeadphones = true |
|
|
|
|
|
|
|
/** |
|
|
|
* 初始化 |
|
|
|
@ -261,11 +261,17 @@ public class SimpleAudioReceiver: NSObject { |
|
|
|
desiredMode = .voiceChat |
|
|
|
desiredOptions = [.allowBluetooth] |
|
|
|
} else { |
|
|
|
// 非通话:保持原有逻辑,但使用 .allowBluetooth 以支持录音(而不是 A2DP) |
|
|
|
desiredCategory = .playAndRecord |
|
|
|
desiredMode = .videoChat |
|
|
|
desiredOptions = [.allowBluetooth, .mixWithOthers, .defaultToSpeaker] |
|
|
|
//desiredOptions = [.mixWithOthers, .defaultToSpeaker] |
|
|
|
if(isHeadphones){ |
|
|
|
// 非通话:保持原有逻辑,但使用 .allowBluetooth 以支持录音(而不是 A2DP) |
|
|
|
desiredCategory = .playAndRecord |
|
|
|
desiredMode = .videoChat |
|
|
|
desiredOptions = [.allowBluetooth, .mixWithOthers, .defaultToSpeaker] |
|
|
|
//desiredOptions = [.mixWithOthers, .defaultToSpeaker] |
|
|
|
}else{ |
|
|
|
desiredCategory = .playAndRecord |
|
|
|
desiredMode = .videoChat |
|
|
|
desiredOptions = [.mixWithOthers, .defaultToSpeaker] |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
// 仅在类别或模式变化时才调用 setCategory,避免触发不必要的 categoryChange |
|
|
|
|