Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Générer une seule note de musique

7 réponses
Avatar
franssoa
Bonjour,

Je veux faire un petit programme générant des fichiers son facilitant
l’apprentissage de la reconnaissance des intervalles musicaux. Pour cela
j'ai besoin de créer des fichiers (wav) ne contenant qu'une ou deux
notes de musique, proche du son piano.
J'ai pensé utiliser timidity, ou la démo de pianoteq, mais il faut
apparemment les alimenter en fichiers midi, ce que je ne sais pas faire
à la volée.

Quelqu'un connait-il une solution simple, si possible à partir de python ?

franssoa

7 réponses

Avatar
Nicolas George
franssoa , dans le message <kiejje$b0q$, a écrit :
Je veux faire un petit programme générant des fichiers son facilitant
l’apprentissage de la reconnaissance des intervalles musicaux. Pour cela
j'ai besoin de créer des fichiers (wav) ne contenant qu'une ou deux
notes de musique, proche du son piano.



Pour juste une note pure :

ffmpeg -filter_complex 'aevalsrc=sin(2*PI*440*t)' -f alsa default

(avec une version très récente, on peut remplacer -filter_complex par
-lavfi, c'est plus court, et aevalsrc=... par sineD0, c'est plus rapide
mais moins souple ; quand je dis très récente, c'est hier soir)

Ça ne donnera pas du tout la tonalité du piano, pour ça il faudrait
connaître le profile harmonique et l'enveloppe, et en déduire la formule qui
va bien. Je suppose que ça peut se trouver sur le web.
Avatar
LeGlod
Le 21/03/2013 10:25, franssoa a écrit :
Bonjour,

Je veux faire un petit programme générant des fichiers son facilitant
l’apprentissage de la reconnaissance des intervalles musicaux. Pour cela
j'ai besoin de créer des fichiers (wav) ne contenant qu'une ou deux
notes de musique, proche du son piano.
J'ai pensé utiliser timidity, ou la démo de pianoteq, mais il faut
apparemment les alimenter en fichiers midi, ce que je ne sais pas faire
à la volée.

Quelqu'un connait-il une solution simple, si possible à partir de python ?

franssoa


peut etre utiliser un soundtracker ?
http://www.soundtracker.org/screenshots.php3
Avatar
franssoa
Le 21. 03. 13 10:25, franssoa a écrit :
j'ai besoin de créer des fichiers (wav) ne contenant qu'une ou deux
notes de musique, proche du son piano.
J'ai pensé utiliser timidity, ou la démo de pianoteq, mais il faut
apparemment les alimenter en fichiers midi, ce que je ne sais pas faire
à la volée.



Bon, finalement j'ai utilisé Midiutil(1) en python pour générer des
fichiers midi de 2 notes, transformés en wav par timidity(2), puis
assemblés en mp3 par sox(3).

franssoa

(1) http://www.emergentmusics.org/midiutil
(2) timidity source.midi -OwM --output-file tmp1.wav
(3) sox tmp1.waw tmp2.wav ... tmpX.wav -r 44100 final.mp3
Avatar
dadou
Le Thu, 21 Mar 2013 10:25:53 +0100, franssoa a écrit :

Bonjour,

Je veux faire un petit programme générant des fichiers son facilitant
l’apprentissage de la reconnaissance des intervalles musicaux. Pour cela
j'ai besoin de créer des fichiers (wav) ne contenant qu'une ou deux
notes de musique, proche du son piano.
J'ai pensé utiliser timidity, ou la démo de pianoteq, mais il faut
apparemment les alimenter en fichiers midi, ce que je ne sais pas faire
à la volée.

Quelqu'un connait-il une solution simple, si possible à partir de python
?

franssoa



Je fis ça autrefois, avec audacity si ma mémoire est bonne.
des exemples là :
http://didierdescamps.free.fr/solfege/intervalles.html#bilan
mais on peut sûrement faire mieux...
Avatar
Franssoa
Le 21/03/2013 19:17, dadou a écrit :

Je fis ça autrefois, avec audacity si ma mémoire est bonne. des
exemples là :
http://didierdescamps.free.fr/solfege/intervalles.html#bilan mais on
peut sûrement faire mieux...




Page très intéressante... mais qui va me demander un peu de temps à la
lecture.
Avatar
toto
On Thu, 21 Mar 2013 10:53:20 +0000, Nicolas George wrote:

franssoa , dans le message <kiejje$b0q$, a écrit :
Je veux faire un petit programme générant des fichiers son facilitant
l’apprentissage de la reconnaissance des intervalles musicaux. Pour
cela j'ai besoin de créer des fichiers (wav) ne contenant qu'une ou
deux notes de musique, proche du son piano.



Pour juste une note pure :

ffmpeg -filter_complex 'aevalsrc=sin(2*PI*440*t)' -f alsa default

(avec une version très récente, on peut remplacer -filter_complex par
-lavfi, c'est plus court, et aevalsrc=... par sineD0, c'est plus
rapide mais moins souple ; quand je dis très récente, c'est hier soir)

Ça ne donnera pas du tout la tonalité du piano, pour ça il faudrait
connaître le profile harmonique et l'enveloppe, et en déduire la formule
qui va bien. Je suppose que ça peut se trouver sur le web.



tu es sur leur gestionnaire de sources ? :)
Avatar
jp willm
Bonjour,

Le 21/03/2013 10:25, franssoa a écrit :

Je veux faire un petit programme générant des fichiers son facilitant
l’apprentissage de la reconnaissance des intervalles musicaux. Pour cela
j'ai besoin de créer des fichiers (wav) ne contenant qu'une ou deux
notes de musique, proche du son piano.
J'ai pensé utiliser timidity, ou la démo de pianoteq, mais il faut
apparemment les alimenter en fichiers midi, ce que je ne sais pas faire
à la volée.

Quelqu'un connait-il une solution simple, si possible à partir de python ?




Je n'ai pas la réponse scientifique, mais celle-ci :

- utiliser le synthétiseur zynaddsubfx

http://sourceforge.net/projects/zynaddsubfx/

- et enregistrer à l'aide de audacity


Les deux sont dans les paquets deb et existent sans doute sous d'autre
forme (rpm etc.)

--
jp willm
http://perso.orange.fr/willms/index.html