Por que os bitrates de MP3 são geralmente múltiplos de 32? (potências de 2)

6

Eu entendo por que múltiplos de 2 aparecem tantas vezes em computadores devido à sua natureza binária, mas não consegui descobrir as taxas de bits de mp3 mais comuns (64kbps, 128kbps, 160kbps, 192kbps, 256kbps, 320kbps, etc.) também seguem essa regra.

  • Como os MP3s são apenas codificações sequenciais de ondas sonoras, por que é importante que cada segundo seja representado com um número de kilobits que é divisível por 2?
  • Os reprodutores de música como o iTunes simplesmente continuam lendo o arquivo e reproduzindo o som codificado, independentemente de onde estejam os segundos limites, ou lêem o arquivo segundo a segundo?
  • No último caso, a leitura de um arquivo de 256kbps exigiria a leitura de um número de páginas na memória menor que um arquivo de 257kbps, mas o leitor poderia ler apenas blocos de 256 kilobits, independentemente da taxa de bits, e processá-lo gradualmente, certo? / li>
  • Os MP3s com 128kbps são populares apenas porque esta é uma taxa de bits geralmente aceita ou eles realmente têm alguma vantagem sobre arquivos a 126kbps e 131kbps além de uma pequena diferença very na qualidade / tamanho do arquivo?
por Gordon Gustafson 24.08.2012 / 04:00

3 respostas

8

Para codificação constante de taxa de bits (CBR), o padrão MPEG-1 Audio Layer III especifica o padrão taxas de bits de 32, 40, 48, 56, 64, 80, 96, 112, 128, 160, 192, 224, 256 e 320 kbit / s. Existem outros definidos no padrão MPEG-2, mas eles também são múltiplos de 2 (na verdade, todos os múltiplos de 8 no intervalo de 8 a 160 - veja a tabela "Índice de taxa de bits" no link acima).

Tecnicamente, não há nada que limite a taxa de bits de um MP3 a um múltiplo de dois, já que a codificação de taxa de bits variável pode ser usada ou uma taxa de bits personalizada pode ser implementada usando alguns dos flags não usados da especificação MPEG. para ser implementado manualmente). Para que um MP3 seja compatível com a especificação MPEG e, portanto, compatível com a maioria dos decodificadores de MP3, ele deve ter uma taxa de bits definida conforme a especificação - assim, todos os arquivos MP3 codificados em CBR terão uma taxa de bits dois.

De acordo com o recurso, VBR pode ser codificado trocando a taxa de bits entre as taxas fixas acima por frame, ou pode ser codificado compartilhando os bits disponíveis em frames adjacentes (efetivamente gerando uma taxa de bits não padrão para os dois quadros combinados). O comprimento de um determinado quadro depende da taxa de amostragem, com 1152 amostras por quadro. Não há nada que restrinja o tamanho de um quadro em si, nem existe qualquer restrição para que um quadro seja um tamanho de base-2 (ou seja, um MP3 de 128 kbit / s com uma taxa de amostragem de 44,1 kHz terá um tamanho de quadro de 417 bytes) .

Por fim, um arquivo codificado a 126 kbps soará pior do que um a 128 kbps e, da mesma forma, um a 131 kbps soará melhor. No entanto , os MP3's são codificados de acordo com o modelo psicoacústico de um determinado codificador para compressão. A quantidade que um arquivo soará "melhor" ou "pior" em uma determinada taxa de bits é altamente dependente dos algoritmos usados para implementar o modelo - no entanto, em geral, taxas de bits mais altas permitem mais dados, presumivelmente reconstruindo um fluxo mais preciso do original sinal de áudio.

    
por 24.08.2012 / 04:19
1

Os arquivos MPEG 1 Layer-III (mp3) são um fluxo de quadros.

Esta página web detalha a estrutura de dados de um quadro.

Como você pode ver, apenas 4 bits foram alocados para determinar a taxa de bits. Ao projetar um formato para algo que deve ser transmitido em tempo real, você não quer desperdiçar mais espaço do que você tem que descrever coisas sobre o fluxo.

Não sei exatamente por que 4 bits foi determinado como um bom equilíbrio entre espaço consumido e "resolução de taxa de bits" - e em relação às taxas específicas escolhidas, eles provavelmente foram escolhidos de acordo com o que os engenheiros julgaram serem os menores e mais altos intervalos aceitáveis qualidade para o algoritmo mp3.

Provavelmente, a maioria dos leitores de MP3 está lendo em um quadro por vez, possivelmente tentando armazenar pelo menos um quadro "à frente" enquanto o atual está sendo decodificado / reproduzido.

O tamanho do quadro, e provavelmente a RAM alocada para segurá-lo, é este:

  • FrameSize = 144 * BitRate / SampleRate quando o bit de preenchimento é limpo.
  • FrameSize = (144 * BitRate / SampleRate) + 1 quando o bit de preenchimento está definido.

Taxas de bits / amostragens mais altas = mais RAM necessária.

128 Kbps provavelmente é popular porque é a configuração padrão em muitos codificadores.

Além disso, um colega de trabalho me deu algumas dicas sobre isso durante uma discussão: 128Kbps também se traduz em um "meg um minuto" (não verificado, no entanto) - também pode ter algo a ver com isso.

    
por 24.08.2012 / 17:14
0

Ao gravar os dados "brutos", os dados serão divididos em blocos para armazenamento em buffer. Esses blocos obviamente serão potências de dois. É mais simples conceitualmente se houver um número inteiro de blocos por segundo.

    
por 24.08.2012 / 05:28