use*_*er_ 6 iphone objective-c ios swift
在iOS中,可以通过设置更改播放速率AVPlayer.rate。当AVPlayback rate设置为0.5时,播放会变慢。
默认情况下,以0.5播放速率播放的声音质量很差。要提高质量,您需要设置AVPlayerItem.audioTimePitchAlgorithm。
根据API文档,将设置AVPlayerItem.audioTimePitchAlgorithm为AVAudioTimePitchAlgorithmSpectral使质量最高。
快速代码是:
AVPlayerItem.audioTimePitchAlgorithm = AVAudioTimePitchAlgorithm.spectral // AVAudioTimePitchAlgorithmSpectral
Run Code Online (Sandbox Code Playgroud)
AVAudioTimePitchAlgorithmSpectral增加的质量比默认质量更多。但是的音质AVAudioTimePitchAlgorithmSpectral不够好。声音仍在回响,聆听它的压力很大。
在Apple的Podcast App中,当我将播放速度设置为1/2时,播放速度变慢并且声音质量很高,根本没有回音。
我希望我的应用提供与Apple的Podcast应用相同的质量。
是否有iOS API可以提高音质AVAudioTimePitchAlgorithmSpectral?
如果没有,即使他们在自己的Podcast应用中使用它,为什么Apple不提供它?
还是应该使用第三方库?有没有免费或低价的好图书馆,很多人用来改变播放速度?
use*_*er_ 13
我一直在搜索并尝试学习 AudioKit 和 Audio Unit,甚至考虑购买第三方时间拉伸音频处理库来解决过去 3 周播放缓慢的质量问题。
现在终于找到了一个超级简单的解决方案。
AVPlayer 可以通过设置AVPlayerItem.audioTimePitchAlgorithm
为AVAudioTimePitchAlgorithm.timeDomain而不是 来降低质量非常好的音频AVAudioTimePitchAlgorithm.spectral。
文档说:
timeDomain是一种中等质量的音调算法,计算量较小。适合语音。
这种方式spectral适用于音乐。timeDomain适用于语音。
这就是为什么我的应用程序使用的语音文件被回显的原因。
这就是为什么 Apple 的 Podcasts App 放慢的音频质量非常高的原因。它还必须使用这种时域算法。
这就是为什么 AudioKit 似乎是为音乐使用而开发的,它播放的语音音频质量很差。
| 归档时间: |
|
| 查看次数: |
526 次 |
| 最近记录: |