Myriad Blog 1.3.0 Sunday, Jan 25th, 2015 at 09:35pm 

Dev News Wednesday, Jul 28th, 2010 at 04:52pm
Kooplet tape 58

Nous sommes revenu sur la saisie de notes au microphone dans Kooplet. Il est apparu que le problme principal rencontr par les utilisateurs tait un mauvais rglage du niveau d'amplification du microphone.Trop lev cela sature et parasite le signal, trop bas, il n'y plus assez de prcision. Nous affichons maintenant le niveau en temps rel lors de la saisie. Une fois cette assistance mise au point, nous pourrons travailler de manire plus approfondie sur la dtermination des notes.
by Didier Guillion

Dev News Tuesday, Jul 27th, 2010 at 04:54pm
Harmony, Melody et autres tape 93

 
Correction de l'dition du style des ornements textuels lorsqu'ils taient la valeur par dfaut.
Cohrence de l'ordre des portes en chargement MIDI entre Harmony et le Player.
Correction d'un problme de taille de tige en tablature guitare.
Et puis aussi, surtout, lecture de documents, des thses entre autre, propos de la synthse sonore.
Egalement, quelques essais d'utilisation d'enregistrements de chocs brefs sur le corps d'une guitare pour en extraire les composantes de la rsonance. Pour l'instant quelques rsultats prometteurs mais rien de prsentable. Demain peut tre...
by Didier Guillion

Dev News Monday, Jul 26th, 2010 at 04:44pm
Harmony, Melody et autres tape 92

Pour le traitement des documents Kooplet, correction d'un problme signal par Franck : dans les documents musicaux, les symboles de mme hauteur, relis par un coul interprt en continu sont maintenant considrs comme un seul symbole li. Il faudra bien sur attendre un recalcul de la base pour s'en rendre compte.
Correction de l'affichage du raccourci sur les touches dans le clavier virtuel.
by Didier Guillion
 1 comment.

Dev News Wednesday, Jul 21st, 2010 at 04:49pm
Kooplet tape 57

La version 0.4.0 de Kooplet a t publie. Elle propose toute la partie interface de la saisie au microphone. Si l'utilisateur n'a pas auparavant fait un click droit pour autoriser Kooplet accder au microphone, la bote de dialogue du systme est affiche.
L'extraction des frquences possibles semble oprationnelle, un embryon de recherche des notes a t implment. Bien entendu, ce n'est qu'une bauche, cela devra tre amlior.
Pour ceux que la cuisine intresse, nous utilisons une fentre glissante de 2048 octets sur laquelle nous appliquons une FFT. Un lissage triangulaire est forc sur les donnes de la fentre. A la frame suivante, nous nous dcalons de la moiti des donnes, soit 1024.
Les frames ayant une dynamique trop faible sont filtres et considres comme des silences.
Nous obtenons donc, par frame, un vecteur dcrivant les pics de frquence, sur lequel nous appliquons une nouvelle FFT. C'est l'astuce.
Ensuite, il suffit de garder les 5 pics les plus importants et les convertir en frquence puis en demi-ton.
Le reste de l'algorithme (qui reste finaliser) devient plus "intelligent", il va devoir traquer de frame en frame, les demi-tons les plus proches pour en dduire les notes.
by Didier Guillion
 7 comments.

Dev News Tuesday, Jul 20th, 2010 at 04:55pm
Kooplet tape 56

Nous sommes toujours sur la saisie des notes via un microphone. Ce n'est pas vident mais nous progressons. L'utilisateur devra cliquer sur une icne, chanter, siffler, jouer de l'harmonica, ou autre, puis arrter l'enregistrement.
Les transforms de Fourrier, crites en ActionScript, ncessitent quelques secondes de traitement donc pas de temps rel possible.  
Pour l'instant, par frame de 2048 octets sur un chantillonnage 44Khz nous extrayons 5 frquences de notes possibles. Nous passons par une FFT de FFT et les rsultats sont encourageants. Il nous reste mettre au point l'algorithme qui pourra "suivre" les notes dans la matrice de donnes.
A terme nous esprons que cela facilitera l'accs Kooplet pour les personnes qui ignorent le solfge mais sont capables de fredonner une mlodie.
Et point important sans tre essentiel, c'est trs amusant programmer...
by Didier Guillion
 2 comments.

