Myriad Blog 1.3.0 Tuesday, Feb 9th, 2010 at 03:28pm 

Dev News Monday, Feb 8th, 2010 at 04:57pm
Harmony 9.5 et autre étape 33

 
Aujourd'hui :
Correction de la gestion des caractères "espace" dans PDFtoMusic.
Correction de la sélection de notes en tablatures prioritaires dans Harmony.
 
Mais aussi :
Nous nous sommes enfin mis d'accord pour le nom de notre système de recherche, nous allons déposer un nom de site et une fois que ce sera fait, nous pourrons en parler...
by Didier Guillion
 Leave a comment.

Dev News Friday, Feb 5th, 2010 at 04:40pm
Recherche de séquence mélodique, étape 14

 
Nous avons réussi à mettre en place la communication entre le plug-in et la page Web qui l'accueille.  
Ceci permet de récupérer, la séquence à rechercher lorsque l'utilisateur clique le bouton "Rechercher" de la page.  Ce n'est donc plus le plug-in qui demande la recherche, nous autorisant une plus grande flexibilité et des mises à jour faciles.
 
Malheureusement, si la méthode employée fonctionne sur tous les navigateurs Mac, et, sous Windows, sur Firefox, Opera, etc, elle ne fonctionne pas -qui l'eût cru- sur Internet Explorer.
 
Sur Internet explorer en effet, les plug-ins sont des "objets ActiveX", technologie privée de chez Microsoft. Nous avions donc il y a quelque temps, créé un petit objet ActiveX servant de passerelle vers notre plug-in. Mais cet objet ne permet pas les fonctions avancées de contrôle du plug-in par la page Web. Nous essayons donc de mettre en place une communication entre l'objet ActiveX et la page Web, pour ensuite relayer ces communications vers le plug-in.
Et c'est vraiment "galère"...
by Olivier Guillion
 2 comments.

Dev News Thursday, Feb 4th, 2010 at 05:00pm
Recherche de séquence mélodique, étape 13

La journée a été passée à essayer de trouver une solution au problème rencontré à l'étape 12. Apparemment notre questionnement était légitime puisque la fondation Mozilla a implémenté en 2004 un jeu de nouvelles fonctions qui permettent par exemple d'interroger un plug-in en JavaScript. Nous l'avons testé sur Mac (Safari et FireFox) et cela fonctionne. La partie PC est en cours.
Donc, voici comment cela va être mis en place : l'utilisateur définit par exemple une séquence de notes dans le plugin, et clique sur un bouton de la page web. Un code JavaScript est lancé qui demande au plugin son état actuel et construit la requête sous forme d'une URL, envoyée à notre serveur.
A noter que l'inverse était également possible : le plugin pourrait interroger les différents objets de la page web pour connaître leurs valeurs. Mais la solution choisie est plus simple, ajouter une nouvelle option de recherche ne demande qu'à modifier la page web sans avoir à publier une nouvelle version du plugin.
by Didier Guillion
 Leave a comment.

Dev News Wednesday, Feb 3rd, 2010 at 04:59pm
Recherche de séquence mélodique, étape 12

Bon, là, nous sommes tombés sur un os dans le pâté...  
Rappelons que les bases de données que nous créons contiennent non seulement les notes mais aussi plein d'autres informations comme les annotations, les paroles, les instruments, etc.
Nous voudrions que l'utilisateur puisse lancer une recherche via une requête du genre : telle séquence de note, mais uniquement dans les musiques contenant le mot "Bach".
Concrètement, nous nous trouvons avec une page HTML où le plugin permet de saisir la séquence et un champs texte d'entrer les mots à rechercher. Comment envoyer ces deux types d'informations simultanément au script de recherche ? Le plugin peut il accéder au texte saisi ? Une routine Javascript peut elle interroger le plugin ?
Pour l'instant nous pataugeons allègrement dans différentes solutions qui sont soit obsolètes, soit non compatibles entre les différents navigateurs. Il va falloir ruser.
by Didier Guillion
 2 comments.

