ios - AudioKit 4.6没有声音

标签 ios swift audiokit

去年我一直在使用 AudioKit-4.0.4 开发 iOS 应用程序。现在我的应用程序已经可以运行了,我想是时候将我的 AudioKit 库更新到新版本了。

我已经下载了 AudioKit-4.6,只是用新版本替换了我的 XCode 项目中旧的“AudioKit For iOS.xcodeproj”。一切都构建得很好,除了 AudioKit.start() 现在必须用“try”包装。无需进行其他更改即可成功构建。

但现在我的应用程序不发出任何声音。

这是我启动 AudioKit 的代码:

AKSettings.audioInputEnabled = true
mix = AKMixer()

AKSettings.playbackWhileMuted = true
AudioKit.output = mix

do {
    try AudioKit.start()
    print("----- AudioKit Started -----")
} catch {
    print("Error AudioKit.start")
}

do {
    try AKSettings.setSession(category: AKSettings.SessionCategory.playback, with: AVAudioSession.CategoryOptions.mixWithOthers)
} catch {
    print("Error setSession mixWithOthers")
}

除了没有音频之外,我还在控制台日志中看到这些重复的消息:

----- AudioKit Started -----
2019-04-08 15:03:45.709359-0700 HarmonicChimes[2708:2212995] [avas] AVAudioSessionPortImpl.mm:56:ValidateRequiredFields: Unknown selected data source for Port Speaker (type: Speaker)
2019-04-08 15:03:45.711236-0700 HarmonicChimes[2708:2212995] [avas] AVAudioSessionPortImpl.mm:56:ValidateRequiredFields: Unknown selected data source for Port Speaker (type: Speaker)

这些 AV 消息会显示在我的 iOS 12 设备上,但不会显示在 iOS 11 及更早版本上。网上的一些谷歌搜索表明这些 AV 消息是 Apple 的问题,而不是 AudioKit,但我在使用 AudioKit 4.0.4 运行时没有看到它们。

没有声音的问题是一个大问题!我搜索过“AudioKit 没有声音”,但没有找到任何有意义的内容。

看来4.6不只是4.0的简单插件替代品?是否有新的 AudioKit api 来启动声音?我的应用程序的 plist 和功能设置为允许后台操作,这可能与此有关吗?

(我使用的是 XCode 10.1、macOS 10.13.6 和 iOS 12。)

最佳答案

我在 AudioKit 的 GitHub 问题页面中发布了这个问题的答案,但在此记录一下,只是 AKOscillator 过去默认打开(不好),并已在最新版本中修复。因此,@WholeCheese 必须在他的文件中添加 osc.start() 。接下来,我希望与他进行屏幕共享,以解决 Audiobus 问题。

关于ios - AudioKit 4.6没有声音,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55583158/

相关文章:

Mapkit 中的 iOS Pin 颜色问题

ios - 用毫秒创建一个倒计时计时器(NSTimer),但它没有正确倒计时

swift - Cocoa 绑定(bind)仅以一种方式工作(NSMutableDictionary)

ios - 如何在 RxSwift 中初始化一个可观察属性?

ios - AudioKit 缓冲区消耗大量内存

ios - 使用 AudioKit 的量化序列

objective-c - 是否可以通过电子邮件发送 UIView?

iphone - 如何在iOS中更改推送通知的消息按钮的文本?

ios - UITextView 在旋转时保持文本位置

xcode - 平移 AudioKit 的 AKMetronome