Я хочу проверить, работает ли звук моего динамика программно или нет.
В настоящее время я воспроизводил звук и записывал его, а также проверял, записан ли звук с использованием peakPower
.
recorder?.updateMeters()
let peakRecordedValue: Float = recorder?.peakPower(forChannel: 1) ?? 0.0
if peakRecordedValue <= 0 && peakRecordedValue >= -30 {
// Speaker is working
}
* 1006.* Это работало нормально для меня.Но есть проблема.Если микрофон не работает или у нас есть проблемы с записью, он не будет получать звук, и я не могу проверить, связана ли эта проблема с микрофоном или динамиком.
Есть ли другой способ проверить, поступает ли звук из динамиков, без использования других ресурсов, таких как микрофон.
PS: AVAudioSessionPortBuiltInSpeaker
- текущий порт.