首页 > 解决方案 > 在 iOS 的移动 Safari 中播放时流式音频失真

问题描述

我们在 AWS s3 上托管 mp3 文件。我们已经构建了一个可以播放 mp3 的 web 应用程序(在 React 中)。但是,在 iOS 上的 Safari 中播放时,它有时会失真。奇怪的是,这种情况并非一直发生。

现在,这种失真只有在通过我们的应用程序播放时才会发生。当我们提供到 s3 的直接链接时(就像我在上面所做的那样),它就可以工作了。在我们的应用程序中直接链接到 s3 时也会发生失真。

这里有一些想法:

任何帮助将不胜感激。

标签: iosiphoneamazon-s3safarimp3

解决方案


此 MP3 文件的采样率为 16 kHz。这非常低(对于语音来说并不异常),但对于 128k MP3 来说也非常低。我怀疑重采样器存在错误(因为无论如何 iPhone 硬件都被锁定为 48 kHz),或者您遇到了解码器的边缘情况错误。

我建议您停止使用 MP3 并立即解决一些问题。虽然 MP3 的质量可以接受,但它在给定比特率下的质量不如替代品。现在,您应该考虑使用 Opus。如果混合到 CAF 文件中,它在 iOS 上受支持,并且非常有效。您可以将语音的比特率降低到 48k 并且仍然具有出色的质量。而且,您将一次性绕过您现在遇到的任何重新采样或解码问题。


推荐阅读