Ajouter une musique de fond à une voix

Article un petit peu à part aujourd’hui, puisqu’il s’adresse à un public probablement très restreint : les utilisateurs d’Asterisk.

Lors de l’écriture d’applications vocales, il est généralement nécessaire d’ajouter une musique de fond aux fichiers vocaux et il n’est pas toujours possible/intéressant/élégant de réaliser le mixage dans l’application elle-même. Jusque là, j’utilisais tout bêtement Audacity pour arriver à mes fins, mais la tâche était quand même particulièrement rébarbative et répétitive.

Hier a été la fois de trop, et je me suis donc penché sur le sujet pour voir si il n’existait pas des scripts existants capables d’automatiser la démarche. Un tel script permet de gagner énormément de temps, évidement, mais surtout, il m’ouvre la porte de la délégation. Les utilisateurs pourraient alors directement ajouter la musique de fond lors de l’enregistrement (« Appuyez sur 1 pour ajouter un fond sonore ») ou à postériori dans l’application web

Sauf que je n’ai rien trouvé. Je me suis donc penché un peu plus sur SoX, que j’utilisais déjà pour convertir des fichiers audio vers un format « Asterisk-compliant » (1), et il s’avère que ce logiciel est beaucoup plus sympathique et puissant qu’il n’y parait : il sait mixer, couper, normaliser, fondre, etc. et tout ça avec un syntaxe finalement assez accessible. Une fois qu’on a pigé qu’il faut multiplier les appels consécutifs plutôt que de tout rassembler en une seule commande, il est possible de réaliser a peu près n’importe quel traitement simple sur un fichier audio. L’outil semble solide (pas eu le moindre crash alors que je lui ai donné pas mal d’occasions) et plutôt rapide, pour moi c’est du tout bon !

J’ai donc rédigé un petit script shell capable d’ajouter la fameuse musique de fond à un enregistrement, et le pose ici (2) dans l’espoir que ça serve à quelqu’un d’autre, par la magie des moteurs de recherche. Il permet de choisir la durée de la musique avant et après la voix, de baisser le volume de la musique pendant la lecture de la voix et d’appliquer un fade-out au résultat. C’est basique, mais ça marche et ça fait ce que je veux.

Prière de respecter la license de ces scripts.

Liens :


Publié

dans

par

Étiquettes :

Commentaires

Laisser un commentaire