Myriad Blog 1.3.0 Tuesday, Jul 7th, 2015 at 09:52pm 

Dev News Tuesday, Jun 9th, 2015 at 04:58pm
Harmony 9.6 étape 776

 
Dans le nouveau Virtual Singer, ajout du Grec  et du Hongrois  . Ajout d'un fragment spécial pour le Grec : le "sh" mouillé. Tout cela devra être vu et approuvé par Sylvain.
 
Le Tchèque et l'Hébreu ont été améliorés.
 
Dans la palette de Virtual Singer, tous les menus déroulant présentant la liste des langues sont maintenant conformes à la nouvelle norme de langues.
 
Dans MyrScript, ajout à l'objet "VirtualSingerVoice" du champ "LanguageCode", qui donne le code de la langue courante en 3 lettres+ 1 chiffre.
Le champ "Language" (valeur numérique de la langue) reste pour assurer la compatibilité, mais est considéré comme obsolète.
 
De plus, deux fonctions globales ont été ajoutées à l'objet "Application" : GetVSLangList() et GetVSLangDetails() qui donnent respectivement la liste des codes de langues disponibles, et des détails sur une langue donnée (nom, copyright, commentaires, icône du drapeau).
 
Les scripts existants de la section "Virtual Singer" ont été repris pour prendre en compte les nouvelles langues (et s'adapter automatiquement aux ajouts à venir)
by Olivier Guillion

Dev News Thursday, Jun 11th, 2015 at 04:56pm
Harmony 9.6 étape 778

 
Toujours sur Virtual Singer:
 
- L'Hébreu est maintenant opérationnel, il ne reste plus qu'à le faire valider par des locuteurs/chanteurs, et à collecter des textes pour alimenter la base de reconnaissance
 
- Tchèque : Václav nous aide à mettre au point les phonèmes les plus problématiques : le R, le CH et le H, difficiles à appréhender par nos oreilles françaises.
 
- Bulgare : Alexander nous a fait parvenir des fichiers d'exemple, ainsi que des enregistrements de sa propre voix afin de nous permettre de caler certains phonèmes
 
Nous avons contacté un utilisateur qui a créé un bon nombre de partitions avec des paroles en Vietnamien, pour savoir si la prise en compte de cette langue par Virtual Singer l'intéresserait.
 
Nous avons enfin pu trouver une solution à la phonétisation du Néerlandais. Ajouter cette langue est donc maintenant techniquement réalisable, il nous suffit de trouver des natifs qui veuillent bien nous aider, et des partitions avec des paroles en Néerlandais.
 
Nous allons probablement traiter cette dernière langue en priorité, car c'est la seule dans laquelle le programme soit traduit, mais que Virtual Singer ne sache pas -encore- chanter.
by Olivier Guillion

Dev News Monday, Jun 15th, 2015 at 04:59pm
Harmony 9.6 étape 779

 
Mise en place du Roumain  , du Turc   et du Portugais   (toutes les trois créées par Sylvain) dans Virtual Singer.
Création du phonème du gamma grec, et de divers autres phonèmes pour les trois nouvelles langues et pour l'Hébreu.
 
Nous continuons l'étude de la mise en place du Vietnamien, mais il se pourrait que la particularité "tonale" de cette langue (sens d'un mot changé par sa prosodie) ne vienne contrarier nos efforts. En effet, il n'est pas prévu que le texte de la syllabe écrite sous une note puisse modifier la hauteur de cette note ou y ajouter des appoggiatures lors du jeu ...
by Olivier Guillion

Dev News Wednesday, Jun 17th, 2015 at 04:56pm
Harmony 9.6 étape 781

 
Nous avons commencé d'intégrer la langue Néerlandaise à Virtual Singer.
 
Pour cela, nous avons ressuscité notre programme qui analyse un dictionnaire phonétique et en déduit l'ensemble des règles de prononciation de la langue. Il a donc bravement traité 108 000 mots néerlandais et le fichier de règles obtenu nous permet de phonétiser n'importe quel texte en néerlandaise.
 
