Myriad Blog 1.3.0 Saturday, Dec 16th, 2017 at 06:39am 

Dev News Thursday, Jan 31st, 2013 at 04:59pm
Harmony 9.6 et autres étape 479

 
Sur Harmony/Melody, version Windows, des problèmes d'impression des objets graphiques avec transparence ont été mis en évidence, Windows 8 ne réagissant pas de la même façon que les versions précédentes du système. Cela devrait être corrigé (reste maintenant à tester ces modifications sur les anciens systèmes).
 
Une source de crash a été découverte (et corrigée) dans les opérations de mise en couleur des notes par Edition > Aspect > Colorier.
 
La gestion des curseurs linéaires dans les boîtes de dialogue (ceux qui ont leur valeur numérique écrite au-dessous) pouvait également poser problème.
 
Dans l'import MusicXML, la gestion des images a été modifiées. Elles sont maintenant converties en PNG, afin d'en permettre une utilisation plus aisée.  
 
L'en-tête et pied de page par défaut définis dans "Configuration > Préférences générales > Imprime" sont maintenant pris en compte lors de l'import d'un fichier externe (par exemple MIDI)
 
Une nouvelle version de PDFtoMusic, qui améliore entre autres la reconnaissance des ligatures, la prise en compte de certaines polices sans table de correspondance caractère-glyphe, et corrige une erreur lors de l'export MIDI, a été mise à disposition en beta et va bientôt être annoncée sur le forum.
by Olivier Guillion
 2 comments.

Dev News Wednesday, Jan 30th, 2013 at 04:51pm
Harmony 9.6 et autres étape 478

 
Dans PDFtoMusic, la gestion des ligatures a été améliorée. Le format de fichier utilisé dans  la nouvelle fonctionnalité d'édition était incorrect, c'est corrigé.
Le plug-in présentait des problèmes d'affichage spécifiques à la version 32bits de FireFox, c'est corrigé. Mais d'une manière générale, très peu de problèmes rapportés par les utilisateurs.
Dans Harmony (Mac), correction d'un problème d'impression des icônes.
by Didier Guillion
 1 comment.

Technical Tuesday, Jan 29th, 2013 at 05:10pm
Dénormalisation

 
 
Les ordinateurs calculent en binaire. Leurs calculs préférés sont donc des calculs en nombre entiers, addition, soustraction, multiplication ou division. Depuis maintenant quelques décennies, ils savent travailler en "virgule flottante", c'est-à-dire que sur un nombre défini de bits (généralement 32 ou 64), ils peuvent stocker des nombres à virgule très grands, très petits ou très proches de zéro, avec un ratio d'erreur constant.
 
Pour cela, le stockage du nombre a été divisé en trois parties : le signe, l'exposant et la mantisse.
Un bit est réservé au signe (le nombre est positif ou négatif), plusieurs bits à l'exposant (lui-même positif ou négatif), et le reste à la mantisse.
 
Pour transformer un nombre ainsi code en "vrai" nombre réel, en gros :
- On prend la mantisse sous forme de nombre entier  
- On la multiplie ou divise par 2 (selon le signe de l'exposant) autant de fois qu'indiqué par la valeur absolue de l'exposant
- On prend l'opposé du résultat si le bit de signe est positionné
 
Tout va donc pour le mieux. Le processeur sait calculer sur ce type de nombres, et le résultat est suffisamment précis pour la plupart des opérations mathématiques courantes.
 
Pour prendre en compte le résultat d'opérations impossibles (divisions par zéro, dépassement des bornes possibles de l'exposant, fonctions non définies pour certaines valeurs ) des valeurs particulières ont été introduites. On les note, par convention:
+INF infini positif
-INF infini négatif
NAN not a number
 
Lorsqu'une variable contient une de ces valeurs, et qu'on demande un calcul, le programme ne plante pas. Le processeur prend juste beaucoup plus de temps pour réaliser l'opération, mais donne tout de même une valeur  (est-ce parce que le système tente d'appeler une routine de traitement des exceptions mathématiques, ou est-ce inhérent à la méthode de calcul du processeur ? Mystère).
 
par exemple, +INF * 2 donne +INF, NAN/3 donne NAN, etc
 
Dans le calcul des instruments virtuels, nous avons remarqué que lorsque des cordes se taisaient après avoir joué, le temps pris par le calcul augmentait massivement. Après investigation, nous nous sommes rendus compte que les données de vibration de la corde avaient toutes la valeur spéciale DEN. Et les opérations sur cette valeur spéciale prennent beaucoup plus de temps que des calculs normaux.
 