Dev News Tuesday, Feb 2nd, 2010 at 04:44pm
Recherche de séquence mélodique, étape 11

 
Le robot a tourné pendant 24 heures, et a collecté jusqu'ici environ 15000 fichiers musicaux, contenant 80000 portées.
 
La base de donnée prend rapidement de l'ampleur (250 Mo), et il faudra que nous trouvions un moyen de la réduire sans pénaliser la rapidité de recherche.
Pour l'instant, les résultats de recherche donnent ce type de renseignements (la présentation n'est pas définitive):
 
 
On a donc, pour chaque fichier:
- La pertinence. Plus le nombre est élevé, plus le résultat trouvé est conforme à ce que l'on cherchait
- Le type de fichier et son nom ou titre
- Si disponible, le nom du compositeur  
- Si disponibles, les remarques
- Le numéro et le nom de la portée dans laquelle la séquence a été trouvée, le numéro de mesure, et un petit bouton pour jouer la séquence trouvée
- La page d'origine qui présente le fichier
 
by Olivier Guillion
 Leave a comment.

Dev News Monday, Feb 1st, 2010 at 04:56pm
Recherche de séquence mélodique, étape 10

 
Ce week-end nous avons lancé notre "crawler" sur une liste de sites, espérant trouver une belle base de donnée ce matin. Las, il a planté dans la nuit de Vendredi. Nous avons corrigé le problème et allons le relancer cette nuit.  
Le coté plug-in commence a être bien au point. Dans nos cartons nous avons des idées pour améliorer la saisie. En effet, certaines personnes, ne connaissant pas le solfège serons peut être rebutées par l'entrée de notes, bien qu'il soit possible d'écouter la séquence.
Pourquoi ne pas imaginer qu'en mode recherche de rythme, on puisse tapoter la barre d'espace pour définir la séquence ?
Ou qu'en mode recherche de fréquence, on siffle la mélodie à rechercher dans le microphone ?  
by Didier Guillion
 4 comments.

Dev News Friday, Jan 29th, 2010 at 04:59pm
Harmony 9.5 et autre étape 32

 
Certains harmonicas (surtout des chromatiques) numérotent de manière particulière les premiers trous; Au lieu d'avoir 1,2,3,4,5,6,7 etc c'est 1',2',3',4',1,2,3 qui est utilisé. Dans la définition de l'harmonica on peut maintenant définir à quel trou la numérotation redémarre à 1.
Aussi, correction du gel des notes en tablature harmonica non prioritaire.
 
La version "recherche" du plug-in a été améliorée : trois modes de recherche sont maintenant possibles. Recherche des fréquences sans tenir compte des durées, recherche des durées sans tenir compte des fréquences, ou les deux combinés.
 
Voici par exemple la saisie d'une recherche rythmique :
 

 
Ce week end, nous allons laisser tourner le crawler sur des sites amis afin de créer une bonne base de donnée qui permettra de valider nos recherches et de peaufiner l'affichage des résultats.
by Didier Guillion
 Leave a comment.

Dev News Thursday, Jan 28th, 2010 at 04:46pm
Recherche de séquence mélodique (Partie 9)
 
 
 Le robot d'indexation (crawler) a été amélioré, et gère maintenant correctement la navigation en mode "utilisateur enregistré", necessaire pour balayer le site cpdl.org.
 
Nous avons résolu quelques problèmes rencontrés au fur et à mesure. Par exemple, le robot allait exporer le lien "logout", ce qui le désenregistrait du site.  
Autre cas, celui d'une page dynamique qui contient un lien sur elle-même auquel a été ajouté un paramètre. Par exemple, la page /dossier/test qui pointe sur /dossier/test?param=1 qui pointe sur /dossier/test?param=1&param=1 qui pointe sur /dossier/test?param=1&param=1&param=1, etc.
Le robot ne peut pas comprendre qu'il s'agit de la même page cer l'adresse est différente et le contenu aussi.  
 
Nous avons résolu ce problème de boucle en limitant le nombre de liens successifs depuis la page d'accueil. On peut considérer que s'il faut plus de 20 clics pour arriver à une page, celle-ci n'a que peu d'intérêt...
 