Il reste maintenant à ajuster les phonèmes, et tirer au clair quelques bizarreries que nous n'avons pas réussi à comprendre dans la manière de prononcer cette langue.
 
Goedenavond! [xud@avOnt]
by Olivier Guillion
 1 comment.

Dev News Friday, Jun 19th, 2015 at 05:07pm
Harmony 9.6 étape 782

 
Pour finir la semaine en beauté, nous nous sommes attaqués à la mise en place de la langue Vietamienne dans Virtual Singer.
 
Comme nous l'avions signalé précédemment, cette langue est tonale, c'est-à-dire que la prosodie a une importance dans la signification du mot. Mais lorsqu'elle est chantée, c'est la musique qui donne la hauteur des syllabes, donc les accents multiples qui servent à noter le ton ne sont pas utiles.
 
Ils sont cependant présents dans les paroles, et cela fait 144 caractères différents à gérer, rien que pour les voyelles. Difficile de s'y retrouver...
 
Et impossible de vous souhaiter un bon week-end en Vietnamien, le logiciel du Blog, lui aussi, s'y perd dans tous ces accents
by Olivier Guillion
 1 comment.

Dev News Tuesday, Jun 23rd, 2015 at 05:17pm
Harmony 9.6 étape 783

 
La multiplication du nombre de langues dans Virtual Singer nous oblige à durcir notre module de détermination automatique de la langue.
 
A partir des paroles de la chanson, ce module doit être capable de trouver, par des méthodes d'analyse statistique, dans quelle langue elles sont écrites.
 
Jusqu'ici, un module de calcul Bayesien s'était avéré suffisant, mais dans sa forme actuelle, il n'est plus adapté à la nouvelle version de Virtual Singer, les erreurs de détermination devenant trop nombreuses.
 
Nous explorons donc les différentes pistes, en essayant de rendre le module insensible aux mauvaises césures et syllabisations, qui sont fréquentes. Pour l'instant, nous n'avons rien trouvé de vraiment concluant.
by Olivier Guillion

Dev News Thursday, Jun 25th, 2015 at 05:05pm
Harmony 9.6 étape 785

 
L'algorithme permettant de déterminer automatiquement la langue dans laquelle sont écrites les paroles de chansons est maintenant au point.
 
Une nouvelle structuration des données sous forme d'arbre logique a remplacé l'ancienne structure en liste, trop lente pour supporter plus de 20 langues. Le temps d'apprentissage est alors passé de plus d'une demi-heure à ... 5 secondes.
 
Il nous faut maintenant trouver, pour chaque langue, un corpus de textes permettant au module d'établir des statistiques sur les lettres et syllabes. Et cette partie est loin d'être la plus simple.
 
Pour le Français par exemple, nous avons récupéré des recueils de poèmes de Hugo, Rimbaud et Verlaine. Pour l'espagnol, les oeuvres complètes de Garcia Lorca, et un volume de Don Quichotte. Nous avons trouvé également suffisamment de textes en Portugais. Mais quand il va s'agir de l'Esperanto, du Tchèque, du Bulgare ou du Slavon, nous risquons d'avoir un peu plus de mal...
by Olivier Guillion
 Leave a comment.

Dev News Monday, Jun 29th, 2015 at 05:06pm
Harmony 9.6 étape 787

 
Nous avons collecté la plupart des textes dont nous avions besoin pour alimenter notre filtre de détermination automatique de la langue.  
 
Les langues à translittération (Japonais-Romaji / Grec / Hébreu) ont été parmi les plus compliquées. En grec, nous allons devoir effectuer nous-même la translittération (la conversion de caractères grecs en écriture avec des caractères latins) car aucun long texte n'existe dans cette graphie. En hébreu, nous allons essayer de récupérer des textes sur des sites Web proposant des paroles de chansons.
 
