Page 9 sur 11

Publié : mer. 22/sept./2004 11:43
par Jacobus
:D Raah oui, une sorte de petit programmateur dans lequel tu entres ce que tu veux et qui te le ressort, c'est ça ce à quoi tu penses ?

Si oui, Y a bon banania !! :D

Publié : mer. 22/sept./2004 14:26
par Oliv
plus ou moins oui

Publié : mer. 22/sept./2004 21:35
par Oliv
Voilà les devoirs étant conséquents jusqu'a lundi je n'ai pas eu le temps de fiare tout ce que je voulais, enfin j'ai fait la mélodie de Jacobus suaf la touche "%" car je ne sais pas comment l'émuler mais je vais faire ça à la souris comme ça pas de problèmes :mrgreen: . J'ai utilisé l'icone lecture et enregistrement de soundeditor :oops: :P
http://perso.wanadoo.fr/pav-3dgc-origami/Mon Piano.rar (395Ko)

Publié : jeu. 23/sept./2004 14:47
par Jacobus
@Oliv, ton lien n'est pas entier (Mon piano.rar a été omis )
faire un copier/coller du tout et ça marche

J'ai essayé ton émule et je trouve le départ intéressant.
Quelques défauts cependant :
La trop grande vitesse du jeu, on croirait speedy gonzales au piano :D
Le blème causé par la touche % et les autres que l'on ne peut reprendre, j'ai essayé aussi de plusieurs façons en vain. Une astuce seulement pour y parvenir lorsqu'il n'y a qu'une touche de ce type, c'est de remplacer la constante (de la touche 23) par #VK_space. puis avant de lancer la mélodie par ton bouton play, de taper au clavier sur % et seulement à ce moment lancer la mélodie, la touche space remplace alors %. #aieaieaie
c'est pas terrible comme soluce de rechange.

Du coup, afin d'obtenir quelque chose de plus concluant je suis retourné au code initial (avant amaigrissement par Dobro et Zapman :mrgreen: )

et j'ai réussi à obtenir la mélodie désirée en procédant ainsi :

Code : Tout sélectionner