Nous avons fait tourner le système une nuit entière, et il a collecté sans erreur quelques milliers de fichiers divers. Mais lorsque la liste de pages à explorer devient importante, le programme commence à consommer un peu trop de puissance processeur, aussi l'avons-nous aujourd'hui réécrit en quasi-totalité pour optimiser la bête, et rendre tout cela plus propre.  
Une nouvelle version du robot devrait donc pouvoir tourner ce week-end.
by Olivier Guillion
 1 comment.

Dev News Wednesday, Jan 27th, 2010 at 04:58pm
Harmony 9.5 étape 31

 
Sur une guitare, il est possible de produire une même note à différentes positions du manche. C'est pour cela que le click droit sur la notation en tablature permet de demander au logiciel de localiser la possibilité suivante et de l'appliquer.
Sur certains harmonicas et en particulier les chromatiques, c'est la même chose. Une fonctionnalité identique a donc été implementée.
Mais aussi :
La matérialisation de l'aire utile dans le papier ne s'affiche plus que si les taquets sont actifs.
Correction de l'import Encore
by Didier Guillion
 Leave a comment.

Dev News Tuesday, Jan 26th, 2010 at 05:12pm
Recherche de séquence mélodique ? (Partie 8)

 
Nous avons reçu un accord de principe, encore à confirmer officiellement, nous permettant d'indexer les partitions du CPDL.
 
Cependant, il s'agit d'un site de type Wikimedia, pour lequel les visiteurs sont redirigés vers deux sites miroirs, interdits aux robots.
 
Nous avons donc créé un compte d'utilisateur pour le robot, permettant de parcourir le site original. Mais cela nécessite que le robot soit enregistré, donc gère les "cookies" d'autentification. Pas facile.  
 
Pour l'instant, nos essais ne sont guère concluants, le site considérant que le robot est un simple visiteur malgré les cookies.  
Mais on s'accroche...
by Olivier Guillion
 2 comments.

Dev News Monday, Jan 25th, 2010 at 04:56pm
Recherche de séquence mélodique ? (Partie 7)  

Aujourd'hui nous avons implémenté le module d'analyse de documents PDF dans PDFtoMusic. Le crawler balaye le Net à la recherche de fichier PDF, PDFtoMusic interroge le serveur, reçoit un fichier et en extrait le code Parson qui permettra de faire des recherches, puis le fichier PDF est effacé.
Au fil des années, le nombre de formats de fichiers musicaux reconnus par nos programmes est devenu plutôt imposant : MID, KAR, ABC au début, puis TAB, Finale, Encore, NWC et depuis PDFtoMusic les PDF. Nous espérons que ce sera un plus qui donnera des recherches fiables.
Il nous tarde d'avoir assez de partitions dans la base pour tester le système en vrai grandeur car ce qui nous fait peur ce sont les "faux positifs" : quand la recherche donne trop de résultats et que cela devient inexploitable.
by Didier Guillion
 4 comments.

Dev News Friday, Jan 22nd, 2010 at 05:18pm
Recherche de séquence mélodique ? (Partie 6)

 
Le "crawler" a récupéré un petit milliers de fichiers sur internet.
 
Une fonction spéciale dans notre version de développement d'Harmony Assistant a ensuite traité ces fichiers (à distance, par une connexion Internet) afin de calculer les données permettant une recherche mélodique sur ceux-ci.
 
Ensuite, sur une page Web pour l'instant disponible uniquement localement, le plug-in a été utilisé pour entrer une séquence à rechercher.  
Dans le résultat des recherches, le même plug-in permet de jouer la séquence correspondante telle que trouvée dans le fichier.
 
Donc le principe est en place, et fonctionne. Maintenant, nous allons essayer d'améliorer le "crawler", afin qu'il prenne en compte les restrictions d'accès spécifiques définies par chaque serveur Web.  
 
Il semblerait que quelques sites majeurs d'archives de partitions libres de droit aient demandé à ne pas être visités par les robots d'indexation. Ceci nous empêche déontologiquement de traiter leurs fichiers et donc de les proposer dans les résultats de nos recherches. Nous essayons de prendre contact avec les responsables de ces sites afin d'obtenir une dérogation.
by Olivier Guillion

