Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 28/06/2014, à 06:39

temps

lmajo un outil qui génère et lit les notes

Bonjour,
J'annonce la sortie de lmajo à compiler sous qt5

Lmajo reprend une fenêtre du piano virtuel de lm3jo, mais cette fois chaque note du piano virtuel est customisable encore plus facilement car les notes sont construites à l'aide de la technique que j'ai inventé dans le projet BAUL.

C'est en téléchargement ici

Le but est de donner aux tux un outil qui permet de créer son propre instrument de musique.
Je répondrait volontiers aux demandes d'aide de customisation, ne cherchez pas ce lien sur mon site, je l'ai réservé aux forums ou j'ai parfois trouvé de l'aide ou des sources utiles.

Les sources ne pèse que 41 Ko, mais vous pouvez vérifier vous pouvez générer des fichiers audio sans limite de poids, car c'est de la modélisation.

Cordialement

Dernière modification par temps (Le 28/06/2014, à 06:47)


Parce que l'USB bootable est le support des systèmes experts,
Parce que l'USB bootable contient sa propre image au démarrage.
L'USB bootable permet de créer un monde à la dimension de son imagination
https://www.letime.net

Hors ligne

#2 Le 28/06/2014, à 20:55

tiramiseb

Re : lmajo un outil qui génère et lit les notes

Salut,

Ce serait cool d'inclure des instructions pour la compilation, je n'ai pas vraiment envie de fouiller des heures pour trouver toutes les bibliothèques nécessaires, juste pour essayer ton logiciel...

D'ailleurs, ce qui serait ultra-cool c'est de faire un package big_smile

Hors ligne

#3 Le 29/06/2014, à 00:17

temps

Re : lmajo un outil qui génère et lit les notes

Bonjour,
Le paquet est prévue, c'est la raison d'ailleurs de cette version allégée.
Le problème c'est que je dois ajouter deux lib dans qt (sox et gl de qt5), je suis encore entrain de travailler dessus.
Je regarde demain pour donner le apt-get install des deux lib et la ligne de compilation en attendant d'arriver à l'intégrer dans les codes.
Ensuite je passe à la recherche pour créer directement un deb avec qt.
Je pense qu'avant une semaine j'aurai le deb.
Ce qui est intéressant dans cette appli, c'est que chacun peut créer son propre instrument de musique en modifiant l'arrangement dans le fichier avant compil.
Je retouche juste un peu le fichier avant car sous cette version, je génère un fichier audio à chaque appui sur une touche. Afin de ne générer qu'une seule fois au premier appel, je suis entrain de placer des switch pour lancer directement la lecture avec sox en utilisant le fichier audio sans le recréer. Le code sera plus lourd, mais l'application travaillera beaucoup moins.

Voici les dépendances de qt5 pour compiler et jouer

sudo apt-get install libglu1-mesa-dev -y
sudo apt-get install sox

Le marteau acoustique sous sa forme courte produit les différents sons de tambour. Les premières touches données en exemple.
Je viens de changer les touches suivantes pour montrer comment construire des marteaux acoustiques long pour créer les notes de piano. Je ne vais pas laisser longtemps cette forme car je vais ensuite montrer comment créer des marteaux acoustiques pour créer les notes de guitare (faire le tour des trois grandes familles de marteaux acoustiques)
Le piano, c'est tout simplement comme un tambour sur lequel on duplique chaque front de manière à augmenter la force, voir le code pour mieux comprendre. (il n'y a pas de fréquence ou d'algèbre, c'est juste une histoire de forme et de force par le nombre de répétition de chaque front)

Cordialement

Dernière modification par temps (Le 30/06/2014, à 23:36)


Parce que l'USB bootable est le support des systèmes experts,
Parce que l'USB bootable contient sa propre image au démarrage.
L'USB bootable permet de créer un monde à la dimension de son imagination
https://www.letime.net

Hors ligne

#4 Le 03/07/2014, à 23:40

temps

Re : lmajo un outil qui génère et lit les notes

Bonjour,

Pour ceux qui veulent avoir une dernière information sur la notion de force en acoustique voici un code pour construire un son particulièrement joli avec la lettre y dans lmajo, plus on retire la répétition du front, plus le son nous semble aigu et moins joli, car on abaisse la force.

