Pour finir l'année, nous avons implémenté un petit outil qui permet, à partir des ressources en différentes langues de construire un lexique entre n'importe laquelle des langues. Ce lexique pourra être fourni aux personnes qui assurent gentiment les traductions afin de leur faciliter la tâche et également assurer une cohérence dans la traduction. De plus, ce nouveau module recherche les incohérences de traduction : par exemple un mot traduit de plusieurs façons différentes, et les signale. Il détecte également les oublis et les mets en avant. Bonnes Fêtes ! |
|
|
by Didier Guillion | | | |
|
Le Dock peut maintenant être positionné sur n'importe quel bord de l'écran : Toutes les opérations fonctionnent quelle que soit la position. Il reste quelques détails graphiques à régler (position dans la musique et ligne d'aide en mode vertical, notamment) |
|
|
by Olivier Guillion | | | |
|
Le Myriad-Music plug-in a été entièrement recompilé et testé sur Mac OS avec les navigateurs récents compatibles, Firefox restant notre référence. L'affichage des .mya était brisé, cela a été réparé : L'installateur Mac du plug-in a été mis à jour. |
|
|
by Didier Guillion | | |
| |
|
Premiers essais de configuration graphique du Dock, pour l'adapter aux goûts de l'utilisateur. Il sera possible de modifier: - La saturation des couleurs (déjà implémenté) - Le fond simili-3d de chaque icône (absent dans la version beta) - La vitesse d'animation des 3 icônes d'édition - Le type d'animation des 3 icônes d'édition : aucune, fondu ou pivotement - L'opacité des rappels d'outils qui défilent dans les 3 icônes d'édition - La position du dock sur l'un des 4 cotés de l'écran Ces réglages devraient se faire dans un onglet de la boite d'édition des préférences générales de l'application. |
|
|
by Olivier Guillion | | |
| |
|
Voici venir le jour tant attendu des petits et des plus grands. Toute l'équipe de Myriad vous souhaite une très belle journée de Noël dans la joie et le partage ! |
|
|
by Didier Guillion | | |
| |
|
Mise à plat des ressources dans les différentes langues. Compilation du Melody Player et du Myriad Music Plugin. |
|
|
by Didier Guillion | | | |
|
Nos récents déboires avec un utilisateur coréen nous ont fait prendre conscience que nos installateurs sur Windows ne géraient pas les accentués dans les noms de fichiers et dossiers de manière satisfaisante. Ils utilisaient les jeux de caractères 8 bits, qui pouvaient varier en fonction de la langue de l'utilisateur. Dès qu'un caractère accentué ou non latin était présent dans un nom de fichier ou de dossier, l'installateur risquait de ne pas fonctionner correctement. Nous avons donc repris la totalité des accès aux noms des éléments (et dans un installateur, il y en a un paquet) pour les passer en Unicode, jeu de caractère étendu qui permet de gérer toutes les langues. Cela a nécessité l'écriture de 1200 lignes de code supplémentaires. Une fois testé, il a fallu faire en sorte que l'installateur fonctionne tout de même sur des systèmes ne gérant pas l'Unicode (Windows 98 et précédents). Sur ces vieux systèmes, les utilisateurs Coréens risquent donc de rencontrer encore des problèmes d'installation, mais nous devons avouer que cela ne constitue pas l'une de nos priorités. |
|
|
by Olivier Guillion | | | |
|
Voilà une bonne vingtaine d'année que nous assurons une compatibilité ascendante des fichiers mus/myr. Cela garanti que tout fichier créé même avec une très ancienne version est encore lisible. Nous sommes en train d'implémenter le contraire : la possibilité de sauvegarder dans une ancienne version pour lecture sur des versions précédentes d'Harmony. Cela va servir, par exemple, pour les personnes qui ne peuvent installer la version la plus récente d'Harmony sur leur vieil ordinateur, elles pourront tout de même lire les fichiers créées avec la dernière version. |
|
|
by Didier Guillion | | | |
|
L'une des simplifications d'écriture les plus fréquente, et la plus génératrice d'erreurs est l'utilisation de tuplets (triolets) sous-entendus. Dans cette notation, les triolets sont écrits comme il faut, avec un petit "3" au-dessus, uniquement sur la première mesure. Le "3" est ensuite omis sur tous les triolets qui suivent, l'interprète étant supposé comprendre qu'il faut continuer à appliquer les triolets tout pareil. Parfois, le premier "3" n'est même pas présent. Ce sont les ligatures, la métrique et la comparaison rythmique avec les autres portées qui doivent indiquer qu'il s'agit de triolets. Inutile de préciser que ce genre de notation, du type "on voit que", ou "parce que c'est plus logique" n'est pas vraiment du goût d'un programme de reconnaissance optique comme PDFtoMusic. Les ratages sur cette notation sous-entendue sont clairement audibles, et difficilement réparables après coup. Nous avons donc pas mal travaillé sur la détection de ce genre de cas, et notamment sur la correction par comparaison avec les autres portées. Les triolets sous-entendus sont détectés plus souvent, et le traitement de certaines partitions s'en voit grandement amélioré. Mais comme d'habitude avec ce type de modification profonde, il faut maintenant s'assurer, en traitant quelques milliers de fichiers, que la détection ne s'opère jamais à mauvais escient. |
|
|
by Olivier Guillion | | | |
|
Pour finir la semaine : Dans PDFtoMusic, le module de recherche de tempi a été amélioré et validé sur plusieurs milliers de fichiers. Dans Harmony l'affichage des tempi a été généralisé et l'import MusicXML des tempi repensé. Correction de la boite des options d'impression pour les cartons d'orgue de barbarie. Le numéro de mesure s'affiche dans les cases de la grille d'accord. La police utilisé dans la grille d'accord imprimée en fin de document est maintenant paramétrable par document. Ce module n'avait pas été touché depuis 2008 ! Bon week-end ! |
|
|
by Didier Guillion | | | |
|
Ce matin, vers 6h50, un petit malin utilisant une adresse IP Turque (rien ne dit qu'il soit physiquement là-bas) a lancé une attaque de type "injection de code SQL" sur un de nos scripts, celui qui permet à nos utilisateurs de demander une recherche manuelle de leurs codes dans nos fichiers clients. Nous n'utilisons pas SQL sur notre site, donc cette attaque n'avait aucune chance de réussir. Mais à chaque essai d'intrusion, un e-mail a été envoyé par le script à Sylvie, qui s'occupe de traiter les demandes. Résultat : en 4 minutes, 1600 e-mails sont arrivés sur sa boîte, menaçant de la saturer. Nous avons pu déterminer l'outil qui avait été utilisé pour cette attaque. Il s'agit d'un "scanneur de vulnérabilité", destiné à l'"usage exclusif des webmasters". Bien sûr. Nous avons donc inclus un niveau de protection supplémentaire sur l'ensemble de notre site, qui empêche tout accès depuis des outils que nous considérons comme douteux. Nous avons contacté la société qui édite cet outil, en leur expliquant que si, honnêtement, ils ne voulaient pas que les hackers utilisent leur produit, il suffisait d'un système opt-in (par exemple un fichier présent à la racine du site) qui prouve que l'utilisateur possède bien le site testé. Ils ont répondu quasi instantanément, ce qui nous a surpris. Ils ont invoqué le fait que les scanneurs concurrents n'avaient rien mis en place de tel ; un tapage en touche qui, lui, nous a beaucoup moins surpris |
|
|
by Olivier Guillion | | | |
|
Nous poursuivons l'analyse des indications de tempi. Des objets tels que ceux-ci sont maintenant reconnus et traités en temps que tempo : |
|
|
by Didier Guillion | | |
| |
|
Un utilisateur Coréen nous a contacté pour nous avertir que la version d'Harmony Beta ne s'installait pas correctement sur son Windows 10 version coréenne. Le message d'erreur indiquait qu'un fichier, dont le nom contenait des accentués (les versions précédentes de l'application ne contenaient aucun nom de ce type) ne pouvait pas être copié correctement. Par chance, Windows 10 permet facilement de changer de langue. Nous sommes donc passés en Coréen, et avons alors obtenu des boîtes de ce type: Tant bien que mal, nous sommes parvenus à tester l'installation d'Harmony Beta... qui s'est déroulée sans problème. Nous avons donc cherché, avec l'utilisateur, quel autre paramètre pouvait produire une erreur, et après plusieurs essais infructueux, l'avons trouvé au même moment : Il s'agit de la langue pour les programmes non Unicode, cerclée en rouge sur l'image. Lorsque ce paramètre est fixé à une langue qui n'utilise pas l'alphabet latin, les accentués dans les noms des fichiers ne sont pas correctement pris en compte. Le problème doit donc se produire également en Chinois, Japonais, mais peut-être aussi en Russe ou en Grec. Le point très positif est que nous n'aurons pas à changer la langue de Windows pour tester l'installateur, ce qui devrait nous permettre de vérifier le fonctionnement directement sur notre machine de développement. Parce que ouvrir quelques boîtes et cliquer sur quelques boutons en Coréen, cela peut se faire par essai et erreur, mais utiliser vraiment le système aurait probablement posé quelques problèmes. Ne pas comprendre qu'il est écrit "Désirez-vous supprimer définitivement ce dossier?" peut facilement provoquer une catastrophe. |
|
|
by Olivier Guillion | | | |
|
Edition textuelle de l'échelle des notes dans le Dock. Lors du paramétrage de la ligne d'accord associée à la portée on peut maintenant facilement accéder à la définition des styles d'affichage. Correction du déplacement de la ligne des paroles en mode page. En import MusicXML, les tempi complexes (avec libellés) sont maintenant correctement traités. |
|
|
by Didier Guillion | | | |
|
Journée optimisations et accélérations: L'export MIDI de partitions très longues, contenant de nombreuses répétitions (donc un grand nombre de mesures jouées) pouvait prendre un temps considérable, jusqu'à plusieurs minutes. Un pré-calcul de correspondance entre temps joué et mesure écrite a permis de diviser ce temps par environ 50. Le programme effectue souvent des recherches dans des tableaux organisés selon une valeur croissante. Lorsque le temps de traitement était crucial, nous avions mis en place une recherche dichotomique (pour un tableau de 1000 éléments, cette recherche n'effectue que 10 comparaisons au lieu de 500 en moyenne). Une comparaison dichotomique polyvalente a maintenant été écrite, et nous permettra d'accélérer aussi les recherches de moindre importance. Bon week-end ! |
|
|
by Olivier Guillion | | |
| |
|
Des tempi complexes comme celui-ci : sont maintenant reconnus et correctement traités. |
|
|
by Didier Guillion | | | |
|
- Travail sur le Dock, pour répertorier les icônes dont le placement n'est pas logique et mériterait d'être amélioré, ainsi que des icônes encore absentes. - Finalisation de la refonte de nos pages de commande, mais pas encore mise en ligne publiquement |
|
|
by Olivier Guillion | | | |
|
La discrimination entre police musicale et textuelle a été améliorée, ceci a été testé sur quelques milliers de fichiers et donne de meilleurs résultats en extraction de tempi. Dans la foulée, le nouvel algorithme de détermination de langue a été validé. |
|
|
by Didier Guillion | | | |
|
Nous nous sommes à nouveau heurtés à un problème de détermination automatique de langue par Virtual Singer. Le filtre de détermination Bayésien évalue les probabilité de présence de groupes de lettres consécutives dans le flux de caractères des paroles des chansons. Par exemple, s'il y a écrit : "Le temps des cerises", il va étudier le flux : "LETEMPSDESCERISES", en évaluant la probabilité de trouver tout à tour dans des textes français, anglais, italiens... les combinaisons LE, ET, TE, EM, PS, SD, DE, ES, ... ainsi que LET, ETE, TEM, EMP, MPS... En comparant les résultats de chacune des langues, il détermine laquelle est la plus probable. Mais, si les paroles contiennent une syllabe répétée de nombreuses fois par exemple: "You Oh La La La La La La Oh Yeah La La La La La La", le résultat dépendra principalement de la probabilité de rencontrer la syllabe "La" dans chacune des langues. Le texte d'exemple est en anglais, mais "La" a plus de chance de se trouver dans des textes français (ou espagnols). Etant donné que cette syllabe est surreprésentée dans le texte à analyser, le calcul est faussé et tend à trouver "français" plutôt qu'anglais. Nous avons donc mis en place un système qui limite le nombre de combinaisons identiques à analyser dans un même texte. Dans l'exemple, le programme analysera donc "YOUOHLAYEAH", en supprimant les "La" et "Oh" répétés, et trouvera probablement l'anglais. Ceci devrait donc permettre une meilleure détermination de la langue, mais devra d'abord être testé sur un maximum de fichiers avant d'être validé. |
|
|
by Olivier Guillion | | |
| |
|
Pour finir la semaine : Correction d'un problème de codage des chemins sur Mac dans les fichiers JukeBox. Le JukeBox permet maintenant de visualiser les partitions des fichiers .mid. Correction de l'encodage ISO du Japonais dans Virtual Singer. Mise à niveau du projet Melody Assistant (cela n'avait pas été fait depuis avril 2014...) Bon week-end ! |
|
|
by Didier Guillion | | | |
|
Tout a commencé il y a quelques jours, lorsque nous avons reçu à tort des e-mails provenant du robot de Galerie, notre logiciel sur Mac qui permet de créer des galeries de photos sur le Web. En plus des galeries de photos, ce logiciel peut ajouter aux pages web un système de commentaires, qui est géré sur nos serveurs. Le fonctionnement, que nous ne détaillerons pas ici en profondeur, en est assez complexe. La chose importante est que ce système de commentaire, installé sur les pages de l'utilisateur, génère du Javascript, qui utilise la valeur document.location.href pour savoir sur quelle page il est, et donc à quelle galerie de photos se rapporte le commentaire. Et là, nous avons commencé à recevoir des avis de tentatives d'accès à ces commentaires depuis des pages yahoo, tripadvisor, des forums japonais, etc. Tout et n'importe quoi, en masse. Des tas de pages qui ne contenaient ni galerie de photos, ni champ de commentaires géré par nous, dans des langues diverses. Tout laissait à penser qu'un programme ou un navigateur lisait une page contenant une galerie de photos, mais qu'au moment d'exécuter les scripts présents sur cette page, ne fournissait pas la bonne valeur lorsque ces derniers demandaient document.location.href Nous avons donc examiné de plus près l'origine de ces accès, et avons extrait les données suivantes: Adresse IP: 40.77.167.41 Navigateur: Mozilla/5.0 (compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm) Il s'agit donc d'un gros problème dans les robots d'exploration de Bing, le moteur de recherche de Microsoft, qui se mélange les pinceaux entre les pages qu'il examine, et nous indique l'adresse des autres pages qu'il est en train d'explorer au même moment. Un sacré problème de cloisonnement ! Espérons qu'ils l'ont mieux géré dans les parties sécurisées de leurs programmes (Microsoft live, etc). Cela me gênerait un peu que quelqu'un d'autre puisse accéder à mes données personnelles s'il se connecte en même temps que moi Pour notre part, nous allons donc bannir de Galerie tous les navigateurs qui se signalent comme "bingbot", et tout devrait rentrer dans l'ordre. À noter que nous avions déjà détecté une grosse irrégularité (pas encore corrigée à ce jour) dans la manière dont les robots de Bing explorent les sites Web. Une de plus, donc... |
|
|
by Olivier Guillion | | | |
|
Gestion des marqueurs textuels en import MIDI. Refonte du module de commande de licence, avec un accès direct au serveur de paiement. Remaniement de la boîte de saisie des numéros de licence. |
|
|
by Didier Guillion | | | |
|
Afin de faciliter les opérations de règlement des licences, nous sommes en train de mettre en place quelques améliorations dans notre système de paiement sécurisé par carte bancaire. Elles ne sont pour l'instant pas visibles sur le site, car il faut tester ce type de modifications un peu plus sérieusement que n'importe quel autre. Rien de pire, sur un site, que d'avoir un problème, une page inconnue ou une déconnexion juste après avoir entré son numéro de carte Donc, la procédure est : - modifications - tests en local - mise en place temporaire sur une page cachée du site global et test de bout en bout d'une opération de paiement, suivi du remboursement de l'opération de test - enfin, mise en place sur les pages publiques, et re-test d'opération - surveillance approfondie des premiers achats qui suivent |
|
|
by Olivier Guillion | | | |
|
|