Music markup/fr

From Meta, a Wikimedia project coordination wiki
Other languages:

La musique est l'un des aspects importants d'une encyclopédie numérique, et les fichiers ogg sont certainement le meilleur choix lorsqu'il est important d'entendre l'enregistrement original, discours, voix de chanteurs et d'autres effets. Mais il est parfois préférable d'importer un fichier qui ne soit pas audio mais la partition elle-même.


Lilypond, basé sur wikitex fait justement cela d'une manière élégante sous une forme wiki. La notation musicale est rendue simple et modifiable, comme n'importe quel article de Wikipédia. Et il crée automatiquement à la fois une partition graphique et un fichier midi qui peut être écouté, qui est constitué de quelques octets seulement, et est transformé en musique par l'ordinateur du visiteur, économisant de l'espace et de la bande passante. Un nouveau Music:Namespace pourrait être créé et toute la musique serait alors insérée dans {{Music:nom_de_l'article }} des modèles, de manière à ne pas bloquer les articles originaux.

Généralités[edit]

Trouver un moyen standard d'encoder la notation musicale est un but qui reste inaccessible, malgré une demande claire et bien des efforts techniques. Les difficultés étant:

  1. La notation musicale est de façon inhérente plus sensible au questions de positionnement que le texte. Le texte est séquentiel; il est composé de symboles qui sont affichés dans l'ordre. A l'exception de quelques cas comme la poésie ou les formules scientifiques la position relative des symboles a peu de signification, hormis pour les sauts de paragraphes et le texte en indice ou en exposant. Inversement, la musique est écrite à l'aide de symboles qui ont d'importantes relations les uns avec les autres ; une note sous une autre note signifie quelque chose de différent de deux notes séparées horizontalement.
  2. La notation musicale n'est pas entièrement standardisée. Les mots et les signes pour l'expression, les mesures inhabituelles, les clefs, l'agencement des portées, et la tête des notes rendent difficile la définition d'une grammaire pour décrire la musique hors d'un contexte particulier.
  3. Contrairement aux formules mathématiques, la notation musicale peut être extrêmement longue, pouvant atteindre une douzaine de pages pour un simple mouvement. Déterminer le bon espacement et les bons sauts de ligne est difficile.
  4. Même si l'on considère les seuls aspects de la musique qui sont vraiment standardisés, la notation musicale reste d'une grande complexité. L'alphabet des symboles est plus grand que l'alphabet latin, et de nombreux attributs sont attachés à une portée ou à une note.
  5. Les contraintes de mise en page varient d'une pièce à l'autre et doivent être évalués au cas par cas. Certains types de partitions classiques sont imprimées avec de très petits espaces entre les notes. Inversement, beaucoup de partitions de musique populaire sont imprimées avec de grands espaces blancs.
  6. L'évolution vers un standard a été fortement compromise par les nombreux systèmes propriétaires et la forte compétition entre eux. Les systèmes propriétaires peuvent un peu communiquer au travers de programmes convertisseurs, et leurs vendeurs n'ont pas montré une véritable volonté d'arriver à établir un standard.

Le graveur de musique open-source prédominant est LilyPond, qui définit sa propre grammaire pour entrer des données. Il n'y a pas eu vraiment de tentative pour utiliser la syntaxe de LilyPond comme standard, peut-être aussi car celle-ci est fréquemment révisée.

Un projet Tex-musique a été tenté mais semble en sommeil actuellement. D'autres tentatives ont été faites par Humdrum et MuseData.

Des efforts pour parvenir à un standard appelé MusicXML sont en cours mais ont été accueillis avec un enthousiasme très relatif par l'industrie et les utilisateurs. Certains points-clés du standard sont disponibles sous une licence qui, bien que gratuite, crée des problèmes de compatibilité avec d'autres licences libres majeures.

La plupart des représentations en ligne de partitions est faite au moyen de fichiers graphiques bitmap (par ex. PNG, JPG, GIF, TIFF) et des formats comme Postscript et PDF. Il s'agit dans tous les cas de formats graphiques qui établissent les éléments à afficher sur la page ; la structure sous-jacente de la musique est perdue. Ainsi, avoir un fichier PDF pour une pièce de musique et comme avoir une simple image sans en posséder la source. De plus, ces fichiers sont souvent volumineux en regard de l'information musicale qu'ils contiennent; de ce point de vue, le PDF est le meilleur.

En plus des partitions en ligne proposées par les moyens ci-dessus, de nombreuses partitions sont proposées au travers des formats propriétaires prédominants, comme ceux de Noteworthy Finale et Sibelius.

État des lieux sur Wikipedia[edit]

Les sujets musicaux utilisent, au mieux, un peu de notation musicale.

Lorsqu'elle est utilisée, un fragment de partition est préparé à l'aide d'un logiciel (Sibelius et LilyPond étant les plus courants chez les wikipédiens). Le logiciel est utilisé pour produire un fichier PNG, qui est chargé sur Wikipedia puis inclus dans l'article.

Le problème majeur étant ici que cela ne permet pas d'édition collaborative de ce fragment

Si un autre éditeur veut modifier le fragment, il doit tout d'abord l'entrer à nouveau dans son logiciel, le transformer en fichier PNG, le charger et l'inclure dans l'article.

Pour le moment, les éditeurs utilisant LilyPond sur leur ordinateur (ou un autre système basé sur une représentation ASCII) sont incités à indiquer la source de l'image sur la page de description de cette dernière (par exemple: w:Image:Seikilos_score.png) comme solution de pis-aller. Comme la notation dans LilyPond n'est pas entièrement stable, inclure la version du logiciel utilisé est aussi recommandé. Pour pouvoir utiliser des systèmes de notation non-ASCII, comme Sibelius, les éditeurs pourraient aussi charger le fichier midi source pour accompagner leur image, mais cela peut être overkill dans bien des cas.

Les possibilités ouvertes par l'utilisation d'un système de notation musicale dans Wikipédia[edit]

Avantages possibles :


  • Extraits d'œuvres dans les articles de Wikipedia
  • Motets (anthems) rendus plus aisément dans les articles
    • (nous pourrions même écrire le motet officiel de wikimedia en collaboration !!)
  • Musique classique conservée à l'identique dans wikisource avec comme avantages:
    • pas de copyright pour l'interprétation, car en fait aucun artiste ne joue ou n'enregistre l'œuvre.
    • la musique peut être réécrite pour des corrections, modifications etc.
    • n'importe qui peut entrer de la musique à partir des notions basiques acquises à l'école et les experts peuvent ensuite mettre en forme ces données
    • prêt à imprimer pour les étudiants et à écouter pour tous
  • les wikiboooks peuvent inclure des leçons de professeurs de musique
  • plus facile et rapide à écrire et à modifier, dans l'esprit de wikipedia
  • Voir aussi WikiScores

Questions ouvertes[edit]

  • Le format midi est-il libre? Existe l'équivalent avec accès aux sources? Peut-on l'utiliser?
  • Wikitex music sera beaucoup plus petit en kb que le même fichier en format ogg. Mais demandera aussi plus d'utilisation de la charge des serveurs pour convertir en son et en image. Est-ce que ça vaut le coup?
  • LilyPond d'un emploi aisé pourrait améliorer beaucoup les nouveaux types d'articles créés sur Wikipedia (chaque article musical devrait avoir un modèle:musique), sommes nous prêts à cette évolution?

questions et réponses (en anglais) ici

Différentes technologies[edit]

Lilypond[edit]

Comme LilyPond est le principal logiciel de gravure musicale open-source, son utilisation semble logique pour Wikipedia. Ceux qui proposent LilyPond ont suggéré son inclusion dans le logiciel Mediawiki à la manière de ce qui a été fait pour TeX.

Deux problèmes se posent alors:

  1. Quelqu'un doit le faire
  2. Même si LilyPond dispose d'un mode sécurisé pour l'utilisation en CGI, certains pensent qu'il n'est pas suffisamment sûr.

LilyPond pourrait pour d'autres répondre aux besoins du projet, et serait une bonne solution technique car fonctionnant déjà sur beaucoup de versions de Linux, il utilise une interface simple et génère des sorties en TeX, PNG, et MIDI. à traduire

Voici un exemple d'entrée très simpe dans LilyPond, avec la syntaxe de LilyPond 2.4.

 {
    a b c d
 }

Lorsqu'il est interprété par LilyPond, il produit un fichier Postscript.

Il est également possible de produire un fichier midi, mais avec des effets d'expression très limités, qui le rend impropre à restituer les nuances de la musique.

Han-Wen Nienhuys est l'un des deux auteurs principaux de LilyPond et a exprimé son soutien à l'idée d'utiliser LilyPond dans Wikipedia.

« Nous aimerions beaucoup également transférer notre glossaire de termes musicaux sur Wikipedia. Faites nous savoir aussi quelles sont les défaillances du mode sécurisé. Ce mode sécurisé a été revu pour la version 2.4 et je serais ravi de tester Lilypond comme application pour serveur web. --Han-Wen »

N.B.: ce travail a été entrepris par Johannes Schindelin. Voir LilyPond-Patch par Johannes Schindelin pour MediaWiki dans Bugzilla à: http://bugzilla.wikipedia.org/show_bug.cgi?id=189 . Amusez-vous bien. Arnomane 00:38, 12 Jan 2005 (UTC)

Au départ, lilypond est écrit comme ci-dessous :

<music>
	\notes \relative c' { 
		e16-.->a(b gis)a-.->c(d b)c-.->e(f dis)e-.->a(b a)
		gis(b e)e,(gis b)b,(e gis)gis,(b e)e,(gis? b e)
	}
</music>


Et on obtient ceci :



Edit or Play


Liens pour Lilypond[edit]

Notation ABC[edit]

en:User:Calum a proposé une variante avec la notation ABC :


ABC pourrait être une excellente alternative pour la notation musicale. Elle a été conçue à l'origine pour de la musique folk monophonique, mais peut être utilisée pour des notations bien plus complexes. Elle est plus facile à apprendre, et demande sans doute moins de charge aux serveurs. Sachant que la plupart des besoins de notation musicale sont du matériau simple, comme des exemples de théorie, il est possible qu'un logiciel extrêmement complet ne soit pas la seule solution. ABC peut être sorti en TeX, ou en PostScript, et il est véritablement facile d'apprendre à le lire en format texte.

à traduire


Formatage de ABC Notation[edit]

Ideally, something like <music>a b c d</music> would give us a rendered version of the above; a nicely-sized PNG image clickable to a MIDI file.

The score, paper and midi sections (and notes?) would probably be provided by a wrapper appropriately tweaked for inline material. But would we need greater control? How would lyrics fit in? People who know music would be a help here. ;)

