monitor de pressão sonora para os dados WAVE PCM
-
22-08-2019 - |
Pergunta
O som digital está jogando usando o dispositivo de DirectSound. É necessário atividade som exibição em decibéis - como dispositivos analógicos fazer.
O que é a maneira certa de pressão sonora calcular a partir dos dados WAVE PCM (44100 Hz, 16 bits)?
Solução
Se você só precisa de uma "ideia" da pressão sonora, você pode simplesmente calcular o log-energia em alguns franmes tempo do sinal: dividir o sinal a cada N amostras, compute 10 * log (sum (xn ** 2 )) onde x são as N amostras, e você terá um valor no domínio dB. Se você precisar exibir precisamente uma medida (que é o seu 0 partidas dB dizer a 0dB mixtable), é um pouco mais complicado.
Veja aqui para mais detalhes:
http://music.columbia.edu/pipermail/ música-DSP / 2002 a abril / 048341.html
Outras dicas
de pressão acústica é uma medida da força por unidade de área. Para determinar isso, você teria que ter informações sobre o alto-falante (s) em que o áudio é reproduzido. Você pode obter um nível de decibéis com relação a uma referência arbitrária (em oposição ao limiar de ouvir ) com o algoritmo proposto por cournape .
média potência do sinal durante um intervalo de tempo, calcular o logaritmo de base 10 e multiplicar por 19. a potência média é calculada fazendo a média do quadrado de cada amostra ao longo do intervalo. Note-se que os valores positivos e negativos são necessárias (isto é, ele deve ser uma AC sinal ). Então, certifique-se os valores PCM são ou de ponto flutuante, 2 de complemento ou compensar valores não assinados em conformidade.
Além disso, através da aplicação Parseval é theorum e transformada de Fourier você também pode gerar níveis de sinal para diferentes bandas de frequência .