Mais la langue qui nous  donne le plus de fil à retordre est l'occitan. Mis à part de très vieux textes (plus de 5 ou 6 siècles) en occitan ancien ou les ouvrages de Frédéric Mistral écrit en occitan "Mistralien" et non en occitan "Classique", aucun long texte roman original ou traduit depuis une autre langue, recueil de poèmes ou de chansons, rien ne semble exister gratuitement en Occitan moderne sur Internet.  
 
Nous avons donc battu le rappel des Occitanophiles, et Danièl nous a fourni des contacts prometteurs.
En attendant, nous avons commencé à aspirer un site de chansons en occitan. Mais parmi les textes de paroles, se glissent du Français, les diverses formes d'occitan, de l'espagnol, de l'italien ou même de l'allemand. Nous allons essyer d'éliminer ces langues, pour ne conserver que ce qui nous paraît être de l'occitan, en espérant que les erreurs resteront à un taux relativement faible. Nous utiliserons cette base textuelle si nous ne pouvons pas trouver mieux.
by Olivier Guillion
 1 comment.

Dev News Wednesday, Jul 1st, 2015 at 04:44pm
Harmony 9.6 étape 789

 
Ca y est, nous avons pu collecter un nombre suffisant de textes pour obtenir une précision suffisante dans la détermination automatique de la langue. Cela peut encore être amélioré en ajoutant de nouveaux textes, mais les premiers essais nous donnent déjà satisfaction.
 
Nous avons encore amélioré l'Hébreu, le Bulgare et le Vietnamien (la langue la plus problématique en matière de prononciation).  
Nous arrivons, sur ces langues, aux limites de ce que nous pouvons réaliser par nous-même avec simplement des contacts par e-mail avec les natifs.
 
Nous nous activons donc pour proposer rapidement une version beta d'Harmony Assistant et de PDFtoMusic contenant les nouvelles langues. Les natifs pourront alors les essayer avec les chansons ou les mots qu'ils désirent, et écouter par eux-mêmes le résultat.
by Olivier Guillion
 Leave a comment.

Dev News Friday, Jul 3rd, 2015 at 05:07pm
Harmony 9.6 étape 790

 
Une beta-version privée de PDFtoMusic Pro et Harmony Assistant est en train d'être mise à disposition, à l'attention des personnes qui nous aident à mettre au point les nouvelles langues de Virtual Singer.
 
Jusqu'ici, nous leur faisions parvenir des fichiers MP3 de leurs morceaux, et par retour d'e-mail, ils nous expliquaient ce qui devait être corrigé.  
 
Grâce à cette version beta, ils pourront maintenant tester eux-mêmes le résultat. Et la nouvelle organisation des langues nous permettra assez facilement de leur faire parvenir la nouvelle version de la phonétisation, une fois que de nouveaux changements auront été effectués.
 
A l'issue du week-end, si tout fonctionne convenablement, nous diffuserons une beta publique, afin que tout le monde puisse essayer ces nouvelles langues.
by Olivier Guillion
 1 comment.

Dev News Tuesday, Jul 7th, 2015 at 04:49pm
Harmony 9.6 étape 790 : les codepages

 
Un petit rappel de l'histoire de l'informatique
 
Avant l'invention de l'Unicode, qui a normalisé un jeu de caractères étendu couvrant la quasi-totalité des langages contemporains, plus tout un tas d'autres choses (symboles, dessins, points et barres, etc), on était limité à 222 caractères.
 
Cela peut paraître suffisant, mais on s'aperçoit vite que c'est trop peu pour coder l'ensemble des caractères qu'on peut trouver dans tous les alphabets différents autour du monde.
 
Alors, à cette époque, les informaticiens se sont dit : une partie des caractères (les lettres latines, les chiffres et la ponctuation) seront communes à tous, mais en fonction de la langue de l'utilisateur, une partie du jeu de caractères (126 caractères) sera adaptée.
 
Ainsi, le caractère n° 200 pourra correspondre à un i tréma pour les français, mais à un o barré pour les norvégiens.
 
