2016-07-29 1 views
1

J'essaye de normaliser Mp3-Files avec NAudio mais je ne sais pas comment faire ainsi.NAudio Normaliser Audio

Le premier que je ne convertissait le fichier mp3 PCM:

using (Mp3FileReader fr = new Mp3FileReader(mp3.getPathWithFilename())) { 
    using (WaveStream pcm = WaveFormatConversionStream.CreatePcmStream(fr)) { 
     WaveFileWriter.CreateWaveFile("test.wav", pcm); 
    } 
} 

Mais quelle est l'étape suivante? Malheureusement, je n'ai rien trouvé sur le net.

Merci pour votre aide

+0

Copie possible de [Normaliser le son Naudio] (http://stackoverflow.com/questions/9802461/naudio-sound-normalize) – bassfader

Répondre

1

Je suis nouveau à NAudio, donc je ne sais pas exactement comment le code, mais je sais que la normalisation d'un fichier audio nécessite deux passes à travers les données. Le premier passage consiste à déterminer les valeurs de données maximum et minimum contenues dans le fichier. Vous devez donc analyser chaque point de données et déterminer les points de données max et min (et pour les deux canaux si stéréo). Ensuite, lors de la détermination de la valeur minimale ou maximale la plus élevée (quelle que soit la valeur absolue la plus élevée), vous calculez cette valeur en pourcentage à partir de Full Scale (valeur la plus haute ou la plus basse possible pour le flux binaire -32768). Vous augmentez ensuite le volume de la différence en pourcentage. Ainsi, par exemple, lors de votre passage de numérisation, vous avez découvert que la valeur la plus élevée dans un fichier mono 16 bits était de 29000, vous augmenteriez ensuite le volume de 112,989%, de sorte que l'échantillon maximal passe de 29000 à 32767. les autres échantillons sont augmentés en conséquence.