728 x 90

MusicXML

MusicXML

Chcesz publikować interaktywne partytury muzyczne w Internecie? Chcesz współpracować z innymi muzykami, którzy używają różnych aplikacji muzycznych?

MusicXML jest formatem znacznikowym służącym do graficznej prezentacji notacji muzycznej. Oparty jest na wzorcach dokumentowych DTD (Document Type Definition) i zaprojektowany został do reprezentacji muzyki nutowej, szczególnie dla zachodniej notacji muzycznej mającej początki w XVII wieku. MusicXML opracowany został przez Recordare LLC. Rozwojem tego formatu zarządza obecnie MakeMusic po przejęciu w 2011 roku spółki Recordare.

Cechami MusicXML są :

  • wymienność,
  • łatwość w jego analizie,
  • bazowanie na formacie xml, dzięki czemu jest zrozumiały i łatwy w konstrukcji.

Dzięki powyższym cechom, użytkownik w przystępny sposób może manipulować danymi oraz organizować je.

MusicXML został oparty na dwóch formatach muzycznych:

MuseDate jest kolekcją wirtualnych partytur, która reprezentuje logiczną zawartość standardowego repertuaru klasycznego z lat od 1690 do 1890. Kolekcje te są bogate w funkcje i wsparcie podczas wydruku muzycznego, analizy muzycznej oraz przy tworzeniu elektronicznych plików dźwiękowych bez dalszego kodowania lub znakowania.

HumDrum, podobnie jak MuseDate, jest kolekcją partytur.

MusicXML jest w większości modyfikacją MuseData do postaci XML oraz dodaniem kilku koncepcji z HumDrum. Formaty te były jednak używane tylko do pracy z muzyką poważną. MusicXML postanowił przekroczyć tę granicę i objąć także nowoczesną muzykę popularną.

XML jest językiem formalnym, używanym do reprezentowania różnych typów danych w sposób strukturalizowany. Język ten zaprojektowany został, by rozwiązywać typowe problemy, np. problem zgodności oraz wymiany i jednolitości formatu. Format ten jest hierarchiczny, dlatego nie można bezpośrednio w nim opisać muzyki. W związku z tym, stworzono dwa wysokopoziomowe formaty dokumentowe:

  • partwise.dtd – reprezentacja nut według partii/instrumentu
  • timewise.dtd – reprezentacja nut według ścieżki czasowej

Nuty zapisane w tychże formatach dokumentowych reprezentują kolejne poszczególne zagrania poprzez poszczególne instrumenty w muzyce. Istnieje również format opus.dtd, dzięki któremu możliwa jest reprezentacja wielokrotnych ruchów. W opus.dtd występują odwołania do plików z opisem pojedynczych instrumentów.

 1. <?XML version="1.0"?>
 2. <!DOCTYPE note [
 3. <!ELEMENT note (pitch, duration, voice, type, stem, lyric) 
 4. <!ELEMENT pitch (#PCDATA)>
 5. <!ELEMENT duration (#PCDATA)>
 6. <!ELEMENT voice (#PCDATA)>
 7. <!ELEMENT type (#PCDATA)>
 8. <!ELEMENT stem (#PCDATA)>
 9. <!ELEMENT lyric (#PCDATA)>
10. ]>
11. <note> 
12. <pitch> ...</pitch> 
13. <duration>2</duration> 
14. <voice>1</voice> 
15. <type>quarter</type> 
16. <stem>up</stem> 
17. <lyric number="1">...</lyric> 
18. </note>

MusicXML jest opisowym formatem, dzięki czemu z dobrze definiowanego pliku możemy otrzymać znacznie więcej informacji niż z pliku MIDI.

MIDI jest to system, w którego skład wchodzi interfejs, oprogramowanie i zestaw komend. Służy on do przekazywania informacji pomiędzy elektronicznymi instrumentami muzycznymi.

Przykład informacji muzycznej w pliku XML

 1. <measure number=”1” >
 2. <atrributes>...atrybuty miary...</atrributes> 3. <note>
 4. <pitch>
 5. <step>C</step>
 6. <octave>4</octave>
 7. </pitch>
 8. <duration>96</duration>
 9. <type>whole</type>
10. </note>
11. </measure>

Gdzie:

  • – pitch – jest wysokością tonu,
  • – duration – czas trwania nuty,
  • – type – typ nuty.

Źródło obrazu tytułowego: opracowanie własne na podstawie freeimages.com

Leave a Comment

Your email address will not be published. Required fields are marked with *

Cancel reply

Inne artykuły