C'était une solution comme une autre, mais qui n'était pas sans problème. Impossible de mixer plusieurs langues, nécessité de connaître la langue (le jeu de caractères) pour afficher un texte, et limité à 126 caractères spécifiques, ce qui ne satisfaisait ni les Chinois, ni les Japonais.
 
Si on ajoute à cela que chaque fabricant d'OS a conçu ses propres jeux, différents de celui du voisin, on comprend la galère pour le programmeur (et pourquoi les textes accentués Macintosh ne s'affichaient pas bien sur Windows).
 
La norme MIDI n'a jamais supporté l'Unicode, et il semble que les concepteurs de la norme aient oublié qu'il y avait dans le monde  utilisateurs non anglophones et des langues avec des accentués ou des caractères non latins.
 
Les textes (noms de la partition, paroles...) sont stockées dans le fichier MIDI avec le jeu de caractères que vous voulez, mais le jeu choisi n'est pas indiqué dans le fichier !
Cela signifie que si vous chargez un fichier MIDI, vous devez savoir à l'avance quel jeu de caractère le concepteur a décidé d'utiliser.
 
Jusqu'ici, Harmony Assistant supportait les jeux de caractère d'Europe de l'Ouest: Roman sur Macintosh, Codepage 1252 sur Windows, ou CodePage 437 sur MS/DOS. Tant pis pour les autres.
 