Dev News Monday, Jul 19th, 2010 at 04:53pm
Kooplet tape 55

Comme introduit l'tape 49, nous pensons que ce serait sympa que l'on puisse siffler la squence rechercher dans un microphone.
Nous avons dcid de faire quelques essais des nouvelles fonctionnalits de Flash 10 dans le domaine des acquisitions numriques.
Nous arrivons lancer un enregistrement, obtenir les donnes numriques et y appliquer une FFT pour en extraire la frquence fondamentale.
Les bases sont poses, maintenant il faut convertir ceci en notes et l'intgrer dans l'interface si les rsultats sont satisfaisants.
Sinon, cela partira la poubelle comme 30% de ce que nous crivons...
by Didier Guillion
 6 comments.

Dev News Friday, Jul 16th, 2010 at 04:28pm
Kooplet tape 54

Plusieurs amliorations sur le plug-in de Kooplet.
Le curseur de la souris change de forme en fonction de l'objet point.
La chargement du plug-in a t visuellement acclr. Nous utilisons la mme vilaine astuce que pour l'iPhone (chut ! il ne faut pas le rpter): tout au dbut de l'initialisation de l'application nous affichons une capture cran de l'interface...
La diffrence de temps est facilement perceptible, c'est l'intervalle entre le premier affichage et celui o l'on voit la version apparatre. Nous avons gagn environ 1200 ms. Bien entendu, c'est purement psychologique, pas question de cliquer sur l'interface pendant ce petit dlai, mais l'utilisateur a juste le temps de voir les graphismes, de se reprer et de bouger la souris.
Il est maintenant possible de cliquer sur le clavier virtuel ou sur la porte sans ajouter de note afin de pouvoir simplement l'couter : il suffit  
de maintenir la touche Majuscule enfonce.
Le poids des images a t revu la baisse, et malgr la nouvelle image de l'interface nous en sommes 86 100 octets.
Sauf suggestion ou remarque particulire, nous estimons que le plug-in (actuellement v 0.3.6) rponds globalement la demande, nous allons maintenant travailler sur l'aspect de la page HTML et la rdaction de la documentation.
by Didier Guillion
 2 comments.

Dev News Tuesday, Jul 13th, 2010 at 04:42pm
Kooplet tape 52

