gpt4 book ai didi

ios - 通过蓝牙连接的扬声器播放

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:21:49 27 4
gpt4 key购买 nike

在我的应用程序中,我使用的是播放和录制类别:

UInt32 sessionCategory = kAudioSessionCategory_PlayAndRecord;
CheckError( AudioSessionSetProperty (kAudioSessionProperty_AudioCategory,
sizeof (sessionCategory),
&sessionCategory), "Couldn't set audio category");

在应用程序中播放的任何音频最初都会通过接收器输出,直到我设置:

UInt32 doChangeDefaultRoute = 1;        
AudioSessionSetProperty (kAudioSessionProperty_OverrideCategoryDefaultToSpeaker, sizeof (doChangeDefaultRoute), &doChangeDefaultRoute);

然而,我真正想要的是通过连接的蓝牙扬声器输出音频。例如,我有一个通过蓝牙连接的扬声器。我可以使用本地音乐应用程序通过它播放音乐。但是在我的应用程序中,当使用 playandrecord 类别时,它只在设备上播放。我试过:

UInt32 allowBluetoothInput = 1;
OSStatus stat = AudioSessionSetProperty (
kAudioSessionProperty_OverrideCategoryEnableBluetoothInput,
sizeof (allowBluetoothInput),
&allowBluetoothInput
);

还有:

CFStringRef audioRouteOverride = kAudioSessionOutputRoute_BluetoothHFP;

OSStatus s = AudioSessionSetProperty (kAudioSessionProperty_OutputDestination,
sizeof(audioRouteOverride),&audioRouteOverride);

运气不好。似乎这应该是一个简单的属性集,但 Idk。有什么想法吗?

最佳答案

这是可能的,但您的蓝牙设备必须是耳机或带有内置麦克风的蓝牙设备。当您处于播放和录音类别时,它会强制您使用蓝牙麦克风作为输入。如果您没有蓝牙麦克风,它也不会播放蓝牙(如果您同时录音)。还请记住,当您录制和流式传输到 BT 时,您将只能获得 8 khz 单声道。

关于ios - 通过蓝牙连接的扬声器播放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10841065/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com