Dev News Thursday, Jan 21st, 2010 at 04:56pm
Concours SATB épisode 3

 
Voilà déjà neuf ans que les participants au Concours Amical nous régalent de leurs créations. Dès le départ nous avons imposé comme règle que le gagnant d'une session ferait partie du jury des prochaines (bonne idée car cela étoffe le nombre de membres du jury) et que donc ils ne pourraient participer à nouveau. C'est là que le bât blesse. Nous envisageons donc d'ouvrir un peu la porte aux anciens gagnants et de les laisser soumettre leur création. Bien entendu, ils ne feraient plus partie du jury pour la session. La décision sera débattue dans les jours qui viennent et si elle est validée, le règlement sera modifié en conséquence.
by Didier Guillion
 6 comments.

Dev News Wednesday, Jan 20th, 2010 at 05:17pm
Recherche de séquence mélodique ? (Partie 5)  

 
Tout est en place, nous essayons maintenant de rendre un peu plus propres les différentes étapes du processus.
 
Nous avons défini les informations intéressantes devant être extraites des fichiers musicaux (titre, textes, notes et durées, etc) et sur lesquelles des recherches pourront être lancées.
 
Le "crawler" a été testé sur des sites autres que le MUSL, et Harmony Assistant a été modifié pour permettre de calculer les données codées permettant la recherche sur les fichiers trouvés. Il nous sera ensuite facile de permettre à des utilisateurs extérieurs de participer à la constitution de la base de données de recherche.
 
Enfin, la recherche a été améliorée, avec un nouveau calcul de durées relatives pour la partie rythmique.
 
Prochaine étape, récuperer un bon milliers de fichiers, les entrer dans la base, puis effectuer des recherches dessus.  
 
Un 2e mode de fonctionnement spécial du plug-in permettra, dans la page des résultats de la recherche, de jouer la séquence trouvée dans chaque fichier. Le plug-in sera alors réduit à un simple bouton "play".
by Olivier Guillion
 2 comments.

Dev News Tuesday, Jan 19th, 2010 at 04:57pm
Recherche de séquence mélodique ? (Partie 4)  

La recherche de séquence mélodique suppose de pouvoir saisir une séquence de notes, c'est au Myriad Music Plug-In que la tâche sera confiée.
Un nouveau mode de fonctionnement présente les notes en ignorant pour l'instant leur durée.
Pour ajouter une note, on peut soit cliquer sur la portée, soit cliquer sur un petit clavier.

Des icônes permettent de jouer la séquence, l'effacer et lancer la recherche.
C'est assez rudimentaire pour l'instant mais rempli déjà bien une grande partie de la demande.
by Didier Guillion
 1 comment.

Dev News Monday, Jan 18th, 2010 at 04:54pm
Recherche de séquence mélodique ? (Partie 3)

 
Le système de recherche mélodique s'articulerait autour de 3 modules principaux :
 
1- Le "crawler". Ce programme balaie en permanence le contenu des serveurs Web. Il recherche, dans les pages HTML, les liens vers d'autres pages et vers les fichiers musicaux.  
Les fichiers musicaux sont pré-traités et stockés dans un dossier temporaire, et les adresses des autres pages sont ajoutées le cas échéant à la liste des pages à traiter.  
C'est ici qu'on règle la "portée" de l'indexation en éliminant ou en traitant les liens vers les sites extérieurs.
 
2- Le traitement des fichiers musicaux. Ce programme récupère un à un les fichiers musicaux pré-traités issus de l'étape 1, et en extrait des séquences musicales permettant une recherche (code Parsons et autre). Le résultat de ce traitement est inscrit dans une base de données. Ceci est fait par Harmony Assistant (version spéciale ou script dédié).
 
3- La recherche :  A partir de la séquence entrée par l'utilisateur, balaie la base de données et fournit les résultats de la recherche, classés par pertinence.
 
 
Si la 3e étape est nécessairement réalisée par notre serveur Web, nous réfléchissons à des systèmes qui permettraient de distribuer la charge de travail du point 2. et éventuellement 1. à des utilisateurs consentants.  
 
