# Harmony Assistant

Harmony Assistant est un logiciel de musique assistée par ordinateur pour Windows, Mac et Linux. C'est à la fois un éditeur de partitions, un échantillonneur, un synthétiseur (guitares et quelques instruments à cordes pincées) et un séquenceur MIDI édité par Myriad Software.

## Fonctionnement

Harmony Assistant permet d'éditer des partitions pour tout types d'orchestres. L'assistant de création de document et d'ajout de portées permet de choisir des orchestres tout prêts, et d'ajouter les portées pour un grand nombre d'instruments de l'orchestre occidental.
Outre les portées habituelles, Harmony Assistant propose :
* des portées pour percussions et batteries en écriture standard ou en grille ;
* des tablatures pour instruments à cordes, harmonica et accordéon diatonique
* des portées pour le chant grégorien ;
* des pistes numériques pour enregistrer des voix et instruments avec un microphone ;
* un piano roll.
La visualisation de la partition peut se faire sous deux formes:
* Le mode Ruban qui fait défiler les mesures de gauche à droite ;
* Le mode Page qui représente la partition telle qu'elle sera imprimée.
Les notes s'écrivent à la souris, avec le clavier de l'ordinateur ou un instrument MIDI, il est possible de sélectionner, copier, couper, coller des notes, paroles, nuances, etc. Un album permet de conserver des éléments copier, pour les coller plus tard.
L'interface comporte des palettes qui permettent de choisir tous les symboles nécessaires à l'écriture : notes, silences, altérations, nuances, articulations, processeur d'effets, textes, images, etc. Des raccourcis clavier sont configurables pour chacun des éléments accessible par les palettes.
Le mixeur se présente sous deux formes: des VU-mètres avec potentiomètres, et un mode scène en deux dimensions vue du dessus.

### Jeu

La musique est jouée par défaut grâce à l'échantillonneur SoftSynth et une banque de sons intégrés qui contient tous les instruments du standard MIDI. Une banque de sons étendue, nommée Gold est vendue Séparément. Elle inclut des instruments enregistrés par la communauté entre 2000 et 2005, dont un orgue échantillonné jeu par jeu, et des instruments hors du standard MIDI. L'échantillonneur permet d'importer des SoundFont au format .sf2 ou d'enregistrer ses propres échantillons.
Outre l'échantillonneur, les notes peuvent être envoyées vers un instrument MIDI ou jouées par un synthétiseur intégré appelé MyrSynth (license vendue à part). Ce dernier génère des sons principalement de guitares, basses, ukulélés.
Les développeurs ont tenté de faire fonctionner des instruments VST mais ce développement s'est avéré très complexe. Ainsi, seuls quelques instruments sont pleinement compatibles. Ce n'est donc pas le point fort du logiciel.

### Paroles chantées

Des paroles peuvent être ajoutées aux portés, elles sont alors chantées par le chanteur virtuel (Virtuall Singer) dans plus de 20 langues, dont beaucoup de langues européennes ainsi que le latin, le slavon, l'espéranto, le japonais... La communauté des utilisateurs peut ajouter de nouvelles voix et langues. ''Virtual Singer est vendu séparément.

### Accompagnements

Sur la base d'une grille d'accords, il est possible d'ajouter des accompagnements fournis ou créés à volonté, par exemple guitare, piano et basse dans un style rock. Sur le même principe, sans avoir recours à la grille d'accords, il est possible d'ajouter des rythmes prédéfinis ou créés à volonté. Ils sont interprétés lors du jeu de la musique ou peuvent être transférés vers des portées pour retouches. Dans ce cas, les accompagnements et rythmes permettent un gain de temps en écriture.

### Imports et exports

Harmony Assistant importe et exporte des fichiers aux formats MusicXML, MIDI, karaoké (.kar). Il permet d'exporter dans des formats audio numérique comme WAV et MP3. Harmony Asistant peut donc être utilisé pour convertir un fichier MIDI (.mid) en MP3.

### Impression

Un même fichier peut contenir plusieurs configurations d'impression, appelées Vues, par exemple le conducteur et chaque partie instrumentale à distribuer aux musiciens de l'orchestre.
Beaucoup de paramètres sont ajustables, comme le zoom, l'epaisseur des lignes des portées, imposer des retours à la ligne, etc. Des textes et images (appelés Objets libres peuvent être ajoutés pour créer des pages de garde ou des illustrations.

### Langage de script