De quoi s'agit-il ? D'une valeur "dénormalisée", c'est-à-dire un exposant négatif qui a dépassé les bornes admises.
Cela se produit, par exemple, si vous prenez un nombre quelconque et le divisez par 10. Vous récupérez le résultat et le divisez encore par 10, et ainsi de suite.
Au bout d'un moment, le nombre va être plus petit que 1E-10, puis 1E-11, etc. jusqu'à ce que le nombre soit si proche de zéro qu'on ne puisse plus noter son exposant.
Et là, au lieu de le considérer comme valant 0, le processeur lui donne la valeur spéciale DEN, qui dégrade fortement les performances du programme.
 
Eviter cela n'est pas chose facile, et pose problème à tous ceux qui font notamment des calculs audio, où les lignes à décalage (une partie de ce qui sort est réinjecté dans l'entrée à l'infini) ne manquent pas de s'atténuer au bout d'un moment si on ne les sollicite pas.
 
Des méthodes ont été publiées pour tenter de parer à cet inconvénient.
La meilleure semble d'être, après chaque opération pouvant produire un DEN, d'ajouter puis de retrancher un *tout petit* nombre au résultat !  
 
A<- A+EPSILON
A<- A-EPSILON
 
En effet, un nombre quelconque A pas trop proche de zéro auquel on ajoute un très petit EPSILON vaut toujours A (en vertu de l'imprécision des nombres à virgule flottante). Si on lui soustrait ensuite EPSILON, il reste encore égal à A. L'opération n'a donc pas eu d'effet.
 
Par contre, DEN+EPSILON = EPSILON, et EPSILON-EPSILON=0. Nous l'avons essayé et ça fonctionne. Mais nous ne savons pas si un compilateur évolué ne va pas supprimer cette opération lors de la compilation : si on ne saisit pas l'astuce, ajouter puis retrancher le même nombre semble en effet totalement inutile.
by Olivier Guillion

Dev News Monday, Jan 28th, 2013 at 04:58pm
Myriad Music Plug-In

 
Nous avons repris à la base deux points essentiels de l'interface du Plug-In sur Macintosh : le tracé à l'écran et la gestion des évènements envoyés par le Navigateur (demande de mise à jour graphique, clavier, souris, etc).
Le tracé à l'écran doit maintenant passer par des affichage sur des surfaces Quartz via des contextes Core Graphics. Nous savons depuis quelque temps comment ruser et plutôt que de réécrire l'ensemble du code avec des primitives Quartz, nous dessinons sur une surface QuickDraw que nous convertissons à la volée en surface Core Graphique.  
Le principal problème a été d'obtenir une surface Core Graphique valide du Navigateur. En effet, la documentation semble erronée, la surface n'est pas envoyé à la création de l'instance mais bien à chaque commande de retraçage.
La gestion des évènements a été plus aisée : dans un OS, on peut présenter les choses de manière plus ou moins porteuses de "concept", un click souris reste un click souris...
Nous avons donc écrit une petite sur-couche qui reçoit les événements Cocoa et les transforme en événement Carbon standard.
Une fois notre plug-in emmailloté dans ses deux couches, l'une pour les entrées, l'une pour les sorties (le but étant de toucher au minimum aux sources originels), nous avons procédé à des tests.
 
Et là je dois avouer avoir été très agréablement surpris.  
 
Tout d'abord en terme de performance, nos sur-couches n'entraînent aucune perte perceptible de vitesse.
 
Mais en plus, le plug-in c'est mis à tourner sur Firefox 18 (notre objectif) ainsi que sur Safari et Chrome !
 
Mais en plus du plus, que ce soit en version 32 bits ou 64 bits de ces navigateurs !!!
Magique !
Nous avons lancé dès aujourd'hui une session bêta pour les utilisateurs Macintosh.
by Didier Guillion
 1 comment.

Dev News Friday, Jan 25th, 2013 at 05:07pm
Harmony 9.6 et autres étape 477

 
Le perfectionnement de notre outil de détection de pertes de mémoire sur Windows nous a permis de corriger pas mal de petits problèmes, et de rendre le programme globalement plus solide.
 
Nous nous sommes remis aux instruments virtuels, et avons amélioré des rendus sonores, notamment le son des cordes étouffées et des glissés sur le trait.
Nous avons déniché quelques fichiers MIDI qui sont visiblement des enregistrements bruts d'un interprète. Il y a donc des imperfections, mais cela nous permet d'écouter ce que donne notre synthèse lorsqu'elle interprète des données réelles.
 
Par exemple, ce morceau est joué par 4 guitares. La rythmique a, semble-t-il, été entrée sur un éditeur de partition, mais les 2 guitares jouant la mélodie sont issue d'un enregistrement MIDI.
 
Cliquez pour écouter

 
Bon week-end à tous !
by Olivier Guillion
 3 comments.

Dev News Thursday, Jan 24th, 2013 at 04:51pm
Myriad Music Plug-In

 
Le Myriad Music Plug-In a été basé sur des fondations que nous pensions solides et pérennes : Gecko (Mozilla). Au fil des ans, pour essayer de suivre les "évolutions" de Mac OS, de nouveaux système de gestion des plug-ins Gecko sont apparues. Au niveau de l'affichage, il a été possible d'utiliser Quartz à la place de QuickDraw. La gestion des évènements utilisateurs pouvait être à la manière Carbon ou à la sauce Cocoa. Cette versatilité était dès plus louable... tant que les Navigateurs continuaient à proposer le  choix.
Bien entendu, Apple a été le premier à sauter le pas (ce sont les champions pour mettre en avant de force une technologie pour l'abandonner quelques années après) et Safari n'a rapidement plus reconnu le Myriad Music Plug-In. Heureusement il restait FireFox.  
Las ! Depuis la version 18 (ils enchainent les versions "majeures" si vite chez Firefox qu'ils vont se retrouver à la version 3000 très bientôt) Firefox a également abandonné l'ancienne gestion.
Nous sommes donc en train de remettre en chantier le Myriad Music Plug-in sur Mac, pour arriver à le faire fonctionner sur au moins un navigateur récent, mais cela va être chaud !
by Didier Guillion
 4 comments.

Dev News Wednesday, Jan 23rd, 2013 at 05:05pm
Harmony 9.6 et autres étape 476

 
Nous avons entamé une session de recherche des irrégularités de gestion de la mémoire dans Harmony Assistant et PDFtoMusic. Sur Windows, notre outil développé en interne a dû être adapté à Windows 8. Ceci nous a permis de corriger des micro-pertes de mémoire dans la gestion des textes, qui ne devaient pas avoir d'incidence majeure sur le fonctionnement du programme, mais mieux vaut être propre.
 
Sur PDFtoMusic, nous avons commencé à rafraîchir certaines icônes de l'application telles que le petit panneau indiquant une irrégularité dans la reconnaissance, le marqueur disant qu'une page a été reconnue sans problème, etc. Il faudra attendre la prochaine version beta pour en profiter.
 
Notez que la date en bas à droite de toutes les pages de notre site a été modifiée pour indiquer 2013 au lieu de 2012. Cette année, nous y avons pensé avant Pâques
by Olivier Guillion
 5 comments.

Dev News Tuesday, Jan 22nd, 2013 at 04:51pm
PDFtoMusic 1.4.0

 
Nous sommes en train de préparer la première bêta qui devrait être disponible sous peu. La dernière mise à jour publique date de Mai 2012.
 
Voici la liste des nouveautés et des corrections :
Cette version apporte une stabilité accrue, une meilleure reconnaissance des symboles, de nouvelles options de calcul ainsi que quelques petites améliorations ergonomiques. En particulier la possibilité de définir des groupes d'objets et d'y appliquer des corrections communes.
 
Améliorations et nouveautés
 1. Ouverture rapide du document courant dans l'application d'édition de votre choix
 2. Changement de page via les touches Page Avant et Page Arrière
 3. Traitement spécifique des ligatures fines (menu Correction)
 4. Traitement spécifique des tiges de note tracées avec des lignes arrondies (menu Correction)
 5. Meilleur suivi des coulés en fin de ligne
 6. Affichage de la langue reconnue pour les paroles via un petit drapeau
 7. Amélioration de la reconnaissance automatique des langues
 8. Amélioration de la concaténation des textes
 9. Affichage optionnel du chemin complet sur le fichier dans le titre de la fenêtre
 10. Nouvelle option des préférences pour lancer automatiquement  la musique après le chargement du document
 11. Changement de tonalité indépendant selon la portée
 12. Les corrections s'appliquent à tous les objets sélectionnés de même type
 13. Possibilité de sélectionner des objets via des aires discontinues, exclusion d'une aire de la sélection, sélection d'une ou plusieurs portées
 14. Menu Edition : suppression des modifications sur les objets sélectionnés
 15. Menu Edition : Tout sélectionner, tout désélectionner
 16. Amélioration du traitement des DaCapo et meilleure exportation
 17. Gestion de la notation Fasola 7 shapes
 18. Amélioration de la reconnaissance des Shape Notes
 19. Amélioration de la localisation des informations de titre, compositeur et remarques
 20. Accélération du module de suivi de portée d'un système à l'autre
 21. Accélération du module de reconnaissance optique de symboles musicaux
 
Corrections et changements
 1. Association des types de fichier avec l'application qui doit les ouvrir
 2. Gestion des polices TrueType CID type 2
 3. Correction d'un crash dû à certaines images bitmap abimées
 4. Correction d'un crash lorsqu'une longue ligne de texte était considérée comme la syllabe associée à une note
 5. Correction de l'effacement de la disposition des icônes quand les préférences étaient remises aux valeurs d'usine
 6. Localisation de la ligne d'accord dans le cas de conflit avec le numéro de mesure
 7. Correction d'un problème de sauvegarde des instruments
 8. La recherche de partitions gratuites au format PDF sur Internet par Kooplet a été améliorée, et la quantité de fichiers indexés significativement augmentée.
 9. Le terme "Ligature" est désormais utilisé à la place d' "Accroche"
by Didier Guillion
 1 comment.

Dev News Monday, Jan 21st, 2013 at 05:04pm
PDFtoMusic et CID Type 2

 
Dans de rares fichiers PDF, les glyphes n'étaient pas retrouvés correctement. Ces fichiers contiennent des polices au format CID type 2, sans table de correspondance (cmap) entre le code du caractère et le numéro du glyphe.  
 
Dans ce cas, il peut y avoir une table de correspondance spéciale (CIDtoGID) permettant de faire la relation. Les divers visualiseurs de PDF sur Windows ou MacOS gèrent tout cela correctement.  
 
Nous avons donc essayé de suivre la documentation, sans succès. Les recherches sur Internet de code source relatif à cette fonctionnalité semblaient confirmer ce que nous faisions, et pourtant cela ne fonctionnait pas.
 
C'est alors que nous nous sommes rendu compte que la table CIDtoGID n'était pas constituée de valeurs "short" (2 octets) mais de valeurs "long" (4 octets), contrairement à ce qu'affirme la doc  
(j'ai écrit en gras pour que les moteurs de recherche le voient bien, et que cela puisse aider d'autres programmeurs à l'avenir).
 
En modifiant cela, tout s'est alors mis à fonctionner. On peut imaginer que les auteurs des fichiers source que nous avions trouvés avaient eux aussi suivi la doc, et ne s'étaient jamais aperçu de l'erreur, cette partie de leur programme n'ayant probablement jamais été testée.
 
Nous avons cependant trouvé qu'une seule référence au fait que les éléments de la table fassent 4 octets au lieu de 2. Au fin fond d'un code source d'un module Java de gestion des PDF, le programmeur semblait avoir réalisé le problème, et multipliait l'index par deux afin de retomber sur le bon élément de table.
 
Il semblerait donc que nous ne soyons pas très nombreux à avoir exploré cette partie du format PDF. A moins que quelque chose nous ait échappé, ou que nous ne possédions pas la bonne version de la documentation de chez Adobe.
by Olivier Guillion

Dev News Friday, Jan 18th, 2013 at 04:44pm
PDFtoMusic et autre

 
Dans Harmony, meilleure gestion de l'aspect des coulés en chargement MusicXML.
Dans PDFToMusic, l'ensemble des icônes a été transformé en fichiers individuels, ce sera plus léger au niveau de l'archive et nous permettra des modifications plus aisées de l'aspect.
 
Bon week end !
by Didier Guillion

Dev News Thursday, Jan 17th, 2013 at 04:58pm
PDFtoMusic

 
 
 
Auparavant, les icônes utilisées dans l'application étaient calculées grâce à un logiciel de dessin, en appliquant des ombres, reflets et autres effets à des collections d'images.
 
Le résultat de ces calculs, c'est-à-dire chacune des différentes combinaisons d'image et d'effet était alors stocké dans un fichier graphique. Ce lot de fichier graphique était livré avec l'application.
 
Ajouter ou modifier une icône nécessitait donc de recalculer tous les effets, de générer les résultats, et de les ajouter à la bibliothèque graphique du logiciel. Ce n'était ni simple, ni rapide, d'autant plus que nous avions du mal à relire les fichiers d'origine.
 
Frank nous a renvoyé les originaux de ces fichiers, et nous avons pu extraire chacun des "morceaux". Grâce aux nouvelles commandes graphiques que nous avons développées pour l'édition d'instruments à cordes, nous n'avons maintenant plus besoin de stocker les résultats des calculs d'effets : toutes les icônes peuvent être calculées à partir de leurs divers éléments à chaque démarrage du logiciel.
Nous y gagnerons en place, en flexibilité et en facilité de modification.
 
Les icônes de la barre de commande ont déjà été traités de cette façon, nous attaquons maintenant les grosses icônes indiquant la progression du calcul.
by Olivier Guillion

Dev News Wednesday, Jan 16th, 2013 at 04:57pm
PDFtoMusic

 
Dans la version standard de PDFtoMusic, il y avait un problème dans la gestion des associations de type de fichier et des applications externes, c'est corrigé.
Les touches Page Up et Page Down font défiler les pages.
Une nouvelle fonctionnalité a été ajoutée via le menu ou une icône de la barre d'outil : export du PDF courant en MusicXML et chargement automatique dans Harmony.
Cela nous a demandé de créer une nouvelle icône. Malheureusement les documents graphiques que Franck nous a fourni en 2006 ne sont plus exploitables. Nous allons donc repartir sur de nouvelles bases.
by Didier Guillion

Dev News Tuesday, Jan 15th, 2013 at 04:51pm
Harmony 9.6 et autres étape 475

 
En import ABC, des parenthèses manquantes dans le texte importé pouvaient bloquer complètement le programme. Ceci a été corrigé.
 
De même, plusieurs cas de dépassement de tampon (buffer overflow), pouvant générer des instabilités mémoire ou des crashs ont été corrigés dans l'import MusicXML.
 
Dans PDFtoMusic, la fonction qui assure le suivi des portées d'un système à l'autre (certaines portées peuvent être omises sur une ligne si elles sont vides) a été accéléré. Des cas de problèmes dans la reconnaissance optique des glyphes lorsque les tracés étaient très fins ont également été traités.
 
Sur MUSL, créer un répertoire dont le nom contenait des guillemets faisait dérailler le système, qui ne retrouvait plus fichiers et dossiers. Ceci a été corrigé coté serveur, de manière à ne pas avoir à attendre la prochaine version d'Harmony Assistant pour que ce soit réglé.
 
Enfin, Kooplet a dépassé son record historique du nombre de partitions disponibles. Avec plus de 445000 fichiers indexés (et ça continue d'augmenter), Kooplet constitue probablement le moteur de recherche de partitions jouables le mieux fourni.
by Olivier Guillion

Dev News Monday, Jan 14th, 2013 at 04:53pm
PDFtoMusic

 
Meilleure différenciation des langues des paroles entre Français Italien, Espagnol et Latin.
La langue reconnue s'affiche maintenant sur la partition via un petit drapeau, à coté des paroles.
Le suivi des coulés et liaisons lors d'une fin de ligne a été amélioré.
Le terme Ligature s'applique maintenant également dans PDFtoMusic (interface et manuel)
Certains logiciels tracent les ligatures avec des lignes fines :
 

 
Une nouvelle option de calcul permet en version PRO ou standard de traiter de manière simple ces ligatures (cela était déjà possible via le mode expert de la version PRO)
 
PDFtoMusic a bien évolué depuis la dernière version publique, nous allons prévoir une première bêta pour bientôt...
by Didier Guillion
 1 comment.

Dev News Friday, Jan 11th, 2013 at 05:14pm
Harmony 9.6 et autres étape 474

 
Pour finir la semaine, nous avons complètement automatisé le fonctionnement des robots de Kooplet.
Auparavant, nous devions les lancer à la main et vérifier leur fonctionnement. Ces robots collectent les fichiers musicaux sur Internet, et en maintiennent une liste.
Ces fichiers sont ensuite traités par Harmony Assistant ou PDFtoMusic, afin de vérifier que le fichier est lisible, puis pré-calculer les séquences de notes et l'image miniature.
 
De très nombreux fichiers bizarres, abîmés, très longs ou très courts, étaient ainsi traités, et parfois il arrivait que cela fasse planter le programme.
Cela nous a donc permis de "durcir" le code d'Harmony et PDFtoMusic, mais on n'est jamais à l'abri d'un crash.
 
Nous avons donc développé un script Perl de contrôle des processus. Il vérifie régulièrement que tous les programmes (les instances du robot de recherche, celles du robot de vérification de la base, ainsi qu'Harmony et PDFtoMusic) sont bien en train de tourner, et ne sont ni bloqués ni terminés.
Il agit alors en conséquence, en "tuant" ou relançant les instances afin que tout continue à fonctionner de manière optimale.
 
Nous l'avons fait tourner toute une nuit, et aucun problème majeur n'est survenu. Cet ensemble de programmes a ainsi pu ajouter à la base de données de Kooplet environ 20000 nouvelles partitions en seulement 24 heures. Et cette automatisation nous permettra de ne plus perdre de temps à surveiller le bon fonctionnement du système.
 
Bon week-end à tous !
by Olivier Guillion

Dev News Thursday, Jan 10th, 2013 at 05:02pm
PDFtoMusic

 
Nous avions fait une erreur dans la compréhension du fonctionnement des polices de type CID Type 2 qui sont plutôt répandues dans les fichiers PDF. Ce genre de police, extension des TrueType, peut proposer une table de correspondance additionnelle aux cmaps habituelle (correspondance entre l'ASCII ou Unicode du caractère et le glyphe). Nous pensions que dans ce cas les cmaps étaient absentes du fichier. Ce qui n'est parfois pas le cas : on retrouve les deux et il faut prendre la table additionnelle en priorité. Ceci explique que certains caractères ne se traçaient pas. La correction de ceci a demandé une validation sur quelques milliers de fichiers PDF, car c'est une modification de bas niveau.
Ceci a fait fonctionner beaucoup mieux un nombre intéressant de PDF.
by Didier Guillion

Technical Wednesday, Jan 9th, 2013 at 05:01pm
À TOR ou à raison

 
 
 
La navigation sur Internet est tout sauf anonyme. Chaque accès à une page Web, chaque envoi ou réception de courrier, chaque connexion laisse une trace quelque part dans un fichier-journal, et cette trace est marquée par un numéro unique, qui permet de vous identifier : votre adresse IP.
 
Ainsi, si votre adresse IP reste fixe, nous devrions être capable, si nous en avions le temps et la volonté, de savoir exactement quel jour et à quelle heure vous vous êtes connectés sur notre site, quelles pages vous avez consulté, quels fichiers vous avez téléchargé, etc. Nous pouvons également savoir quel était le navigateur que vous utilisiez, en quelle version et sur quelle version du système d'exploitation.
 

 
Bon, vous aurez noté que, même si nous faisions cela, nous ne serions pas plus avancés, car il y a de fortes chances que vous nous répondiez "Ben oui, et alors ?" lorsque nous vous présenterons le dossier de 200 pages contenant les preuves de vos visites sur notre site.
 
Mais les choses seraient différentes si vous viviez dans un pays moins à cheval sur la liberté d'expression, où poster sur Internet simple texte, une photo ou une vidéo sur les événements dont vous avez été témoin peut vous envoyer en prison ou pire...
 
C'est pourquoi TOR a été conçu. Il s'agit d'un système collaboratif de routeur "en oignon". Voila comment cela fonctionne :
 
 Lorsque vous êtes connectés à TOR et que vous désirez visualiser une page Web, vous envoyez la demande un "noeud" interne de Tor choisi au hasard. Ce noeud n'est autre que la machine d'un autre utilisateur de TOR. Vous lui transmettez le nom de la page Web que vous désirez voir, mais cette demande est cryptée, et le noeud (qui voit votre adresse IP) ne peut pas savoir ce que vous demandez.
Cette demande est relayée vers plusieurs autres noeuds internes, histoire de brouiller les pistes, avant d'aboutir à un "noeud de sortie". Ce noeud a les moyens de décrypter la demande, et sait donc quelle est la page Web à lire, mais il ne connait que l'adresse IP du noeud précédent, pas la vôtre. Il lit la page et renvoie le résultat (crypté) qui fait tout le chemin inverse avant de vous parvenir. Vous seul avez le moyen de décrypter et de visualiser le contenu que vous aviez demandé tout à l'heure.
 
Le serveur Web interrogé, lui, n'a pu repérer qu'un accès provenant du noeud de sortie. Il ne peut pas savoir à qui est réellement destinée la page.
 

 
Ce n'est pas super rapide, mais cela fonctionne, et donne un bon niveau de sécurité dans l'anonymisation des accès au Web. Il devient assez compliqué de "tracer" quelqu'un, sa demande transitant par des machines prises au hasard, qui ne gardent pas de journal des transactions.
 
Tout aurait été parfait dans un monde du même nom. Mais c'était sans compter sur la propension humaine à gâcher toutes les bonnes idées lorsqu'elles peuvent vous apporter un intérêt personnel direct.
 
Les opprimés politiques ne sont pas les seuls à rechercher l'anonymat sur Internet. Les spammeurs de forum (ou de blog) également. Afin d'éviter d'être repérés par leur IP, ils utilisent soit des proxys anonymes, soit des réseaux de PC "zombies", soit... Tor. Et leur activité est importante, le site StopForumSpam recence à lui seul 4 500 000 signalements de spam par mois sur les forums et blogs participants.
 

Les zones foncées montrent les pays émettant le plus de spam

 
Ainsi les noeuds de sortie de Tor vont tous finir par envoyer du spam sur les forums et les blogs. Et devant cette avalanche, nombreux sont les administrateurs (nous en faisons partie) qui filtrent déjà les IP ayant été signalées comme envoyant du spam. On peut s'attendre à ce que certains réseaux sociaux fassent de même un jour.
 
Donc, on va probablement arriver à ce paradoxe : les opposants politiques qui désirent s'exprimer en contournant leur censure nationale n'auront qu'un accès partiel à Internet, l'accès aux zones d'expression publiques leur étant alors interdit par les mesures anti-spam ...
by Olivier Guillion
 1 comment.

Dev News Tuesday, Jan 8th, 2013 at 04:49pm
Harmony 9.6 et autres étape 473

 
PDFtoMusic : certaines images bitmap abimées, intégrées à des PDF faisait planter PDFtoMusic, c'est corrigé.
Dans Harmony, les crochets des quintuples croches, tige basse, ne s'affichaient pas, c'est corrigé.
La notation des crochets avec des barres a été implémenté pour les notes, appoggiatures et textes spéciaux.
Depuis les premières versions d' Harmony, les ligatures sont appelées "accroches".  Ceci est incorrect et entraine des confusions avec les croches.
L'ensemble de l'interface, de l'aide contextuelle, du manuel a été rectifié pour utiliser désormais le bon terme.
by Didier Guillion
 4 comments.

Technical Monday, Jan 7th, 2013 at 05:24pm
Remontée vers la source

 
On se demande parfois comment les moteurs de recherche font pour indexer autant de pages Web, même les plus obscures.
Intuitivement, on se dit que, même s'il y a beaucoup de pages avec beaucoup de liens dans chaque page, il doit y avoir des pans entier du Web qui ne sont pas connectés entre eux.
 
Par exemple, la page A a des liens vers B et C, B a un lien vers C, C a un lien vers A, D a un liens vers E et E a un lien vers D.
On voit que les groupes de pages ABC et DE sont indépendants. Si le moteur de recherche sait que la page A existe, il indexera B et C mais n'aura jamais connaissance de D et E.
 
C'est pourquoi, aux débuts des moteurs de recherche, un lien "Ajouter un site" était présent en évidence sur la page de recherche. Il permettait d'avertir le moteur qu'un site existait, et ainsi le faire prendre en compte dans les recherches. Il a depuis disparu, la base de données étant maintenant assez vaste pour ne plus oublier grand-chose.
 
Mais comment font les moteurs de recherche pour avoir connaissance de pages peu ou pas liées, et ainsi fournir des résultats de recherche plus complets que leurs concurrents ?
 
Pour Bing (Microsoft), c'est simple. Il semblerait qu'il ignore délibérément les directives des webmasters demandant aux moteurs de ne pas indexer certaines parties de leur site (robots.txt). Cela permet à Bing d'avoir connaissance de pages que Google, qui respecte ces directives, ne connaîtra pas.
 
Quelle est la contre-offensive de Google ? Leurs algorithmes sont assez opaques, mais une petite aventure qui nous est arrivée aujourd'hui peut donner quelques pistes.
 
Nous possédions une page secrète sur notre site. Cette page n'est liée par aucune autre page. Nous connaissons simplement son nom (qui est introuvable par essai et erreur), ce nom n'étant stocké que dans les onglets de nos navigateurs personnels.  
 
Or cette page vient de se retrouver listée dans les résultats de recherches Google. Comment Google a-t-il connu ce nom de page secret ? Nous avons vérifié, aucun hacker n'a posté ce nom dans une autre page Web connue de Google. Nous-même, nous ne l'avons pas envoyé sur notre compte gmail et ne l'avons à notre connaissance pas copié/collé dans la barre de recherche Google.
 
Seules solutions possibles, d'après nous :
 
1-  Nous avons accédé à cette page en entrant son adresse dans la barre d'adresse de Safari, Firefox et Chrome. L'un de ces produits peut-il envoyer l'adresse de la requète à Google pour compléter sa base de données ?
 
ou
 
2- Lors de l'installation des navigateurs, nous avons transféré nos onglets de l'un à l'autre. Les onglets sont-ils envoyés à un moment ou à un autre à Google pour analyse?
 
Dans les deux cas, il nous semble qu'il y a violation manifeste de la sphère privée.  
Pour s'en assurer, il faudrait mettre en place un "pot à miel" : créer un ensemble de pages au nom compliqué, non liées de l'extérieur.
 
- Entrer l'URL de la première dans la barre de recherche Google
- Mettre la seconde dans les onglets de Chrome, Firefox & Safari
- Taper l'URL de la 3e dans la barre d'adresse des 3 navigateurs
- Renouveler l'opération régulièrement, jusqu'à ce que l'une des trois se retrouve référencée sur Google...
by Olivier Guillion
 4 comments.

Dev News Friday, Jan 4th, 2013 at 04:52pm
Harmony 9.6 et autres étape 472

 
Pour finir la semaine :
 
Correction d'un débordement de chaine dans le chargement Music XML (nom de portée trop long).
Correction d'un problème d'accroche dans les fichiers MusicXML générés par "Ensemble Composer"
 
Nous avons commencé à implémenter un nouveau type optionnel d'affichage des accroches : les différentes divisions de la durée sont matérialisées par des barres horizontales.
 

 
Bon week-end.
by Didier Guillion
 4 comments.

Dev News Thursday, Jan 3rd, 2013 at 04:53pm
Harmony 9.6 et autres étape 471

 
Le robot de collecte de fichier pour Kooplet ayant été relancé, des milliers de fichiers de partition d'origine et de format divers sont collectés chaque jour. Ceci nous permet de mettre à l'épreuve les fonctions d'import de fichier d'Harmony/Melody et les analyses de PDFtoMusic.
 
Ainsi, plusieurs problèmes ont pu être corrigés par ce biais. Par exemple :
- problèmes en import XML lorsque le type d'accolade/crochet dans la marge n'est pas spécifié
- Lenteur de traitement sur de gros fichiers lors de la préservation/restauration des paroles
- Crash lorsqu'un soufflet était à cheval sur la dernière barre de mesure du morceau
 
En parallèle, nous avons corrigé des problèmes qui nous avaient été signalés auparavant :
 
- Le changement de tonalité en 1e mesure du morceau n'insère plus une barre double en début
 
- Sur les partitions contenant des changement de tempo et au moins une note avec un retard négatif important, un décalage pouvait se produire lors de l'interprétation.
by Olivier Guillion
 2 comments.

Dev News Wednesday, Jan 2nd, 2013 at 04:56pm
Harmony 9.6 et autres étape 470

 
Pour débuter l'année 2013 :
Dans Harmony, lorsque l'on demande de jouer en boucle avec un marqueur de début de jeu, la musique reprends au marqueur.
Correction d'un crash rare dans PDFtoMusic sur des partitions pour luth.
Correction d'un problème de chargement de MusicXML dans Harmony.
Dans la version de développement courante de PDFtoMusic, la localisation des informations de titre, compositeur et remarque a été grandement amélioré. Nous avons malheureusement oublié de passer ces paramètres à Kooplet. Les 3000 fichiers PDF analysés ces derniers jours ont donc finis à la poubelle et le traitement repris à zéro.
by Didier Guillion
 1 comment.


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
Feb 2015
Mar 2015
Apr 2015
May 2015
Jun 2015
Jul 2015
Aug 2015
Sep 2015
Oct 2015
Nov 2015
Dec 2015
Jan 2016
Feb 2016
Mar 2016
Apr 2016
May 2016
Jun 2016
Jul 2016
Aug 2016
Sep 2016
Oct 2016
Nov 2016
Dec 2016
Jan 2017
Feb 2017
Mar 2017
Apr 2017
May 2017
Jun 2017
Jul 2017
Aug 2017
Sep 2017
Oct 2017
Nov 2017
Dec 2017
Dec 15th, 2017 at 05:08pm 
Article from Olivier Guillion
Harmony 9.8 étape 11
Dec 14th, 2017 at 05:31pm 
Comment from Tremolo
Dec 14th, 2017 at 04:59pm 
Article from Didier Guillion
Harmony 9.8 étape 10
Dec 14th, 2017 at 04:59pm 
Article from Didier Guillion
Harmony 9.8 étape 10
Dec 13th, 2017 at 05:06pm 
Article from Olivier Guillion
Harmony 9.8 et autre étape 9
Dec 13th, 2017 at 07:52am 
Comment from Geo
Après Times c'est plus l'heure ?
Dec 12th, 2017 at 05:04pm 
Article from Didier Guillion
Harmony 9.8 et autre étape 8
Dec 12th, 2017 at 05:04pm 
Article from Didier Guillion
Harmony 9.8 et autre étape 8
Dec 11th, 2017 at 05:03pm 
Article from Olivier Guillion
Harmony 9.8 et autre étape 7
Dec 8th, 2017 at 04:58pm 
Article from Didier Guillion
Melody Player 6.5.0

Top of page
Legal information Last update:  (c) Myriad