Myriad Blog 1.3.0 Tuesday, Jul 28th, 2015 at 09:49pm 

Dev News Tuesday, Jul 28th, 2015 at 05:02pm
Harmony 9.6 étape 798

 
Nous avons pu trouver des référents en Grec et en Roumain, qui ont vite (et bien) compris ce dont nous avions besoin. Ils nous ont fait parvenir des musiques d'exemple, qui complètent celles que Sylvain nous avait déjà transmises.
 
Normalement, ces deux langues devraient donc être mises au point rapidement.
 
Suite à un contact indirect, nous avons jeté un oeil sur la langue basque (euskara) et, si la langue elle-même semble complexe, sa prononciation est assez simple, et pourrait être mise en place sans trop d'effort. Le seul problème semble être les variations régionales (navarrais, souletin, biscayien...).  
 
A ce sujet, une comparaison amusante peut être faite ici.
 
Si nous parvenons à trouver un référent motivé, mettre en place l'une des formes (peut-être le basque unifié euskara batua?) ne devrait pas poser de gros problèmes.
by Olivier Guillion
 1 comment.

Dev News Friday, Jul 24th, 2015 at 05:17pm
Harmony 9.6 étape 797

 
Implémentation des langues encore manquantes (conversion des fichiers de Sylvain): le slavon , le serbe/croate/bosnien (si quelqu'un a une idée pour un drapeau qui représente les trois, on est preneurs) et le Romani (tsigane)
 
Reste à compléter ce qui nous manque, c'est-à-dire pour chaque langue le triptyque locuteur natif / morceaux d'exemple / longs textes dans cette langue.
 
Bon week-end !
by Olivier Guillion
 Leave a comment.

Dev News Wednesday, Jul 22nd, 2015 at 04:58pm
Harmony 9.6 étape 795

 
Nous avons pu trouver un premier référent motivé pour le Catalan , donc nous avons mis les bouchées doubles sur cette langue.
 
Une de ses particularités est d'avoir un accent tonique fort sur l'une de ses syllabes, les autres étant atones, et leurs voyelles altérées. Ceci se rencontre dans d'autres langues (par exemple le Russe), mais en Catalan, il y a des règles permettant de déterminer à coup sûr la syllabe accentuées, ce qui nous permet de nous passer de dictionnaire phonétique.
 
Nous avons donc implémenté ces principes d'accentuation dans Virtual Singer, puis avons entré la totalité des règles de prononciation. Nous avons ensuite choisi dans la liste des phonèmes existants ceux qui, à l'oreille, semblaient correspondre le mieux, et avons créé les quatre ou cinq qui manquaient.
 
Le premier essai (sur la chanson pour enfants "Baixant de la font del gat") a ainsi pu être réalisé. Il reste maintenant à corriger les erreurs et à tout ajuster.
by Olivier Guillion
 Leave a comment.

Dev News Monday, Jul 20th, 2015 at 05:00pm
Harmony 9.6 étape 794

 
Nous continuons à améliorer les langues dans Virtual Singer.
Nous avons ajouté le Macédonien (d'après le fichier phonétique original de Sylvain).
Il y a relativement peu de locuteurs dans cette langue, ce qui rend difficile de trouver des sources de renseignements fiables. Le SAMPA n'a semble-t-il pas été normalisé pour le Macédonien, et nous n'avons pas pu trouver ni de pages Web expliquant en détail les règles de prononciation, ni de démo de voix synthétique autre que la voix robotique de Google Translate.
 
Nous allons bientôt devoir lancer un appel pour trouver un locuteur natif de chacune des nouvelles langues de VS, qui soit en mesure de nous aider à vérifier/corriger/améliorer les prononciations.  
 
En particulier, il nous faudrait un référent natif pour le Catalan, qui pas encore implémenté (tout est à faire).
Idéalement, il en faudrait aussi pour le Grec, le Portugais, le Turc, le Serbe, le Croate, le Roumain, le Romani, le Slavon (slave de l'église orthodoxe) et aussi, peut-être, l'Azéri, ou le Kazakh.
by Olivier Guillion
 3 comments.

Dev News Wednesday, Jul 15th, 2015 at 04:59pm
Harmony 9.6 étape 793

 
Retour sur la langue néerlandaise dans Virtual Singer. Cette langue est plutôt complexe en matière de prononciation.
 
Par exemple, il semble qu'il y ait quelques homonymes non homophones (mots qui s'écrivent de façon identique, mais ont une prononciation différente).
 
En Français, on peut penser à "les poules du couvent couvent" ou "le président a les défauts de ceux qui président".
En Néerlandais, ce serait plutôt:
"Een", qui signifie "un", et "één" (les accents étant facultatifs, peut s'écrire "een") qui ne se prononce pas pareil, et qui signifie... "un".
 
Deux mots qui s'écrivent pareil, se prononcent différemment, et veulent dire la même chose? Nous sommes restés interdits, à nous gratter la tête devant le traducteur automatique, jusqu'à ce que nous comprenons que le premier est l'article indéfini (le "a" anglais) , et le second le nombre ("one" en anglais).
 
Pour que Virtual Singer prononce ces mots correctement, il faudra donc que l'utilisateur emploie la forme accentuée, afin de la différencier de l'autre.
by Olivier Guillion
 Leave a comment.

Dev News Thursday, Jul 9th, 2015 at 05:00pm
Harmony 9.6 étape 792

 
La gestion des jeux de caractères a été entièrement implémentée en import et en export MIDI.  
 
Nous nous sommes ensuite servis du module de détermination de langue de Virtual Singer pour permettre au programme de trouver automatiquement le jeu de caractère utilisé. Pour cela, il prend tous les textes du fichier MIDI importé, et les convertit en utilisant tour à tour chaque jeu. Il cherche alors la langue la plus probable et mémorise la probabilité maximale atteinte. Cela résulte en un couple langue/jeu de caractère le plus probable. En cadeau bonus, donc, nous connaissons la langue dans laquelle sont écrits les textes dans le fichier.  
 
Nous avons passé cet algorithme sur divers fichiers MIDI et Karaoké, en différentes langues et jeux de caractères, et la détermination a fonctionné à 100%.
 
Nous avons ensuite retiré les jeux de caractères qui alourdissait inutilement la liste. Par exemple, les jeux EBCDIC, spécifiques aux calculateurs IBM depuis les années 50, avaient peu de chance d'être utilisés dans un fichier MIDI
 
Nous avons donc conservé:  
 
- Les jeux Macintosh
- Les jeux Windows
- Les jeux MS/DOS
- Les jeux ISO 8859  
- Et quelques autres : UTF-8 bien sûr, Shift-Jis (Japonais), koi8-r (russe) et Atari ST, car il y avait des programmes de musique assez sympas sur cette machine, et une interface MIDI intégrée.
 
Nous avons enlevé les jeux de la norme ISO 646, mais nous ne sommes pas certains que ce soit une bonne idée, ne sachant pas exactement quels systèmes s'en serv(ai)ent, et s'il y a(vait) des éditeurs MIDI sur ceux-ci.
by Olivier Guillion

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

    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 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

    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.


    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 28th, 2015 at 07:13pm 
    Comment from Sylvai
    Variantes régionales
    Jul 28th, 2015 at 05:02pm 
    Article from Olivier Guillion
    Harmony 9.6 étape 798
    Jul 28th, 2015 at 05:02pm 
    Article from Olivier Guillion
    Harmony 9.6 étape 798
    Jul 27th, 2015 at 04:56pm 
    Article from Didier Guillion
    PDFtoMusic 1.5.1
    Jul 24th, 2015 at 05:17pm 
    Article from Olivier Guillion
    Harmony 9.6 étape 797
    Jul 23rd, 2015 at 04:58pm 
    Article from Didier Guillion
    Harmony 9.6 étape 796
    Jul 22nd, 2015 at 04:58pm 
    Article from Olivier Guillion
    Harmony 9.6 étape 795
    Jul 21st, 2015 at 08:17pm 
    Comment from Cri-Cri
    Avancement...
    Jul 21st, 2015 at 07:47pm 
    Comment from Sylvain
    locuteurs
    Jul 21st, 2015 at 05:00pm 
    Article from Didier Guillion
    PDFtoMusic 1.5.1

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