void
MaFenetre::fonctiontouchey ()
{

      switch (passeley)
	{
	case 1:
	switch (duy)
	{
	case 1:
	varamplitude = 10;
	varnbdepoints = 3;
	durer = 1;
	nbdepointsd = 80;
	actiony ();
	duy = 2;
	 awav[0]='y';
	 awav[1]='1';
	 ajo[0]='y';
void MaFenetre::actiony ()
{


    	int amplituded;
    	int amplitudeh;
    	int amplitudeb;   
	amplitudeh = 220;
	amplitudeb = 30;
	amplituded = 128;



/***Début traitement***/
FILE* fichierjoa1 = NULL;
fichierjoa1 = fopen(cecci111, "w");
if (fichierjoa1 != NULL)
{
fprintf(fichierjoa1, "%d %d\n", amplituded, nbdepointsd);

      while ( durer > 0 )
      {
amplitudeh = amplituded;
amplitudeb = amplituded;
amplitudeh = amplitudeh + varamplitude;
nbdepointsd = nbdepointsd - varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
amplitudeb = amplitudeb  - varamplitude;
nbdepointsd = nbdepointsd - varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
amplitudeh = amplitudeh + varamplitude;
nbdepointsd = nbdepointsd - varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
amplitudeb = amplitudeb  - varamplitude;
nbdepointsd = nbdepointsd - varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
amplitudeh = amplitudeh + varamplitude;
nbdepointsd = nbdepointsd - varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
amplitudeb = amplitudeb  - varamplitude;
nbdepointsd = nbdepointsd - varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
amplitudeh = amplitudeh + varamplitude;
nbdepointsd = nbdepointsd - varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
amplitudeb = amplitudeb  - varamplitude;
nbdepointsd = nbdepointsd - varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
amplitudeh = amplitudeh + varamplitude;
nbdepointsd = nbdepointsd - varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
amplitudeb = amplitudeb  - varamplitude;
nbdepointsd = nbdepointsd - varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
amplitudeh = amplitudeh + varamplitude;
nbdepointsd = nbdepointsd - varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
amplitudeb = amplitudeb  - varamplitude;
nbdepointsd = nbdepointsd - varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
amplitudeh = amplitudeh + varamplitude;
nbdepointsd = nbdepointsd - varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
amplitudeb = amplitudeb  - varamplitude;
nbdepointsd = nbdepointsd - varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
amplitudeh = amplitudeh + varamplitude;
nbdepointsd = nbdepointsd - varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
amplitudeb = amplitudeb  - varamplitude;
nbdepointsd = nbdepointsd - varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
amplitudeh = amplitudeh + varamplitude;
nbdepointsd = nbdepointsd - varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
amplitudeb = amplitudeb  - varamplitude;
nbdepointsd = nbdepointsd - varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
amplitudeh = amplitudeh + varamplitude;
nbdepointsd = nbdepointsd - varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
amplitudeb = amplitudeb  - varamplitude;
nbdepointsd = nbdepointsd - varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);





amplitudeh = amplitudeh - varamplitude;
nbdepointsd = nbdepointsd + varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
amplitudeb = amplitudeb  + varamplitude;
nbdepointsd = nbdepointsd + varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
amplitudeh = amplitudeh - varamplitude;
nbdepointsd = nbdepointsd + varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
amplitudeb = amplitudeb  + varamplitude;
nbdepointsd = nbdepointsd + varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
amplitudeh = amplitudeh - varamplitude;
nbdepointsd = nbdepointsd + varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
amplitudeb = amplitudeb  + varamplitude;
nbdepointsd = nbdepointsd + varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
amplitudeh = amplitudeh - varamplitude;
nbdepointsd = nbdepointsd + varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
amplitudeb = amplitudeb  + varamplitude;
nbdepointsd = nbdepointsd + varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
amplitudeh = amplitudeh - varamplitude;
nbdepointsd = nbdepointsd + varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
amplitudeb = amplitudeb  + varamplitude;
nbdepointsd = nbdepointsd + varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
amplitudeh = amplitudeh - varamplitude;
nbdepointsd = nbdepointsd + varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
amplitudeb = amplitudeb  + varamplitude;
nbdepointsd = nbdepointsd + varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
amplitudeh = amplitudeh - varamplitude;
nbdepointsd = nbdepointsd + varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
amplitudeb = amplitudeb  + varamplitude;
nbdepointsd = nbdepointsd + varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
amplitudeh = amplitudeh - varamplitude;
nbdepointsd = nbdepointsd + varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
amplitudeb = amplitudeb  + varamplitude;
nbdepointsd = nbdepointsd + varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
amplitudeh = amplitudeh - varamplitude;
nbdepointsd = nbdepointsd + varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
amplitudeb = amplitudeb  + varamplitude;
nbdepointsd = nbdepointsd + varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
amplitudeh = amplitudeh - varamplitude;
nbdepointsd = nbdepointsd + varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
amplitudeb = amplitudeb  + varamplitude;
nbdepointsd = nbdepointsd + varnbdepoints;
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeh, nbdepointsd);
fprintf(fichierjoa1, "%d %d\n", amplitudeb, nbdepointsd);



durer--;
 }

fclose(fichierjoa1), fichierjoa1 = NULL;;
}
vavoiry();


  }


J'abandonne l'idée de montrer comment fonctionne l'acoustique. Puisque wikipedia rejette mes démonstrations, que les RMLL rejette mes conférences pour montrer mon format audio et ses lois de fonctionnement, ou la BAUL, que visiblement ça sert à rien que je partage mes codes sous linux.
Je pense sincèrement que pour pouvoir se prétendre comme faisant partie du libre, la première chose à faire, c'est de ne pas abrutir les gens, en leur présentant des concepts faux. Depuis 4 ans, je montre et démontre les lois de l'acoustique, j'ai compris, maintenant je ne donnerai plus que des outils tout fait sans jamais plus donner une explication.

Cordialement

Dernière modification par temps (Le 10/07/2014, à 05:19)


Parce que l'USB bootable est le support des systèmes experts,
Parce que l'USB bootable contient sa propre image au démarrage.
L'USB bootable permet de créer un monde à la dimension de son imagination
https://www.letime.net

Hors ligne

#5 Le 04/07/2014, à 16:31

tiramiseb

Re : lmajo un outil qui génère et lit les notes

Pour ma part je ne fais qu'attendre tes instructions pour pouvoir compiler ton truc.
Et là j'apprends que tu abandonnes tout, parce que certains n'ont pas été intéressés par tes informations. Tu es un peu susceptible, non ?

Hors ligne

#6 Le 04/07/2014, à 19:23

temps

Re : lmajo un outil qui génère et lit les notes

Bonjour,
"susceptible" je pense sincèrement que non, preuve en est, c'est que demain matin je serai aux RMLL alors même que je ne peux diffuser une info importante par conférence.
Ce n'est pas parce-qu'il y a un vers dans la pomme que je jette la pomme.
Mon intention est de procéder différemment. 
Acte un ; créer des petites applications ludiques. Si un tux (ou FreeBSD) me demande les codes et comment compiler, je continue à partager le savoir, et donne en aparté un lien de téléchargement.
Acte deux, je vais créer une société et vendre sur les systèmes propriétaires. Si ça marche, je pourrai créer mes propres composant et sponsoriser ceux qui font vraiment du libre à mon sentiment.

Je viens de créer un nouveau piano virtuel en utilisant les licornes, l’avantage d'utiliser les licornes, c'est que cela me permet de montrer simplement l'effet des forces en acoustique, une notion physique pas encore reconnue et à par quelques amis pas comprise.
c'est ici http://commons.wikimedia.org/w/index.ph … =128144731  ou ici
http://commons.wikimedia.org/w/index.ph … =128144727
Si le marteau acoustique permet de créer les tambours, les guitare, les piano , la licorne permet de créer les sons autour de la voix humaine.

Pour compiler, il suffit de gratter mes lien, c'est donné dans lm3jo comment compiler, je suis trop pris à créer pour avoir eu le temps d'effacer tous les codes. Ce week-end je suis pris aux RMLL, mais après je regarderai d'enlever les codes pour les donner qu'à ceux qui sont curieux et ouvert. En d'autres mots, J'ai réalisé que c'est une erreur de contrarier ceux qui mélange sciences et croyances, et que les fous de Dieu sont très dangereux.

Cordialement

Dernière modification par temps (Le 05/07/2014, à 05:31)


Parce que l'USB bootable est le support des systèmes experts,
Parce que l'USB bootable contient sa propre image au démarrage.
L'USB bootable permet de créer un monde à la dimension de son imagination
https://www.letime.net

Hors ligne

#7 Le 10/07/2014, à 16:17

temps

Re : lmajo un outil qui génère et lit les notes

Bonjour,
J'ai ajouté lmcjo qui produit des sons de basse électrique. Le principe d'une guitare basse est de créer une forme de marteau acoustique à durée constante, ensuite de renforcer la force. Dans l'instrument musical lmcjo, je part de 240 et diminue de 7 par note, pour obtenir un son plus aigue, il faut remplacer la valeur dans nbpoints ici

	varamplitude = 1;
	varnbdepoints = 0;
	durer = 94;
	nbdepointsd = 240;
	action ();

pour la note b, faire une recherche de terme actionb suffit.
pour la note c, faire une recherche de terme actionc ....
Pour augmenter la force il suffit d'augmenter la répétition en exemple en créant une boucle, comme je l'ai fait sur les licornes dans lmbjo.

Pour compiler c'est qmake, ou on peut utiliser qtcreator, ça marche aussi en ouvrant le fichier .pro

pour entendre c'est ici
pour vois c'est ici

Cordialement

Dernière modification par temps (Le 10/07/2014, à 16:21)


Parce que l'USB bootable est le support des systèmes experts,
Parce que l'USB bootable contient sa propre image au démarrage.
L'USB bootable permet de créer un monde à la dimension de son imagination
https://www.letime.net

Hors ligne

#8 Le 12/07/2014, à 07:06

temps

Re : lmajo un outil qui génère et lit les notes

Bonjour,

J'ai ajouté la version orgue qui se nomme lmdjo, pour entendre les notes, c'est ici

Je recherche un musicien qui arrive à identifier les notes, de manière à donner un repère aux tux utilisateurs débutant en musique qui veulent tester en utilisant des partitions.
Comme je construits plusieurs notes différentes en utilisant que les forces et les amplitudes sans changer la valeur de ce qui se nomme fréquence, et que je n'ai pas l'oreille acoustique, je suis incapable de le faire tout seul.

J'ai ajouté le piano virtuel lmfjo qui montre les effets de plateau et de variation de force à écouter ici :
https://commons.wikimedia.org/wiki/File:Lmfjo.ogg

Un petit ajout suite à une conversation que j'ai eu hier soir avec un tux. La difficulté rencontré pour identifier les notes provient de ma technique de modélisation. Je parle en durée, il faut 44100 points de durée pour faire une seconde.
Prenons le cas d'un des premiers sons de voix humaine que j'ai créé, un son "A" que je pense avoir mis sur wikimedia. J'ai construit ce son "A" avec 4 fronts de durée répétés en boucle:
premiers fronts 15 points, deuxième front 9 points, troisième front de 9 points, quatrième front de 12 points.
En prenant les notions de fréquence, cela doit donner à la louche dans les vingt mille Hz, et pourtant j'obtiens un joli son "A"
La technique est que je donne pas de force aux fronts pour ne donner de la force qu'à la partie qui fait apparaître le son "A"
Si vous regardez les infos construites sur un concept de fréquence, données sur la toile, vous vous apercevez que la toile déclare que c'est impossible. Alors que mon son "A" existe bien

Cordialement

Dernière modification par temps (Le 13/07/2014, à 14:25)


Parce que l'USB bootable est le support des systèmes experts,
Parce que l'USB bootable contient sa propre image au démarrage.
L'USB bootable permet de créer un monde à la dimension de son imagination
https://www.letime.net

Hors ligne

#9 Le 16/07/2014, à 00:38

temps

Re : lmajo un outil qui génère et lit les notes

Bonjour,
je viens de finir lmhjo, je vais l'ajouter bientot, et c'est ici 
La particularité c'est que je crée une forme sonore que je fais surfer. Nous retrouvons ici l'utilisation de la licorne, des forces, de l'effet mémoire et même la vinaigrette sur une note. Ce piano n'est pas très utile sous cette forme, mais est facilement modifiable pour créer la voix humaine, en exemple la note "k" en echo avec un étirement produit un joli 'A"
Toutes ces notes sont construites  avec seulement 6 fronts en boucle, donc sont très légères à écrire

En exemple pour avoir un son étiré sur la note "A", il faut faire une recherche dans le fichier MaFenêtre.cpp avec le terme

action 

,
ensuite remplacé

	durer = 1;
	laforceh = 7;
	laforceb = 14;
	action ();

par

	durer = 1;
	laforceh = 14;
	laforceb = 14;
	action ();

pour augmenter le nombre de répétition de la boucle, (le chiffre 7 je l'ai donné en hommage à la Calas qui est la reine du surf vocale avec une forme de base à seulement 7).
comme dans la boucle nous faisons une variation d'amplitude des 6 fronts, il faut aussi modifier la variation d'amplitude pour ne pas avoir de saturation et remplacer les variation de 13 par des variations de 7,
ce qui donne :

	 amplitude1 = amplitude1 + 7;
	 amplitude2 = amplitude2 - 8;
	 amplitude3 = amplitude3 + 7;
	 amplitude4 = amplitude4 - 7;
	 amplitude5 = amplitude5 + 8;
	 amplitude6 = amplitude6 - 7;

Je ne mets pas ce son en ligne, il est réservé à ceux qui crée leur propre instrument de musique et le customise en compilant l'application sous qt. Ici un son "A" langoureux de 161 ko en wav produit avec 6 fronts

Une video d'exemple de 6 fronts sans variation de durée se trouve ici

J'ai ajouté une série de piano virtuel de durées constantes à cette adresse ;
http://www.letime.net/vocale/lmmodel1jo.tar.gz
et une vidéo d'un des piano type violon ici


Cordialement

Dernière modification par temps (Le 17/07/2014, à 21:20)


Parce que l'USB bootable est le support des systèmes experts,
Parce que l'USB bootable contient sa propre image au démarrage.
L'USB bootable permet de créer un monde à la dimension de son imagination
https://www.letime.net

Hors ligne

#10 Le 21/07/2014, à 04:08

temps

Re : lmajo un outil qui génère et lit les notes

Bonjour,
Je viens d'ajouter un tutoriel qui montre comment ne pas dépasser les portes d'un son car plus nous descendons en durée moins le son a de force, pour rattraper il suffit de répéter le front pour augmenter sa force, mais une petite vidéo de présentation de lmmodel10jo. Lmmodel10jo est un piano virtuel issu de la Bibliothèque Acoustique Universelle.
Ce tutorielle montre comment jouer sur la vitesse de descente du marteau acoustique, afin que la variation de la force ne dépasse pas la porte (limite que peut atteindre une force dans un son avant de le déformer).

La vidéo montre aussi comment ouvrir le fichier .pro et compiler avec qtcreator

j'ai ajouté deux piano synthétisant des notes d'orgue octave 0 à octave 3 sans rattraper les longueurs des notes en jouant sur les variations d'amplitude, c'est ici ou en compilant lmmodel14jo et lmmodel15jo

Piano virtuel lmmodel23jo, est issu de la BAUL et chaque note s'écrit avec 16 octets. Les 26 notes présentées sont octave qui vous plaira, sous une licorne de 4 fronts. Ce piano virtuel est éducatif et me permets de montrer comment construire un son de violon, violoncelle ...
Le principe est de prendre un front de le faire suivre d'un front court, de reprendre ce front et enfin de le faire suivre d'un front long. Nous jouons avec deux états d'équilibre et hop voici le violon.
c'est ici



Cordialement

Dernière modification par temps (Le 24/07/2014, à 09:36)


Parce que l'USB bootable est le support des systèmes experts,
Parce que l'USB bootable contient sa propre image au démarrage.
L'USB bootable permet de créer un monde à la dimension de son imagination
https://www.letime.net

Hors ligne

#11 Le 27/07/2014, à 14:22

temps

Re : lmajo un outil qui génère et lit les notes

Bonjour,
Je viens d'ajouter le piano synthétiseur lmmodel32jo.
Comme tous les piano virtuel issu de la BAUL, chacune de ses notes est construites avec 16 octets seulement
La particularité de ce piano, c'est qu'il utilise la licorne, la variation de force, la vinaigrette, et le marteau incrusté

Pour entendre C'est ici sous wikimedia

Pour voir C'est ici sous wikimedia

Cordialement


Parce que l'USB bootable est le support des systèmes experts,
Parce que l'USB bootable contient sa propre image au démarrage.
L'USB bootable permet de créer un monde à la dimension de son imagination
https://www.letime.net

Hors ligne

#12 Le 04/08/2014, à 03:06

temps

Re : lmajo un outil qui génère et lit les notes

Bonjour,
J'annonce une étape importante qui vient d'être franchie, pour créer l'application, il suffit de se placer dans le répertoire téléchargé et de taper

make

dans un terminal.
La particularité de cette nouvelle version, c'est qu’elle est très légère. (dans les 30 Ko avant compilation)
C'est ici http://www.letime.net/vocale/lmfab1.tar.gz

Sur cette nouvelle base, je vais classer les synthétiseurs par forme comme dans la BAUL, et créer un fichier indiquant quelle application télécharger pour obtenir tel ou tel instrument de musique, sachant que dans cette version, nous pouvons indiqué que les valeurs des front et la forme, le reste est une constante qui peut rester. (changer d'instrument et de son avec quelques dizaines d'octets)

(j'ai repris le message pour corriger le fait que  j'avais oublié d'écrire .tar.gz à la fin du lien)

Cordialement

Dernière modification par temps (Le 04/08/2014, à 10:29)


Parce que l'USB bootable est le support des systèmes experts,
Parce que l'USB bootable contient sa propre image au démarrage.
L'USB bootable permet de créer un monde à la dimension de son imagination
https://www.letime.net

Hors ligne