

We now offer a subscription for just 10 cents a day**h1>
You will always enjoy the full version of Mp4Gain with all its features and benefits.
For just 10 cents a day*
*Unlimited FULL version of Mp4Gain, billed $US12.50 Quarterly (+ $5 USD one time subscription payment JUST in the first payment).
All other payments will be just $3.12 per month, billed quaterly.
That's only 10 cents per day!
CLICK TO PURCHASE
THIS PRICE ONLY LASTS FOR A FEW DAYS
For just 10 cents a day*
Waarom zijn MP3-bitrates vaak veelvouden van 32? Deel 2

Technisch gezien is er niets dat de MP3-bitrate beperkt tot een veelvoud van 2, aangezien variabele bitrate-codering kan worden gebruikt, of een aangepaste bitrate kan worden bereikt met behulp van enkele vlaggen die niet worden gebruikt in de MPEG-specificatie (hoewel dit handmatig moet worden geïmplementeerd).

Om MP3 MPEG-compatibel te laten zijn, en dus compatibel met de meeste MP3-decoders, moet het een bitrate hebben die is gedefinieerd door de specificatie, dus alle CBR-gecodeerde MP3-bestanden moeten een bitrate hebben die een veelvoud van twee is.
Afhankelijk van de bron kan VBR worden gecodeerd door de bitsnelheid te wijzigen tussen een vaste snelheid boven elk frame, of het kan worden gecodeerd door de beschikbare bits in aangrenzende frames te delen (waardoor effectief een niet-standaard bitsnelheid wordt gegenereerd voor de twee frames gecombineerd). De lengte van een bepaald frame hangt af van de bemonsteringssnelheid, er zijn 1152 samples per frame. Er is niets dat de grootte van het frame zelf beperkt, en er is ook geen limiet aan het maken van de framegrootte als basis 2 (d.w.z. een 128 kbit/s MP3 met een bemonsteringssnelheid van 44,1 kHz zou een framegrootte van 417 bytes hebben).
Uiteindelijk klinkt een bestand dat is gecodeerd met 126 kbps slechter dan een bestand dat is gecodeerd met 128 kbps, en evenzo klinkt een bestand dat is gecodeerd met 131 kbps beter. MP3’s zijn echter gecodeerd voor compressie volgens het psycho-akoestische model van een specifieke encoder. De hoeveelheid waarmee een bestand “beter” of “slechter” klinkt bij een bepaalde bitsnelheid hangt grotendeels af van het algoritme dat wordt gebruikt om het model te implementeren; over het algemeen kunnen hogere bitsnelheden echter meer gegevens bevatten, waardoor ze waarschijnlijk worden gereproduceerd. Bouw een nauwkeuriger onbewerkt stream-audiosignaal
Ik vermoed sterk dat de reden dat de MPEG-standaard veelvouden van 2 specificeert, is omdat binaire computers vaak de wiskunde kunnen optimaliseren waarbij zowel zichzelf als programmeurs betrokken zijn.
Dit is een bedelende vraag. Denk je niet dat er een wiskundige/rekenkundige reden is voor de gekozen bitrate-waarde? Of rechtvaardigt de loutere aanwezigheid van VBR geen limieten op mogelijke bitrates?
@slhck Ik heb zojuist mijn antwoord bijgewerkt om meer relevante details te geven, laat het me weten als dit alle vragen beantwoordt.
MPEG 1 Layer-III (mp3)-bestanden zijn streams van frames.
Deze webpagina beschrijft de gegevensstructuur van het raamwerk.
Zoals u kunt zien, worden er slechts 4 bits toegewezen om de bitsnelheid te bepalen. Bij het ontwerpen van een formaat voor livestreaming, wil je niet meer ruimte verspillen dan het beschrijven van de stream.
Ik weet niet precies waarom werd vastgesteld dat 4 bits een goed compromis waren tussen ruimtevoetafdruk en “bitrate-resolutie” – voor de specifieke gekozen bitrate werden ze waarschijnlijk gekozen op basis van het laagste en hoogste kwaliteitsbereik dat de ingenieur acceptabel achtte. mp3-algoritme.
Waarschijnlijk lezen de meeste MP3-spelers één frame tegelijk, waarschijnlijk in een poging om ten minste één frame “vroeg” te bufferen bij het decoderen/afspelen van het huidige frame.
De grootte van het frame en mogelijk het toegewezen RAM-geheugen is als volgt:
FrameSize = 144 * BitRate / SampleRate wanneer de opvulbit is gewist.
FrameSize = (144 * BitRate / SampleRate) + 1Wanneer de opvulbit is ingesteld.
Hogere bitrate/samplerate = meer RAM vereist.
128 Kbps is waarschijnlijk populair omdat het de standaardinstelling is voor veel encoders.
Ook gaf een collega me inzicht in de discussie: 128 Kbps vertaalt zich ook ruwweg naar “minuten in a minute” (niet geverifieerd), waarschijnlijk heeft dat ook iets te maken.
Wanneer “onbewerkte” gegevens worden gelogd, worden die gegevens in brokken gebufferd. Deze blokken zullen uiteraard machten van twee zijn. Het is conceptueel eenvoudiger als je een geheel aantal blokken per seconde hebt.