Notre ami Tchèque Vaclav avait créé un programme pour changer le jeu de caractères des paroles après import MIDI, ce qui lui permettait d'importer des fichiers Karaoké en Tchèque, mais ce n'était pas pratique.  
Nous avons donc décidé d'étendre une bonne fois pour toute la gamme des jeux de caractères que nous reconnaissons. La prochaine version permettra donc d'importer des fichiers MIDI contenant des textes encodés selon les normes suivantes:
 
  • Adobe ISOLatin1 Encoding Vector
  • Adobe Standard Encoding Vector
  • Adobe Symbol Encoding Vector
  • Apple Macintosh Roman-Croatian
  • Apple Macintosh Cyrillic
  • Apple Greek extended for Macintosh
  • Apple Macintosh Greek
  • Apple Macintosh Roman-Icelandic and Faroese
  • Apple Macintosh Roman
  • Apple Macintosh Roman-Romanian
  • Apple Macintosh Roman-Turkish
  • Atari ST/TT Character Encoding
  • Microsoft Windows Codepage 1250 (EE)
  • Microsoft Windows Codepage 1251 (Cyrl)
  • Microsoft Windows Codepage 1252 (ANSI)
  • Microsoft Windows Codepage 1253 (Greek)
  • Microsoft Windows Codepage 1254 (Turk)
  • Microsoft Windows Codepage 1255 (Hebr)
  • Microsoft Windows Codepage 1256 (Arab)
  • Microsoft Windows Codepage 1257 (BaltRim)
  • Microsoft Windows Codepage 1258 (Viet)
  • MS-DOS Codepage 437 (US)
  • MS-DOS Codepage 737 (Greek IBM PC)
  • MS-DOS Codepage 775 (BaltRim)
  • MS-DOS Codepage 850 (Multilingual Latin 1)
  • MS-DOS Codepage 851 (Greece) - obsolete
  • MS-DOS Codepage 852 (Multilingual Latin 2)
  • MS-DOS Codepage 853 (Multilingual Latin 3)
  • MS-DOS Codepage 855 (Russia)
  • MS-DOS Codepage 857 (Multilingual Latin 5)
  • MS-DOS Codepage 860 (Portugal)
  • MS-DOS Codepage 861 (Iceland)
  • MS-DOS Codepage 862 (Israel)
  • MS-DOS Codepage 863 (French Canadian)
  • MS-DOS Codepage 864 (Arabic)
  • MS-DOS Codepage 865 (Norway)
  • MS-DOS Codepage 866 (Russia)
  • MS-DOS Codepage 869 (Greece)
  • MS-DOS Codepage 874 (Thai)
  • MS-DOS Codepage 895 (Kamenicky CS)
  • DEC Multinational Character Set (DEC MCS)
  • EBCDIC Codepage 037
  • EBCDIC Codepage 1026 (Turkish)
  • EBCDIC Codepage 1047
  • EBCDIC Codepage 500
  • EBCDIC Codepage 875 (Greek)
  • HP48 Character Encoding
  • HP Roman-8
  • ISO/IEC 646:1991 French Canadian
  • ISO/IEC 646:1991 Swiss
  • ISO/IEC 646:1991 German
  • ISO/IEC 646:1991
  • ISO/IEC 646:1991 Finnish
  • ISO/IEC 646:1991 French
  • ISO/IEC 646:1991 United Kingdom
  • ISO/IEC 646:1991 (common for all ISO/IEC 646)
  • ISO/IEC 646:1991 US ASCII
  • ISO/IEC 646:1991 Italian
  • ISO/IEC 646:1991 Dutch
  • ISO/IEC 646:1991 Norwegian/Danish
  • ISO/IEC 646:1991 Portuguese
  • ISO/IEC 646:1991 Swedish
  • ISO/IEC 8859-1:1998 Latin Alphabet No. 1
  • ISO/IEC 8859-10:1998 Latin Alphabet No. 6
  • ISO/IEC 8859-13:1998 Latin Alphabet No. 7 (Baltic Rim)
  • ISO/IEC 8859-14:1998 Latin Alphabet No. 8 (Celtic)
  • ISO/IEC 8859-15:1999 Latin Alphabet No. 9
  • ISO/IEC 8859-2:1999 Latin Alphabet No. 2
  • ISO/IEC 8859-3:1999 Latin Alphabet No. 3
  • ISO/IEC 8859-4:1998 Latin Alphabet No. 4
  • ISO/IEC 8859-5:1999 Latin/Cyrillic Alphabet
  • ISO/IEC 8859-6:1999 Latin/Arabic Alphabet
  • ISO 8859-7:1987 Latin/Greek Alphabet
  • ISO/IEC 8859-8:1999 Latin/Hebrew Alphabet
  • ISO/IEC 8859-9:1999 Latin Alphabet No. 5
  • koi8-r (Russian U*IX encoding)
  • Microsoft Windows MS LineDraw
  • NEXTSTEP Encoding Vector
  • Microsoft Windows Symbol Encoding Vector
  • TeX dcr input
  • TeX dcr output
     
    Nous espérons que ce sera suffisant pour satisfaire tout le monde
  • by Olivier Guillion
     Leave a 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
    Jul 7th, 2015 at 04:49pm 
    Article from Olivier Guillion
    Harmony 9.6 étape 790 : les codepages
    Jul 6th, 2015 at 11:10pm 
    Comment from Geo
    Que les langues ?
    Jul 6th, 2015 at 05:00pm 
    Article from Didier Guillion
    PDFtoMusic 1.5.1 et autre
    Jul 3rd, 2015 at 05:07pm 
    Article from Olivier Guillion
    Harmony 9.6 étape 790
    Jul 3rd, 2015 at 05:07pm 
    Article from Olivier Guillion
    Harmony 9.6 étape 790
    Jul 2nd, 2015 at 04:44pm 
    Article from Didier Guillion
    PDFtoMusic 1.5.1
    Jul 1st, 2015 at 04:44pm 
    Article from Olivier Guillion
    Harmony 9.6 étape 789
    Jul 1st, 2015 at 03:58pm 
    Comment from Bernard BOUVIER
    Harmony 9.6 étape 787 Occitan
    Jun 30th, 2015 at 04:53pm 
    Article from Didier Guillion
    Harmony 9.6 étape 788
    Jun 29th, 2015 at 05:06pm 
    Article from Olivier Guillion
    Harmony 9.6 étape 787

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