Aujourd'hui nous nous sommes consacrs aux remarques de nos gentils visiteurs et beta testeurs.
Certaines icnes ont t redessins, et la gomme, (qui ne me plaisait pas non plus d'ailleurs) mise la poubelle, qui la remplace donc.
C'est plus clair.
On nous a signal un dcalage de frquence la quinte (mais comment il fait Sylvain, c'est un X-Men ou quoi ?) cela a t corrig.
Enfin, nous avons trouv (non sans mal) le moyen de recevoir les vnements clavier. La touche espace dmarre la musique, la touche Suppression efface la dernire note, etc.
Certaines touches (QZSEDF...) ont t assignes des hauteurs de notes. Mais l on se heurte un gros problme de conception de Flash, impossible d'obtenir un KeyCode indpendant du type de clavier. Cela marchera donc sur les claviers Franais mais pas sur les autres. A moins que nous ne trouvions une astuce.
Et d'une manire gnrale tout a t lgrement acclr en supprimant des r-affichages inutiles.
Note: Il est souvent ncessaire de vider le cache du Navigateur pour bnficier de la dernire version du plug-in. Nous en sommes 0.2.9.
by Didier Guillion
 11 comments.

Dev News Monday, Jul 12th, 2010 at 04:48pm
Kooplet tape 51

Comme promis la premire version du plug-in Flash de Kooplet a t publie. Nous sommes encore en bta bien sur, il faudra tre indulgent.
Cela ressemble ceci :

Apparemment tout fonctionne pas trop mal, il y a le son, l'interface (avec de vrais morceaux de boutons dedans) et la communication avec le JavaScript de la page HTML.
Nous obtenons un .SWF de 79 047 octets, ce qui est lger. Le cahier des charges a t respect. Chez nous, cela prends moins de deux secondes se charger.
Vous pouvez tester ici :
http://www.kooplet.com/main.html
 
Les rapports sont envoyer sur nos emails respectifs, Didier si vous tes sur Mac, Olivier pour Windows et Linux.
Maintenant, il faut tester sur toutes les plateformes en notre possession.
Nous essayons d'installer Flash 10 sur Linux et apparemment ce n'est pas simple (j'entends Oliver soupirer et se marrer en dessous), cela fera certainement l'objet d'un billet corrosif demain...
by Didier Guillion
 12 comments.

Dev News Thursday, Jul 8th, 2010 at 04:44pm
Kooplet tape 49

Maintenant que nous avons compris comment fonctionne l'affichage sous ActionScript : une collection d'objets que l'on peut tagger et manipuler envie, nous avons repris nos tracs graphiques afin de les hirarchiser et des les optimiser. Par exemple, ce n'est pas la peine de redessiner tout le clavier si une seule touche change : Il suffit d'ajouter le graphisme de la touche appuye la liste et de le supprimer quand elle est relche, facile.
Le calage des symboles musicaux a t peaufin, de petites flches montrent si on est en mode insertion de symbole ou remplacement.

Nous avons rencontr un problme trange de mise jour du plug-in sous FireFox, nous avions beau le remplacer, vider le cache, c'tait toujours l'ancienne version qui tait utilise. Nous affichons donc maintenant la version sur le plug-in.
On peut considrer que tout ce qui est graphique et ergonomie est finalis. Nous avons commenc dfinir les objets sonores qui vont permettre de jouer la musique. Nous avons bas la conception sur des objets indpendants afin de pouvoir les rutiliser si jamais nous devions crire un jour un autre plug-in Flash.
A la lecture des manuels nous avons dcouvert qu'il tait possible de faire des acquisitions de donnes numrique via le microphone.
Ce serait sympa de pouvoir siffler la mlodie plutt que de la saisir la souris, non ? Mais ceci est une autre aventure.
by Didier Guillion

Dev News Wednesday, Jul 7th, 2010 at 04:46pm
Kooplet tape 48

Quand la page web, contenant le plug-in, affiche le rsultat de la recherche, on peut demander de jouer un extrait de chacun des rsultats.
Il fallait implmenter cela dans la version Flash. Nous avons rflchi plusieurs solutions et avons retenu celle-ci : comme une instance du plug-in Flash est charge, la page HTML va l'invoquer via JavaScript pour lui demander de jouer la squence. Sur le papier, cela rduisait la taille de la page HTML et acclrait le chargement. Nous avons donc cherch comment un plug-in Flash pouvait invoquer des mthodes JavaScript avec passage de paramtres et l'inverse.
Et en fait, c'est hyper simple, cela a march du premier coup et merveille. Une fois encore "Bravo Adobe !"
Maintenant, nous cherchons un moyen de restituer la musique autrement que par une simple (moche) onde sinusodale, une fois fait, une premire bta du plug-in sera propose. C'est pour nous un genre de retour aux sources (au propre comme au figur), nous travaillons sur des problmes de restitution sonore avec contrainte de taille mmoire depuis 1984...
A noter, au passage, que thoriquement, le plug-in Flash devrait fonctionner sans problme sur Mac, Windows et... Linux.
by Didier Guillion
 3 comments.

Dev News Tuesday, Jul 6th, 2010 at 05:03pm
Kooplet tape 47

Deux jours s'arracher les cheveux sur un problme de perte de mmoire avant de comprendre que les tracs graphiques fait via "addChild" s'ajoutaient au tracs dj faits. Il nous a suffit de "taguer" les objets graphique et de les supprimer simplement avant chaque affichage. Le plug-in est maintenant propre au niveau de la gestion mmoire et c'est un grand pas en avant.
La totalit des fonctionnalits prvues dans notre cahier des charges initial est maintenant implmente et fonctionnelle, il nous reste encore tester tout cela quelques heures et nous pourrons publier une premire version.
La taille du .swf gnr est tout fait correcte : 76 677 octets, ce sera donc trs lger pour notre serveur.
Nous allons galement essayer de prvoir quelques raccourcis clavier mais pour l'instant, impossible de capturer les vnements clavier...
 
Nous en sommes l :

 
Pour rsumer, nous sommes globalement trs impressionns par la qualit et la robustesse de Flex/ActionScript/Flash, Adobe a vraiment fait un bon boulot. Les documentations en Franais, la multitude de dveloppeurs qui publient des explications et des exemples sont des cerises sur le gteau fortement apprcies. Nous comprenons maintenant le refus d'Apple de laisser tourner des applications Flash sur iPhone, ce serait une sacr concurrence l'Itune Store...
by Didier Guillion

Dev News Friday, Jul 2nd, 2010 at 04:51pm
Kooplet tape 45

 
Nous avons trouv une petite ligne dans la documentation Adobe qui explique que la communication Javascript/Flash ne fonctionne pas en mode local mais uniquement sur un serveur (problme de bac sable). Et de fait, sur notre serveur local, la page web interroge maintenant correctement le plug-in et le plug-in reoit bien ses paramtres. Ceci a t valid sur diffrents navigateurs, sur Mac et Windows.
L'dition des notes et leur reprsentation ont t cals finement.
Lorsque la note est pose, un cho est donn. On peut jouer la squence saisie. Pour l'instant c'est un simple signal sinusodal la bonne frquence, on compliquera plus tard.
Premire implmentation du clavier virtuel, visualisation des notes joues, click sur le clavier pour insrer des notes.
Le design du clavier a t entirement repris.
Tous les points essentiels ont t couverts superficiellement, maintenant, il va falloir traquer les pertes de mmoire (porosit) qui apparemment sont consquentes et ventuellement optimiser certaines parties.
Nous en sommes l :

Bon weekend, restez au frais !
by Didier Guillion


Full view
Reduced view
Most recent first
Oldest first
All
Didier Guillion
Olivier Guillion
Sylvie Ricard
All
Dev News
Technical
Mood
Memories
Myriad Life
To be seen
30 previous days
Apr 2006
May 2006
Jun 2006
Jul 2006
Aug 2006
Sep 2006
Oct 2006
Nov 2006
Dec 2006
Jan 2007
Feb 2007
Mar 2007
Apr 2007
May 2007
Jun 2007
Jul 2007
Aug 2007
Sep 2007
Oct 2007
Nov 2007
Dec 2007
Jan 2008
Feb 2008
Mar 2008
Apr 2008
May 2008
Jun 2008
Jul 2008
Aug 2008
Sep 2008
Oct 2008
Nov 2008
Dec 2008
Jan 2009
Feb 2009
Mar 2009
Apr 2009
May 2009
Jun 2009
Jul 2009
Aug 2009
Sep 2009
Oct 2009
Nov 2009
Dec 2009
Jan 2010
Feb 2010
Mar 2010
Apr 2010
May 2010
Jun 2010
Jul 2010
Aug 2010
Sep 2010
Oct 2010
Nov 2010
Dec 2010
Jan 2011
Feb 2011
Mar 2011
Apr 2011
May 2011
Jun 2011
Jul 2011
Aug 2011
Sep 2011
Oct 2011
Nov 2011
Dec 2011
Jan 2012
Feb 2012
Mar 2012
Apr 2012
May 2012
Jun 2012
Jul 2012
Aug 2012
Sep 2012
Oct 2012
Nov 2012
Dec 2012
Jan 2013
Feb 2013
Mar 2013
Apr 2013
May 2013
Jun 2013
Jul 2013
Aug 2013
Sep 2013
Oct 2013
Nov 2013
Dec 2013
Jan 2014
Feb 2014
Mar 2014
Apr 2014
May 2014
Jun 2014
Jul 2014
Aug 2014
Sep 2014
Oct 2014
Nov 2014
Dec 2014
Jan 2015
Jan 23rd, 2015 at 04:53pm 
Article from Didier Guillion
ACAM sur Mac tape 18
Jan 22nd, 2015 at 04:53pm 
Article from Olivier Guillion
Acam Winter tape 32
Jan 21st, 2015 at 04:54pm 
Article from Didier Guillion
ACAM sur Mac tape 17
Jan 20th, 2015 at 04:58pm 
Article from Olivier Guillion
Acam Winter tape 31
Jan 19th, 2015 at 04:55pm 
Article from Didier Guillion
ACAM sur Mac tape 16
Jan 16th, 2015 at 05:49pm 
Comment from dheo
Keyboard Input
Jan 16th, 2015 at 05:49pm 
Comment from dheo
Keyboard Input
Jan 16th, 2015 at 05:49pm 
Comment from dheo
Keyboard Input
Jan 16th, 2015 at 05:49pm 
Comment from dheo
Keyboard Input
Jan 16th, 2015 at 05:49pm 
Comment from dheo
Keyboard Input

Top of page
Last update:  (c) Myriad