2009-06-25 8 views
9

Si j'ai déjà les données wav dans deux tableaux (canal gauche & canal droit), comment peut-on les convertir en un seul tableau mono?Comment convertir une wav stéréo en mono

Existe-t-il une fonction f de telle sorte que Mono [x] = f (L [x], R [x])?

+0

Si vous n'avez pas à le faire très souvent, j'utiliserais Audacity. –

+0

Chaque fois que j'importe de l'audio dans mon application – Nifle

Répondre

8

Le mixage est la moyenne des deux canaux.

f_mono = function(l, r) { 
    return (l + r)/2; 
} 
+0

Aussi simple que ça ... – Nifle

+0

Quelque chose à garder à l'esprit: supposons que vous ayez un fichier stéréo contenant uniquement un son de gauche et un son central, qui sont perçus comme ayant le même volume . Lorsque vous ajoutez linéairement les deux canaux ensemble, le son central sera perçu comme plus fort. (Exécutez les calculs d'énergie de l'onde sonore avec deux haut-parleurs et un micro, puis déplacez les haut-parleurs ensemble.) Je n'ai pas d'idées intelligentes pour éviter cela. – ephemient

+0

Ce n'est pas un problème, heureusement. L'audio est juste une aide visuelle pour les problèmes de synchronisation. Le fichier audio d'origine est utilisé lors de la lecture de l'ausdio. Je voulais juste convertir en mono pour faciliter le calcul de la forme d'onde. Voir http://stackoverflow.com/questions/1035533/how-do-i-visualize-audio-data – Nifle

4

Prenez juste une moyenne des deux valeurs.

Questions connexes