Lyrics could fit in as follows:

standard xml:

  1. (all elements): <key>a4</key><duration>24</duration><lyrics>Say</...
  2. (with attributes): <note key="a" octave="4"><lyrics>say</...

a more concise and readable notation that would fit to the spirit of wiki notation:

  • <notes> = <note>[<space><item>]..
  • <item> = <event>|<non_event>
  • <event> = <note>|<rest> // all events have a duration
  • <non_event> = <barline>|<slur>|<marking>|<signature>|<roadsign>
  • <barline> = "|"
  • <slur> = "u"
  • <signature> = <clef>|<timesignature>|<keysignature>
  • <clef> = "Gclef"|"Fclef"|"Cclef"<level>
  • <timesignature> = <number>"/"<number>"="<number> // the last number indicates how long a bar is (in elemetary time steps)
  • <keysignature> = <number><simpleaccidental>
  • <marking> = "crescendo"|"allegro" //(and so on)
  • <roadsign> = <repeat_begin>|<repeat_end>|<da_capo> //(and so on)
  • <note> = <pitch>","<duration>,<accent>[";"<lyric_syllable>] // (duration is in elemetary time steps)
  • <pitch> = <letter>[<generalaccidental>]<octave>
  • <letter> = "a"|"b"|"c"|"d"|"e"|"f"|"g"|"A"|"B"|"C"|"D"|"E"|"F"|"G" // upwards lowercase, downwards uppercase
  • <simpleaccidental> = "#"|"b"
  • <generalaccidental> = "#"|"b"|"o"|"x"|"bb"
  • <octave> = ""|"1"|"2"|"3" // (and so on)


Example:

  • Gclef 2# 4/4=16 a,2;The | d1,4;Rose c1,2;sum- b,2;mer's a,4;em- b,2;blem c1,1;'tis u d1,1


Proposition d'une interface pour ABC[edit]

There would be some implementation details in common with the TeX/math stuff; I'm considering setting up a more generalizable plugin/inline converter interface in the code. Basically:

  • note sections of magic code in <nowiki>, <pre>, <math>, and <music> blocks
  • take the chunks out and perform any necessary conversion, roughly:
    • for fancy things like math and music, check a hash against a table of known already-rendered items
      • if not already rendered, shell out to the rendering program and if ok note in the table
      • provide image or alternate representation(s)