iOS - AudioUnit 应用程序的 AudioSession 类别

发布于 2024-11-03 14:22:43 字数 471 浏览 1 评论 0原文

我正在开发 iOS 的流媒体音频播放器应用程序。目前我正在尝试使用 AudioQueueAudioUnit 进行播放。

两者在正常情况下都可以正常工作。但当应用程序进入睡眠模式时,我遇到了 AudioUnit 版本的问题。

当应用程序进入睡眠模式时,应用程序的 AudioUnit 版本会停止播放。其中 AudioQueue 版本的应用程序在睡眠模式下播放时没有任何问题。

我为这两种情况设置了“kAudioSessionCategory_MediaPlayback”会话类别。我认为这个会话类别即使在睡眠模式下也应该继续播放。

我不确定我在这里缺少什么。

我想向我的应用程序添加平移/效果功能,所以我正在尝试使用 AudioUnit。

非常感谢任何帮助。

I am working on streaming audio player application for iOS. currently i am experimenting with AudioQueue and AudioUnit for playback.

Both works fine in the normal condition. But I am facing an issue with AudioUnit version of app when it goes to sleep mode.

AudioUnit version of the application stopped the playback when application goes to sleep mode. Where as AudioQueue version of the application playing with out any issue during the sleep mode.

I have set "kAudioSessionCategory_MediaPlayback" session category for both cases. I assume this session category should continue the playback even in sleep mode.

I am not sure what i am missing here.

I want to add pan/effects features to my application, so i am trying with AudioUnit.

Any help is highly appreciated.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

微凉 2024-11-10 14:22:43

最后我让 AudioUnit 实现正常工作了。我已将 AudioSession 类别设置为“kAudioSessionCategory_MediaPlayback”。由于我使用 AudioUnit 进行播放,因此我需要将“kAudioUnitProperty_MaximumFramesPerSlice”属性设置为 4096。这样即使设备处于睡眠模式,它也会继续播放。

Finally i have got the AudioUnit Implementation working. I have set the AudioSession category as "kAudioSessionCategory_MediaPlayback". As i am using AudioUnit for playback, i need to set "kAudioUnitProperty_MaximumFramesPerSlice" property to 4096. so it will continue the playback even in the device is in the sleep mode.

梦途 2024-11-10 14:22:43

根据 Apple 关于音频会话的文档,您可能应该使用 kAudioSessionCategory_SoloAmbientSound 来代替。这将停止来自其他应用程序的所有声音,但这就是您在设备锁定时能够继续播放所付出的代价。

According to Apple's documentation on audio sessions, you should probably use kAudioSessionCategory_SoloAmbientSound instead. This will stop all sounds from other applications, but that's the price you pay for being able to keep playing when the device is locked.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文