1

每月一次的 mp3 流会出现问题,而判断它出现问题的唯一方法是在流式传输时收听它。是否有脚本、程序或工具可以用来监控给定 url 的实时流并在它损坏时发送某种标志?

发生的情况通常是它播放一首歌曲或一些音乐,但每月一次,每月一次,随机地,流损坏并开始随机黑猩猩,如垃圾音频。对此有什么想法吗?我才刚刚开始,完全不知道。

4

1 回答 1

1

通常,当您播放错误采样率的曲目时会发生这种情况。

大多数(我所见过的)SHOUTcast/Icecast 编码器(直接从文件中获取)都可以很好地压缩 MP3,但假设它们配置的采样率是固定的。通常这将是 44.1kHz。如果您放入 48kHz 或 22.05kHz 的音轨,它们将以不同的速度播放,同时会导致流中出现各种随机问题。

这个问题很容易验证。只需创建一个不同采样率的文件并对其进行测试。我怀疑你会重现这个问题。如果是这种情况,据我所知,没有办法检测到它,因为您的流实际上并没有损坏......它只是听起来不正确。您必须扫描所有文件以获取采样率。 脚本中的FFMPEG应该能够帮助您。


现在,如果问题实际上是损坏的 MP3 流,那么您的编码方面就有问题。我怀疑简单地将您正在使用的任何 DLL 或模块换成最新的稳定版本的LAME会有所帮助。

要检测损坏的 MP3 流,您的编码器必须使用 CRC。如果启用它,您应该能够读取每个帧的标头以找到 CRC,然后在音频数据上运行它。如果您收到错误(或多帧错误),您可以触发警告。

您可以在此处找到有关 MP3 流标头的信息:

http://www.mp3-tech.org/programmer/frame_header.html

于 2011-11-22T14:25:41.850 回答