Pour le point 2. (traitement des fichiers musicaux), il n'y a pas de problème technique ou légal. Le fichier musical lisible ne transiterait jamais sur le réseau, et l'utilisateur ne saurait pas quel fichier il traite et n'aurait pas accès au détail des données.
 
Pour le point 1. ("crawler"), c'est plus compliqué. Si le travail est distribué parmi les utilisateurs, cela ne pourrait se faire que parmi un petit groupe de personnes de confiance. En effet, si l'ensemble du Web était balayé, le programme pourrait faire accès à des sites illégaux, ces accès étant inscrits dans les fichiers-journaux de l'utilisateur ou de son fournisseur d'accès. Nous préférons donc dans un premier temps nous occuper de cette partie nous-même.
by Olivier Guillion

Dev News Friday, Jan 15th, 2010 at 05:01pm
Concours SATB épisode 2

 
Le 23ème Concours s'annonce difficile mais passionnant !
Notre objectif était de "dé-virtualiser" la création musicale et de rapprocher les compositeurs et les interprètes.
Rappelons que le thème est de créer une oeuvre vocale soprano-alto-ténor-basse qui sera interprétée pour de vrai. Nous espérons pouvoir filmer et enregistrer l'évènement pour le diffuser ensuite sur l'Internet.
Des contacts ont été pris (en fait une grande partie de nos utilisateurs pratique le chant choral) et aujourd'hui, nous avons reçu une réponse positive et enthousiaste d'une sympathique chorale de notre région.
Quelques détails pratiques restent à régler, mais c'est très bien engagé.
Bien entendu, la chorale fera partie du jury et son vote sera compté double.
Maintenant, compositeurs, à vos souris !
by Didier Guillion
 4 comments.

Dev News Thursday, Jan 14th, 2010 at 05:13pm
Recherche de séquence mélodique ? (Partie 2)

 
Nous sommes en train de mettre en place des versions spartiates du système de balayage de sites et de conversion des partitions en code permettant les recherches mélodiques.
 
Outre la mélodie, il devrait également être possible d'effectuer des recherches textuelles sur toutes les informations contenues dans le fichier : commentaires, titre et compositeur, paroles, et pourquoi pas la grille d'accord si celle-ci est disponible. Cela permettrait ainsi de rechercher rapidement toutes les versions d'un morceau connu (ex Chaconne de Bach), dans tous les formats de fichiers reconnus par nos logiciels (MIDI, KAR, MUS, MYR, ENC, ABC, TAB, RHP, MOD, etc, etc, y compris en PDF).
 
Reste le problème de l'étendue de la recherche.  
 
Pour les fichiers de MUSL, aucun problème ni technique ni juridique.  
 
Etendre la recherche à un pannel de sites connus, qui autorisent les moteurs d'indexation et qui proposent des partitions libres de droit, nous ne voyons pas de problème non plus.
 
Reste la possibilité d'étendre la recherche au contenu complet d'Internet. Techniquement, cela peut poser des problèmes de stockage, mais ça, c'est notre problème. Légalement, on pourrait nous reprocher de proposer des liens vers des contenus illégaux.  Pourtant, le rapprochement avec Google paraitrait naturel. Il ne s'agirait ni plus ni moins qu'un Google qui traiterait la musique au lieu de traiter les textes. Mais il arrive que ce qui paraît évident au technicien échappe au juriste.  
 
S'il est incontestable qu'un accès centralisé à toutes les sources de partitions musicales en ligne pourrait être d'une grande utilité à de nombreuses personnes, cela vaut-il la peine de prendre un risque sur le plan juridique?
 
Nous nous interrogeons. Vraiment.
by Olivier Guillion
 12 comments.

Dev News Wednesday, Jan 13th, 2010 at 05:10pm
Recherche de séquence mélodique ? (Partie 1)

 
Nous y avions réfléchi, Sylvain a relancé l'idée. Le site musipedia ainsi que les recherches personnelles de Sylvain nous ont convaincu de son intérêt.
 
Voila de quoi il s'agit : de la même manière qu'un moteur de recherche permet de retrouver les textes contenant une certaine séquence de mots, une recherche mélodique permet de retrouver les partitions qui contiennent une certaine séquence de notes, ou une séquence approchante.
 