Case 9
        PlaySound(#son_15,0):Delay(400) ;sans delay c'est même pas la peine
        StopSound(#son_15) ; évite la cacophonie
        PlaySound(#son_17,0):Delay(400)
        StopSound(#son_17)
        PlaySound(#son_18,0):Delay(400)
        StopSound(#son_18)
        PlaySound(#son_17,0):Delay(400)
        StopSound(#son_17)
        PlaySound(#son_18,0):Delay(400)
        StopSound(#son_18)
        PlaySound(#son_22,0):Delay(1000)
        StopSound(#son_22)
        
        PlaySound(#son_15,0):Delay(400)
        StopSound(#son_15)
        PlaySound(#son_17,0):Delay(400)
        StopSound(#son_17)
        PlaySound(#son_18,0):Delay(400)
        StopSound(#son_18)
        PlaySound(#son_17,0):Delay(400)
        StopSound(#son_17)
        PlaySound(#son_18,0):Delay(400)
        StopSound(#son_18)
        PlaySound(#son_22,0):Delay(1000)
        StopSound(#son_22)
        
        PlaySound(#son_18,0):Delay(400)
        StopSound(#son_18)
        PlaySound(#son_17,0):Delay(400)
        StopSound(#son_17)
        PlaySound(#son_15,0):Delay(400)
        StopSound(#son_15)
        PlaySound(#son_17,0):Delay(400)
        StopSound(#son_17)
        PlaySound(#son_18,0):Delay(400)
        StopSound(#son_18)
        PlaySound(#son_20,0):Delay(1000)
        StopSound(#son_20)
        
        PlaySound(#son_20,0):Delay(400)
        StopSound(#son_20)
        PlaySound(#son_22,0):Delay(400)
        StopSound(#son_22)
        PlaySound(#son_23,0):Delay(400)
        StopSound(#son_23)
        PlaySound(#son_22,0):Delay(400)
        StopSound(#son_22)
        PlaySound(#son_23,0):Delay(400)
        StopSound(#son_23)
        PlaySound(#son_27,0):Delay(1000)
        StopSound(#son_27)
        
        PlaySound(#son_20,0):Delay(400)
        StopSound(#son_20)
        PlaySound(#son_22,0):Delay(400)
        StopSound(#son_22)
        PlaySound(#son_23,0):Delay(400)
        StopSound(#son_23)
        PlaySound(#son_22,0):Delay(400)
        StopSound(#son_22)
        PlaySound(#son_23,0):Delay(400)
        StopSound(#son_23)
        PlaySound(#son_26,0):Delay(1000)
        StopSound(#son_26)
        
        PlaySound(#son_23,0):Delay(400)
        StopSound(#son_23)
        PlaySound(#son_22,0):Delay(400)
        StopSound(#son_22)
        PlaySound(#son_20,0):Delay(400)
        StopSound(#son_20)
        PlaySound(#son_22,0):Delay(400)
        StopSound(#son_22)
        PlaySound(#son_23,0):Delay(400)
        StopSound(#son_23)
        PlaySound(#son_25,0)
Mais bon là on retombe dans la lourdeur d'un code à rallonge donc pas génial. :?
le combat continu...
@+ jacobus

Publié : jeu. 23/sept./2004 15:52
par ZapMan
Chaud devant, les enfants !

Mon Piano joue maintenant ses sons avec DirectX 8.
Résultat :
- plus de "clacs"
- son polyphonique
- le son s'etteint progressivement quand on relache la touche
- mon "glissando"
- une fonction "pitch" (avec la roue de la souris)

J'ai du réécrire le début de programme d'Oliv en fonction des modifs.

Je trouve que le résultat est formidable ! Vous m'en direz des nouvelles :

http://www.freesoundeditor.com/download ... npiano.zip

Publié : jeu. 23/sept./2004 17:28
par Oliv
Jacobus je sais mais t'as pas précisé le temps et même si je connais l'air et que j'apprécie, je ne peux pas le deviner :oops: :oops: . sinon j'aibie vu que la gestion est foireuse, c'est pour ça que je vais passer par la souris et là se sera grandiose 8) 8) (même chevilles ne gonflent presqeu pas... :roll: )

Publié : jeu. 23/sept./2004 18:13
par Backup
Genial le piano zapman !!

manque plus que la gestion midi !!

problem quand mem !! : il ne me charge que les 2 premieres bank de sons !!

(accordeon , banjo ) pis c'est tout !! :?

Publié : jeu. 23/sept./2004 21:57
par ZapMan
Dobro a écrit :problem quand mem !! : il ne me charge que les 2 premieres bank de sons !!
Monsieur est encore distrait ?? Regarde le code (qui vient en bonne partie de toi, je crois), et tu verras que s'il charge les 2 premières, il chargera forcément les autres. La seule explication c'est que tes banques ne sont pas bien rangées dans ton dossier "BANKS".
Dobro a écrit :manque plus que la gestion midi !!
Pour sûr ! Mais j'ai pas d'interface pour faire des tests. Va falloir que tu t'y colle, si t'en a une. Ca doit pas être compliqué, je crois qu'il y a des exemples qui traînent un peu partout.
Oliv a écrit : j'ai bien vu que la gestion est foireuse, c'est pour ça que je vais passer par la souris et là ce sera grandiose 8) 8)
Je trouve ça quand même bien compliqué et propice à engendrer des difficultés pour le moins regrettables. Pourquoi ne pas enregistrer les notes sous leur nom (Sol_1, Fa_2, etc...) ??? Il suffit ensuite de parcourir le tableau Notes pour retrouver la correspondance et jouer le son ! Je sais que j'arrive assez bien à me prendre le choux pour rien, mais là, franchement, vous êtes trop forts !! J'ai bien connu un bateau qui était comme ça : une fois qu'il était parti dans une direction, c'était vachement dur de le faire changer. Y z ont fait 2 films sur lui : Speed 2Mes2 et TitaNiqueTaMerDuNord, et on voit bien les inconvénients potentiels de ce type d'attitude. Faites gaffe, quand même.

Pour revenir à mon idée, tu peux gérer des chaines qui ressemble à ça :
"NomDeLaNote|HeureDépart|Durée|". Au moment de la jouer, tu sépare ces 3 paramètres avec StringField et tu balance la note au bon moment avec la bonne durée. C'est d'ailleurs sous cette forme que le partitioneur de Jacobus devrait enregistrer. En fait, le problème revient simplement à terminer le partitioneur pour qu'il rejoue ce qu'il a enregistré.

Publié : jeu. 23/sept./2004 22:21
par Backup
Dobro a écrit:
problem quand mem !! : il ne me charge que les 2 premieres bank de sons !!

Monsieur est encore distrait ?? Regarde le code (qui vient en bonne partie de toi, je crois), et tu verras que s'il charge les 2 premières, il chargera forcément les autres. La seule explication c'est que tes banques ne sont pas bien rangées dans ton dossier "BANKS".

je regrette j'ai copié toutes mes bank dans ton dossier Banks
et il charge que les 2 premieres !!
:?


Arg !! je viens de m'apercevoir qu'il trainait un fichier en dehors des dossier de sons !!!
un fichier *.ace present dans le dossier Banks suffit a empecher le chargement de toutes les banks !!!! etonnant quand meme !!
:lol: :lol:

Publié : jeu. 23/sept./2004 22:28
par ZapMan
Arg !!

Publié : jeu. 23/sept./2004 23:07
par Jacobus
Arg !! :?
Je crois que t'as raison, la prise de tête est partie dans le mauvais sens.
En fait, le problème revient simplement à terminer le partitioneur pour qu'il rejoue ce qu'il a enregistré.
je vais tâcher d'y passer un peu de temps dessus.

J'ai repris ta dernière mouture et j'avoue qu'elle est extra
Je serais bien incapable d'en faire autant et ce piano est bien celui de SE

Ce soir j'ai apporté quelques rectifications au code pour optimiser l'interface et permettre l'ajout d'autre fonctions ( un peu de place quoi)
j'ai réparé un petit bug (une bêtise à moi :? ) qui faisait disparaître le compteur de touches frappées en cliquant sur CLEAR ou sur COUNT
J'ai aussi rectifié les onglets, ben ouaip, z'étaient plus à jour 8)
et puis j'ai changé les touches (bmp) par celles faites par Dobro, en relief.

Donc voilà, je t'envoie le zip de mes corrections auquel j'ai ajouté une banque sons Bruitages_fx

@+ Jacobus :wink:

Publié : ven. 24/sept./2004 4:10
par ZapMan
Cool !
Jacobus a écrit :Ce soir j'ai apporté quelques rectifications au code pour optimiser l'interface et permettre l'ajout d'autre fonctions (un peu de place quoi)
Un truc qui me chiffone depuis le début, c'est cette double rangée de notes. As-tu décidé d'afficher tes progress bars directement sur le clavier du haut ? Ca serait bien : le partitioneur, une fois terminé, devrait occuper pas mal de place. ça serait bien d'en libérer au maximum.

Publié : ven. 24/sept./2004 6:40
par Oliv
Pourquoi ? Mais tout simplement car on m'as demandé de faire la gestion à la souris :lol: . Bon bah je retourne aux plug-in VST moi :?

Publié : ven. 24/sept./2004 9:10
par Jacobus
:D Salut

Oui Oliv, c'est vrai que les VST sont plus importants mais j'espère que tu ne perdras pas de vue la gestion d'une mélodie à la souris, je suis persuadé que ça pourra être une option supplémentaire intéressante.

@ZapMan
Oui en effet l'optimisation reste à continuer et une simple case (progressbar) au dessus des touches devrait suffire pour matèrialiser la frappe. C'est le genre de chose qui reste à ma portée, donc ce sera fait très prochainement.
Une chose que j'ai remarqué sur le Pitch, quoi que je fasse il affiche toujours 0. Aucune fréquence n'est affichée.
Est-ce encore dû à ma configuration à la gomme ou j'ai pas tout compris ?

Je t'ai renvoyé les images ( 3 gifs ) de ce que j'obtiens avec SE20c

@+ jacobus

Publié : ven. 24/sept./2004 12:35
par ZapMan
Le pitch réagit à ta roue de souris.

Je me demande si Dobro ne se sentirait pas en forme pour nous redessiner les touches noires et blanches en version "enfoncée". Ca pourrait remplacer les progressbars pour indiquer quelle touche est jouée. Ca serait superclass, non ?