我正在尝试使用Apple内置的TextToVoice
,即AVSpeechSynthesizer
我正在尝试以下操作,使用AVAudio
无标度= 0.0 如果(avAudio?.isPlaying)! { avAudio?.updateMeters() var power = 0.0
for x in 0..<avAudio!.numberOfChannels {
power += Double(exactly: (avAudio?.averagePower(forChannel: x))!)!
}
power /= Double((SoundEffect?.numberOfChannels)!)
scale = Double(powf(10, (Float(0.05 * power))))
if power == -120
{
return
}
if(lastScale<scale){
if scale>0.44{
scale = 0.45
}
animateView.AnimateBar(frequency: CGFloat(scale))
}
lastScale = scale
}
但是我看不到使用averagePower
播放的音频中frequency
的{{1}}的选项
即使AVSpeechSynthesizer
返回AVAudioSession.sharedInstance().isOtherAudioPlaying
有解决方案吗?