Depuis 2003, Harmony Assistant embarque un langage de script basé sur Lua version 4.0 qui permet aux développeurs d'automatiser des tâches et d'ajouter des fonctionnalités. Ce langage s'appelle MyrScript et quelques utilisateurs ont partagé beaucoup de scripts à la suite de besoins de la communauté, exprimés sur le forum mis en place par l'éditeur.

### Autres fonctionnalités

Harmony Assistant évolue avec les demandes des utilisateurs, cela apporte quelques fonctionnalités peu courantes, comme par exemple :
* Altérations microtonales comme les quarts de ton de la musique arabe. De nombreuses gammes sont proposées dans l'outil d'édition de l'armure ;
* Tempéraments et harmonies Barbershop : en utilisant des lois sur les portées ;
* Basses chiffrées ;
* Impression de cartons d'orgue de Barbarie ;
* Doigtés pour instruments à vents (flûtes, clarinette, ocarina...

## Exemple d'usage
### En chorale

* Dans une chorale, un membre recopie la partition avec les paroles dans Harmony Assistant. Les paroles sont chantées par Virtual Singer.
* Il fournit le fichier au format natif (.myr) aux autres choristes, qui peuvent le lire avec le freeware Melody Player dans lequel la partition défile, le volume des voix est réglable, et le texte peut défiler dans un mode karaoké.
* Il peut aussi partager le fichier sur l'espace privé du site internet de la chorale, dans une page HTML ou un script se charge de reproduire le fonctionnement de Melody Player. Ce format est appelé MyrWeb.
* Il fournit aussi des fichiers MP3 par pupitre, en mettant une voix en avant. Les choristes peuvent ainsi s'entraîner en tout lieu.

## Historique

La société Myriad Software a été créée en 1988 à Toulouse par deux développeurs dans le domaine du graphisme, de la musique et du multimédia. En 1996, avec la démocratisation d'internet, ils ont décidé de diffuser leurs logiciels sur leur site et de créer une communauté qui échange sur leurforum, et contribue aux évolutions du logiciels.
En 2002, l'ancien bulletin board est remplacé par le logiciel YaBB plus convivial. La communauté s'élargit. Le forum est toujours actif en 2024.
Depuis 2006, les développeurs font part de leurs avancées sur leur blog, améliorations, corrections, recherche sont publiés après chaque journée de travail.

### Version 1.0, novembre 1994

La première version publique de Harmony Assistant, sortie en novembre 1994, comportait déjà l'échantillonneur, les accompagnements et les rythmes.

### Version 2.0, mars 1996

Harmony Assistant était diffusé sur des CD-ROM dans la presse spécialisée, comme par exemple le n° 73 du magazine SVM Mac en 1996.
Chaque nouvelle version du logiciel intègre une cinquantaine de nouveautés et corrections. Sont listées ici les plus importantes depuis 2002.

### Version 8.0 à 8.2, 2002 à 2003

* Thèmes sur Windows ;
* Multi fenêtrage d'un même document ;
* Refonte du jukebox ;
* D'autres polices musicales que celle fournie sont acceptées ;
* Courbes de paramètres, pour faire évoluer dans la durée les paramètres des processeurs d'effet.
* Recherche des notes hors tessiture ;
* Première version de la banque de son Gold ;
* Mixeur en vue Scène ;

### Version 8.3, avril 2003

Le langage de script 'MyrScript basé sur Lua est intégré à Harmony Assistant. Des premiers scripts, écrits par les auteurs du logiciels démontrent le potentiel de ce langague. Par exemple : un générateur de sons, des outils d'analyse de l'écriture musicale, les doigtés guitare et instrument à vent affichés en temps réel lors du jeu pour faciliter l'apprentissage, l'import de fichiers provenant d'autres logiciels, etc.

### Version 8.4, décembre 2003

* Dans Virtual Singer, il est possible de créer des voix plus réalistes avec l'analyse de syllabes enregistrées par le créateur de la voix, technologie appelée Real Singer.
* L'interface utilisateur de la version MacOS X se rapproche des standards en vigueur.

### Version 9, juillet 2004

Cette version majeure apporte des nouveautés pour l'écriture musicale, comme les accroches et liaisons de phrasé à cheval sur deux portées. Parmi les autres nouveautés :
* Les fichiers style des synthétiseurs arrangeurs Yamaha PSR peuvent être importés pour créer des accompagnements ;
* Il est possible de faire une sélection discontinue de notes et symboles, contrairement à ce qui existe dans les logiciels de traitement de texte, c'est-à-dire que l'on peut sélectionner des symboles qui ne sont pas adjacents, comme on peut le faire pour des fichiers dans un explorateur de fichiers ;
* Le langage MyrScript' permet de manipuler des vidéos pour y ajouter la musique, ou générer des images pour construire une vidéo ;
* Un decrescendo dans une répétition peut être interprétée de manière à créer un fondu ;
* Le changement de tempo peut se faire de manière progressive, avec une courbe de progression : linéaire, hyperbolique....

### Version 9.1, juin 2005

Cette version améliore le rendu audio numérique et la deuxième et dernière version de la banque de sons Gold est commercialisée. Celle-ci contient des instruments avec plusieurs échantillons pour une même note, en fonction de la vélocité.

### Version 9.2, juin 2006

* Cette version intègre un assistant à la création de partition, permettant de choisir des orchestres prédéfinis, d'ajouter des portées prédéfinies pour la plupart des instruments de l'orchestre occidental.
* Tous les textes (titre, compositeur, paroles, objets libres...) acceptent maintenant des changements de police, taille et couleur. Auparavant, un seul style était possible par texte. L'encodage des textes est désormais l'UTF8, ce qui permet d'écrire dans des alphabets non latins.
* L'aspect graphique de tout le document est ajustable finement. Les valeurs qui étaient jusque là figées dans le code source, sont désormais paramétrables. Par exemple, l'épaisseur des lignes de la portée, des barres de mesure, la forme des liaisons.

### Version 9.3, avril 2007

Première version supportant le format d'échange MusicXML.

### Version 9.4, 2008-2010

* Apparition des Vues, différentes présentations (complètes ou partielles) d'une même musique, par exemple le conducteur pour le chef d'orchestre et les parties individuelles pour les musiciens de l'orchestre.
* Harmony Assistant peut désormais être installé comme application portable sur un disque USB
* Il fonctionne sous Linux grâce à l'émulateur Wine. La première version vraiment compilée pour Linux arrivera plus tard.

### Version 9.5, 2010-2011

La grande nouveauté de cette version est l'introduction du Myriad User Score Library, un espace web de partage des partitions, dans un premier temps grâce à un plugin dont la technologie est aujourd'hui obsolète et a été remplacé par le format MyrWeb.

### Version 9.6, 2011-2016

L'outil de recherche de partition Kooplet est lancé. Il permet la recherche textuelle ou d'après un motif musical dans des fichiers MusicXML, MIDI, et PDF indexés sur internet. Myriad Software a développé un logiciel appelé PDFToMusic Pro capable de transformer une partition imprimée en PDF par un autre logiciel en fichier MusicXML exploitable par Harmony Assistant.
En parallèle, de nombreuses améliorations dans l'écriture, l'ergonomie, et la prise en charge de formats d'image non gérés jusqu'alors.

### Version 9.7, 2016-2017

* 15 langues ont été ajoutées à Virtual Singer grâce à la contribution de la communauté des utilisateurs ;
* Mise en place du format d'export MyrWeb, page HTML contenant les données et appelant du code JavaScript ;
* Dans l'interface du logiciel, on peut choisir entre des palettes ou des barres d'outils ;
* Macintosh : la compilation pour processeur PowerPC est abandonnée, seule la compilation pour processeur Intel subsiste ;
* Export graphique aux formats PNG et PDF.

### Version 9.8, 2017-2018

Le module payant Myriad HQ accroit la qualité audio. Il permet :
* sortie et export numériques jusqu'à une fréquence de 96kHz, 32-bit, 8 canaux (7:1) ;
* un égaliseur multi-bandes ;
* synthétiseur à modélisation physique MyrSynth Guitar ;
* gestion d'instruments VST.

### Versions 9.9, 2019-2025

* Première version compilée en 64-bit.
* Affichage Retina/4K
* Sur Macintosh, abandon de la couche Carbon au profit d'une interface développée en interne qui assure la compatibilité Mac/Windows/Linux. Les thèmes sont donc maintenant utilisables sur Mac ;
* Sur Macintosh, gestion des écrans multiples ;
* Export des partitions en vidéo grâce à FFmpeg ;
* Piano roll ;
* Altérations microtonales ;
* Le langage MyrScript met des réseaux de neurones à disposition des développeurs de scripts qui souhaiteraient utiliser de l'intelligence artificielle ;
* Traduction du logiciel en arabe ;
* Amélioration des imports de fichiers au format MIDI et MusicXML ;
* Écriture d'accords en un clic ;
* Stabilisation de la version Linux ;
* Notion de mouvements, pour structurer une œuvre comme une sonate ;
* Corrections et améliorations de l'écriture, pour un gain de productivité ;
* Nouveaux paramètres d'interprétation des ornements (mordants, trilles, appoggiatures pour plus de réalisme.