我正在使用 Swift 开发一个 iOS 应用程序,我的问题是,尝试在音频流期间调整播放速度。
我在这个项目中使用 AVPlayer:
streamingPlayer = AVPlayer(playerItem: audioItem)
调整播放速度:
streamingPlayer.rate = slider.value
我使用测试服务器对其进行了测试,对于有助于访问音频文件的普通链接来说,它工作得很好。播放速度的调整没有问题,效果很好。
当链接涉及更多安全性时,就会出现问题。我可以通过 .ashx
请求访问音频。速度可以调慢点(AVPlayer rate < 1)
但当它必须变得更快时,问题就出现了。 (正常的rate是1,所以问题是rate不能大于1)
我尝试使用下面的函数,但没有帮助:
audioItem.canPlayFastForward
另一个奇怪的问题是,当测试人员在高速互联网上测试它时,它工作得很好。我在 15-30 mbps 之间的速度上进行了测试,问题仍然存在。我假设这是与服务器的连接问题。我不希望用户使用高速互联网来使用该应用程序。那么有人可以帮我优化或解决这个问题吗?
我浏览过AVPlayer
文档并尝试了几乎提供的所有功能。
这是一个示例 link 。如果有人能帮助我,我将不胜感激!
最佳答案
我意识到这将在 9 个月后出现,但我遇到了与你类似的问题并解决了这个问题,所以我想我会为将来关注此问题的任何人发帖。您必须设置:AVAudioPlayerName.enableRate = true。
关于ios - 在 iOS 中使用 AVPlayer 进行音频流播放时的播放速度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28185385/