- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
使用 AudioKit 进行声音管理时,我注意到这段非常简单的代码存在问题(错误?)。
import AudioKit
class MainViewController: UIViewController {
var audioFile: AKAudioFile?
var audioPlayer: AKAudioPlayer?
override func viewDidLoad() {
super.viewDidLoad()
}
@IBAction func onPlayButtonClick(_ sender: Any) {
do {
audioFile = try AKAudioFile(forReading: Bundle.main.url(forResource: "3e", withExtension: "mp3")!)
audioPlayer = try AKAudioPlayer(file: audioFile!)
AudioKit.output = audioPlayer
AudioKit.start()
audioPlayer!.play()
} catch {
print(error)
}
}
}
当用play()方法启动播放时,日志和进程(播放时长,currentTime)一切正常。但是我听不到扬声器的声音(只有一种风声)。一旦我插入耳机并再次点击按钮,我通常会听到音频。然后,我拔下耳机并点击按钮,我听不到声音(只有风声)。
我在 iPhone 5S 上遇到过这个问题。
我不在 iPad5 上面对这个,我不在模拟器上面对这个。我没有其他设备可以尝试重现。
两种设备:iOS 11.1.2 和 AudioKit:v4.0.4
注意:我的扬声器与任何其他应用程序一起正常工作,我已经检查了音量。未插入耳机时,默认输出设备设置为扬声器。
最佳答案
根据Configuring an Audio Session指南,默认情况下,AVAudioSessionCategory 设置为
In iOS, setting the Ring/Silent switch to silent mode silences any audio being played by the app.
由于 iPad 和模拟器没有此开关,它们将始终通过扬声器播放,但在硬件 iPhone 的情况下,它们只会在静音模式下通过耳机播放而不通过扬声器播放,除非 session 类别已更改。
您可以直接使用 AVAudioSession 更改 session 类别:
do {
try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback)
catch {
print("failed to set category")
}
或者您可以使用 AudioKit 的 AKSettings 包装器:
AudioKit.start()
do {
try AKSettings.setSession(category: AKSettings.SessionCategory.playback)
} catch {
print("failed to set category")
}
根据AVSessionCategory docs , 播放类别是
The category for playing recorded music or other sounds that are central to the successful use of your app.
因此它会假定用户希望在使用该应用程序时覆盖静音模式。
关于core-audio - AKAudioPlayer : No sound in speakers, 仅带耳机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47684764/
如何声明AKAudioPlayer? 我正在使用 AudioKit Lib,我只需要帮助来播放带有更改文件按钮的 .wav 文件。 import UIKit import AudioK
尝试在 iOS 11.1 上使用 AudioKit 4.0、Swift 4 渲染一系列 AKAudioPlayer 时得到一些奇怪的结果 我知道开发分支 ( https://github.com/Au
使用 AudioKit 进行声音管理时,我注意到这段非常简单的代码存在问题(错误?)。 import AudioKit class MainViewController: UIViewControll
首先,我只想感谢 AudioKit 团队通过他们的代码阐明了一些难题。我有几个问题。 1:如果播放器在到达文件/缓冲区末尾之前停止,则 AKAudioPlayer 类不会应用现场淡入淡出。 Audio
嘿,我正在做一个项目(速度很快),它比较两个音频信号并测量正确性。 AUDIOKIT pod 用于将来自麦克风(AKAmplitudeTracker)的音频转换为 float 。我试图通过在 AKAu
我是一名优秀的程序员,十分优秀!