bonjour,
je vois que je ne suis pas le seul à me creuser la tête pour la recherche de partitions...
pour le moment, sur mon site
www.tousauxbalkans.net il n'y a pas de recherche mélodique (juste recherche textuelle dans les paroles).
Les partitions que je fournis sont écrites dans un format propriétaire (Myriad) et lisible avec leur plug-in gratuit qui a l'avantage de permettre la transposition, modifier le tempo, mode karaoké, impression.
Je propose une impression PDF pour ceux qui n'ont pas le plug-in, ne peuvent pas l'avoir (linux) ou ne le veulent pas.
Mais avec ce système, pour une recherche mélodique, je suis dans la mouise.
Je suis donc en train de réfléchir à l'écriture simplifiée au format ABC, stockage en ABC pour pouvoir le modifier facilement, mais aussi stockage du contour mélodique (ça monte, ça descend, même note) comme sur musipedia, mais aussi les intervalles (+1 quand ça monte d'1/2 ton, -3 quand ça descend d'une tierce mineure...).
La méthode des intervalle me permettrait de retrouver facilement un air identique mais sans se préoccuper de la transposition.
Le contour mélodique me permettrait de retrouver les mélodies proches...
De plus, chaque "article" est catégorisé (artistes, rythme, style de danse, pays/région...) ce qui permettrait d'affiner la recherche.
Problème : pour quelque chose de 100% identique (même contour ou mêmes intervalles) c'est facile, si le contour recherché = contour trouvé dans la base.
Mais quel algorithme me permettrait de dire "j'ai trouvé ce contour, qui est assez proche, mais pas tout à fait le même que le contour recherché"... et là en requête en BDD je sais pas faire. En comparaison de chaîne (ça voudrait dire parcourir toute la base et traiter par programmation -PHP-) c'est peut-être un peu plus facile, mais je n'ai jamais fait ce genre de choses.