Können zwei verschiedene Decoder zwei verschiedene Sample-Ergebnisse für denselben MP3 ausgeben? Ich dekodiere eine MP3-Datei in Matlab und sie erzeugt zwei Spalten (vermutlich eine für jeden Kanal). Wenn ich die Beispieldaten mit AVAssetReader (iOS) aus derselben Datei extrahiere, erhalte ich unterschiedliche Ergebnisse. Als ich denselben Code mit einer WAV-Datei ausprobiert habe, stimmten die beiden Ergebnisse überein, sodass der Code vermutlich in Ordnung ist (obwohl das Matlab-Ergebnis einige zusätzliche leere Frames enthielt).
Wenn ich nicht wissenschaftlich zufällige Werte aus meinem AVAssetReader MP3-Ergebnis auswähle und in den Matlab-Ergebnissen nach ihnen suche, sind sie in der Regel vorhanden, aber nicht immer. Ich weiß nicht, ob dies nur Zufall ist, verschiedene Rundungsfehler oder ob sie wirklich übereinstimmen. Das Problem ist, wenn sie übereinstimmen, unterscheiden sich die umgebenden Zahlen voneinander. 0.0021
Tritt beispielsweise in beiden Ergebnissen auf, aber die umgebenden Zahlen in Matlab sind -0,0649,0,0147 usw. (die in den AVAssetReader-Ergebnissen nicht in der Nähe von 0,0021 angezeigt werden).
Was könnte diese Diskrepanz verursachen, verursacht sie einen ernsthaften Mangel an Integrität in meiner App und wie würde ich sie beheben? Vielen Dank.