我正在尝试在我的应用程序中播放音频文件,并且我想显示播放文件的进度。
文件完全播放,但我无法正确显示文件的持续时间。返回值远低于实际持续时间。例如,它为 4 秒的音频文件返回 1 秒,或为 41 秒的音频文件返回 9 秒。
请不要说它只在播放时返回正确的值,因为我也尝试过但没有。对于使用持续时间方法的任何文件,我总是得到 1 秒,我在这里AVAudioPlayer
尝试了解决方案,我得到了那个奇怪的 9 秒而不是 41 秒!AVURLAssets
还有另一个问题AVAudioPlayer
。它播放文件,但同时它的isPlaying
方法返回NO
我不知道这是否有任何区别,但我的音频文件是 AMR 文件。
非常感谢任何帮助。谢谢。
**** 更新:我尝试使用其他文件,它工作正常,所以现在,我需要获取 AMR 音频文件的持续时间 ****