Une recherche de séquence existe déjà dans Harmony Assistant, mais elle ne permet de rechercher que dans les fichiers présents sur le disque dur de l'utilisateur.
Nous nous étions alors dit que ce serait intéressant de permettre une telle recherche dans  MUSL, mais nous n'avions pas trouvé le moyen de faire entrer facilement à l'utilisateur la séquence à chercher. Nous hésitions à aborder le Flash ou le Java juste pour ça, et le HTML ou le Perl ne nous étaient d'aucun secours.  
Puis Didier a eu L'idée : les visiteurs du MUSL ont tous le plug-in installé. Pourquoi alors ne pas prévoir un mode spécial dans le plug-in qui  présenterait un dessin de clavier et une portée simple, et qui permettrait à l'utilisateur d'entrer sa séquence?
 
Ensuite, un module de recherche en Perl irait comparer la séquence ainsi entrée avec la signature mélodique de chaque fichier du MUSL (par exemple, basé sur le code Parsons), et les résultats présentés par ordre décroissant de pertinence.
 
Tout à fait faisable.  Puis nous avons continué à réfléchir, et à nous demander ce qui nous empêcherait d'étendre cette recherche à quelques autres sites proposant des musiques libres de droit. Ou, pourquoi pas, à l'intégralité des partitions, en n'importe quel format, PDF compris, qu'on peut trouver sur Internet ? N'est-ce pas ce que fait Google avec les textes et les images ?
 
Mais cela implique quelques interrogations d'ordre moral, légal (copyright), et techniques que nous exposerons dans le prochain billet. La saga risque d'être longue.
by Olivier Guillion
 7 comments.

Dev News Tuesday, Jan 12th, 2010 at 05:04pm
Harmony 9.5 étape 30

 
Principalement deux corrections aujourd'hui :
 
- Problème de désynchronisation de Virtual Singer dans les mélismes (syllabe prolongée sur plusieurs notes) lorsque les notes avaient une durée d'appui inférieure à 100%.
Désormais, la durée d'appui de ces notes sera ignorée, sinon Virtual Singer n'a pas de moyen de chanter le passage convenablement.
 
- Dans "Fichier > Nouveau", le "dernier modèle choisi" ne fonctionnait pas correctement si la préférence générale "Sauve > Proposer l'extension par défaut .myr au lieu de .mus" était désactivée.
 
by Olivier Guillion

Dev News Monday, Jan 11th, 2010 at 04:59pm
Harmony 9.5 étape 29

 
Aujourd'hui, c'est comme un Lundi, on traite les emails en attente, accumulés durant le week end.
Mais aussi, quelques améliorations :
Lorsque l'échelle de la portée est changée, les nuances sont repositionnées en fonction.
Recentrage du symbole "répéter mesure précédente"
by Didier Guillion


Full view
Reduced view
Most recent first
Oldest first
All
Didier Guillion
Olivier Guillion
Sylvie Ricard
All
Dev News
Technical
Humor
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
Feb 8th, 2010 at 04:57pm 
Article from Didier Guillion
Harmony 9.5 et autre étape 33
Feb 7th, 2010 at 12:18am 
Comment from Pascal
Feb 5th, 2010 at 05:47pm 
Comment from Lbob
Feb 5th, 2010 at 05:47pm 
Comment from Lbob
Feb 5th, 2010 at 04:40pm 
Article from Olivier Guillion
Recherche de séquence mélodique, étape 14
Feb 4th, 2010 at 05:00pm 
Article from Didier Guillion
Recherche de séquence mélodique, étape 13
Feb 4th, 2010 at 06:45am 
Comment from Sylvain Machefert
refaire la saisie de notes en JavaScript ?
Feb 3rd, 2010 at 08:18pm 
Comment from Kedekero
Passage d'arguments ?
Feb 3rd, 2010 at 08:18pm 
Comment from Kedekero
Passage d'arguments ?
Feb 3rd, 2010 at 04:59pm 
Article from Didier Guillion
Recherche de séquence mélodique, étape 12

Top of page
Last update:  (c) Myriad 2008