两个不同的解码器是否可以为同一个 MP3 输出两个不同的样本结果?我在 Matlab 上解码一个 mp3,它产生两列(大概每个通道一个)。当我使用 AVAssetReader (iOS) 从同一个文件中提取样本数据时,我得到了不同的结果。当我用 WAV 文件尝试相同的代码时,两个结果匹配,所以我猜代码很好(尽管 Matlab 结果有一些额外的空白帧)。
如果我不科学地从我的 AVAssetReader MP3 结果中选择随机值,并在 Matlab 结果中搜索它们,它们往往存在,但并不总是存在。我不知道这是否只是巧合,不同的四舍五入错误,或者它们是否真正匹配。问题是,当它们匹配时,周围的数字彼此不同。例如,0.0021
出现在两个结果中,但在 Matlab 上的周围数字是 -0.0649,0.0147 等。(在 AVAssetReader 结果中不会出现在 0.0021 附近)。
什么可能导致这种差异,它是否会导致我的应用程序严重缺乏完整性,我将如何解决它?谢谢你。