Ik ben het schrijven van een universele parser bibliotheek voor diverse binaire formaten in Rust, als onderdeel van een persoonlijk project. Ik ben begonnen met het onderzoek naar de bestandsstructuur van MP3-bestanden. Zoals ik het begrijp, een MP3-bestand structuur bestaat uit header en data frames. Elke header frame zorgt meta-informatie over de procedure data frame. Hier is een diagram en een lijst van toegestane waarden voor MP3 header frames die ik van verwijzingen.
Ik begrijp dat het formaat van de MP3-header. Mijn verwarring of gebrek aan informatie, omringt MP3 data frames. Ik kan niet te hebben een bron die specificeert welk voorbeeld integer monsters worden gecodeerd zoals in het dataframe gedeelte van een MP3 bestand. Zijn ze 8 bit, 16 bit, 32 bit, ondertekend, niet ondertekend, etc?
Het beste wat ik kan bedenken is, om een combinatie van de sample rate frequentie te gebruiken en bitrate te berekenen wat elke steekproefomvang moeten. Maar dat is niet vast te stellen of elk monster is een ondertekend of unsigned integer.
Ik probeer niet decoderen van deze bestanden, ik probeer alleen maar om ze te ontleden. Ik heb een verrassend harde tijd vinden van deze informatie gehad. Alle informatie of nuttige iemand kan bieden zou zeer worden gewaardeerd.