gpt4 book ai didi

ios - iOS:如何在音乐应用程序中的蓝牙耳机中播放缓冲音频?

转载 作者:行者123 更新时间:2023-12-02 23:47:25 26 4
gpt4 key购买 nike

我目前正在做一个音乐应用。在那我需要玩缓冲
蓝牙耳机中播放音频歌曲。我搜索了1天以上的代码。但
我不能请提供解决方案,如何将其添加到我的音乐应用中。

当iphone处于背景模式和屏幕锁定模式时,我还需要在蓝牙耳机中播放音频。

   AVAudioSession* audioSession = [AVAudioSession sharedInstance];
//[audioSession setDelegate:self];
NSError *error;
[audioSession setCategory:AVAudioSessionCategoryPlayback withOptions:AVAudioSessionCategoryOptionAllowBluetooth error:&error];
[audioSession setActive: YES error: nil];


// check the audio route
UInt32 size = sizeof(CFStringRef);
CFStringRef route;

OSStatus result = AudioSessionGetProperty(kAudioSessionProperty_AudioRoute, &size, &route);
NSLog(@"route = %@", route);
// if bluetooth headset connected, should be "HeadsetBT"
// if not connected, will be "ReceiverAndMicrophone"

// now, play a quick sound we put in the bundle (bomb.wav)
CFBundleRef mainBundle = CFBundleGetMainBundle();
CFURLRef soundFileURLRef;
SystemSoundID soundFileObject;
soundFileURLRef = CFBundleCopyResourceURL (mainBundle,CFSTR ("sample"),CFSTR ("m4a"),NULL);
AudioServicesCreateSystemSoundID (soundFileURLRef,&soundFileObject);
AudioServicesPlaySystemSound (soundFileObject); // should play into headset

我已将此代码添加到我的音乐应用中。但是此代码用于 bundle 音频文件。但我需要缓冲音频。如果不可能,请告诉我我的代码正确无误,可以通过蓝牙耳机播放本地音频文件。

最佳答案

根据我在文档中阅读的内容,设置音频 session 的类别应为

AVAudioSessionCategoryPlayAndRecord



要么

AVAudioSessionCategoryRecord



如果将选项设置为
 AVAudioSessionCategoryOptionAllowBluetooth

因此,当我查看枚举时,您应该更改另一件事: AVAudioSessionCategoryOptions蓝牙的选项是 __TVOS_PROHIBITED,但我不知道替代方法...

关于ios - iOS:如何在音乐应用程序中的蓝牙耳机中播放缓冲音频?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29740589/

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