MusicXML 属性解析 一

    Musicxml 是一个开放的基于XML 的音乐符号文件格式,由Reccordare 公司开发。他被设计用来做为乐谱信息的交换格式,特别是在不同的乐谱显示软件的之间进行交换。MusicXML 将整体乐曲元素和属性信息表示为一份XML 文档,他克服了另外两种格式----NIFF 格式(基于图片)和SMDL 格式(过于庞大)的兼容性差,结构复杂等许多缺点,目前他已经被很多应用软件的支持。目前很多音乐类软件都有应用。下面对它进行简单的分析。

<part id="P1">

<measure number="1">

<attributes>

<divisions>1</divisions>

<key>

<fifths>0</fifths>

</key>

<time>

<beats>4</beats>

<beat-type>4</beat-type>

</time>

<clef>

<sign>G</sign>

<line>2</line>

</clef>

</attributes>

<note>

<pitch>

<step>C</step>

<octave>4</octave>

</pitch>

<duration>4</duration>

<type>whole</type>

</note>

</measure>

</part>

    对于Measure的属性number,它表示的是此measure 处于整个乐谱中的位置,此例只有一个measure,但是实际的乐谱大多包含很多measure。

    <Attributes>这个标签一般出现在第一个measure中,表示这个乐谱的基本信息。

    <divisions> 这个标签表示一个4分音符持续的时间。这个元素与Note元素中的duration是相联系的。

    <key>表示乐谱的升降号情况,fifths为0表示不升不降,一般正数表示升调的个数,负数表示降号的个数。这         个元素还有一个标签<type>表示此调为大调(major)还是小调。

    <time>表示节拍的情况,<beat-type>表示以哪种音符为一拍。音符有2分音符,4分音符等等。

          <beat>表示每个小节有几个音符。

    <clef>表示谱号的情况。此例表示是G大调,还有F小调的情况,和C中调等等。

    <note>表示这个音节的信息。<pitch>表示这个音节的信息。<step>表示是abcdefg哪个调, <octave>表示在哪           个八度上面。<type>表示这个音符的类型,whole表示全音,即4个4分音符。<duration>表示这个音调持           续的时间,因为上面规定每个4分音符是1, 所以此时的duration就是4。

    这就是musicxml 3.0 中helloword的程序。其中都是最简单的情况,以及每个标签的属性。我会在后续的博客中

将其他情况进行分析,如果有不对之处请指正。可以留言交流。

    Musicxml 是一个开放的基于XML 的音乐符号文件格式,由Reccordare 公司开发。他被设计用来做为乐谱信息的交换格式,特别是在不同的乐谱显示软件的之间进行交换。MusicXML 将整体乐曲元素和属性信息表示为一份XML 文档,他克服了另外两种格式----NIFF 格式(基于图片)和SMDL 格式(过于庞大)的兼容性差,结构复杂等许多缺点,目前他已经被很多应用软件的支持。目前很多音乐类软件都有应用。下面对它进行简单的分析。
<part id="P1">
<measure number="1">
<attributes>
<divisions>1</divisions>
<key>
<fifths>0</fifths>
</key>
<time>
<beats>4</beats>
<beat-type>4</beat-type>
</time>
<clef>
<sign>G</sign>
<line>2</line>
</clef>
</attributes>
<note>
<pitch>
<step>C</step>
<octave>4</octave>
</pitch>
<duration>4</duration>
<type>whole</type>
</note>
</measure>
</part>
    对于Measure的属性number,它表示的是此measure 处于整个乐谱中的位置,此例只有一个measure,但是实际的乐谱大多包含很多measure。
    <Attributes>这个标签一般出现在第一个measure中,表示这个乐谱的基本信息。
    <divisions> 这个标签表示一个4分音符持续的时间。这个元素与Note元素中的duration是相联系的。
    <key>表示乐谱的升降号情况,fifths为0表示不升不降,一般正数表示升调的个数,负数表示降号的个数。这
         个元素还有一个标签<type>表示此调为大调(major)还是小调。
    <time>表示节拍的情况,<beat-type>表示以哪种音符为一拍。音符有2分音符,4分音符等等。
          <beat>表示每个小节有几个音符。
    <clef>表示谱号的情况。此例表示是G大调,还有F小调的情况,和C中调等等。
    <note>表示这个音节的信息。<pitch>表示这个音节的信息。<step>表示是abcdefg哪个调, <octave>表示在哪           个八度上面。<type>表示这个音符的类型,whole表示全音,即4个4分音符。<duration>表示这个音调持           续的时间,因为上面规定每个4分音符是1, 所以此时的duration就是4。
    这就是musicxml 3.0 中helloword的程序。其中都是最简单的情况,以及每个标签的属性。我会在后续的博客中
将其他情况进行分析,如果有不对之处请指正。可以留言交流。

猜你喜欢

转载自blog.csdn.net/alvinhuai/article/details/9009717