The <tremolo> element

Parent element: <ornaments>

The <tremolo> element can be used to indicate single-note, double-note, or unmeasured tremolos. The text of the element indicates the number of tremolo marks and is an integer from 0 to 8. Note that the number of attached beams is not included in this value, but is represented separately using the <beam element>. The value should be 0 for unmeasured tremolos.

When using double-note tremolos, the duration of each note in the tremolo should correspond to half of the notated type value. A <time-modification> element should also be added with an <actual-notes> value of 2 and a <normal-notes> value of 1. If used within a tuplet, this 2/1 ratio should be multiplied by the existing tuplet ratio.

The smufl attribute specifies the glyph to use from the Standard Music Font Layout (SMuFL) Tremolos range for an unmeasured tremolo. It is ignored for other tremolo types. The SMuFL buzzRoll glyph is used if the attribute is missing.

Using repeater beams for indicating tremolos is deprecated as of Version 3.0.

https://www.w3.org/2021/06/musicxml40/musicxml-reference/elements/tremolo/

Hierarchy

  • Tremolo

Implements

Constructors

Properties

attributes: TremoloAttributes
contents: TremoloContents
schema: {
    attributes: {
        color: {
            type: "optional";
            value: {
                pattern: RegExp;
                type: "regex";
                zero: "#000000";
            };
        };
        default-x: {
            label: "default-x";
            type: "label";
            value: {
                type: "optional";
                value: {
                    max: number;
                    min: number;
                    type: "float";
                };
            };
        };
        default-y: {
            label: "default-y";
            type: "label";
            value: {
                type: "optional";
                value: {
                    max: number;
                    min: number;
                    type: "float";
                };
            };
        };
        font-family: {
            type: "optional";
            value: {
                pattern: RegExp;
                type: "regex";
                zero: " ";
            };
        };
        font-size: {
            type: "optional";
            value: {
                choices: readonly [{
                    choices: readonly ["xx-small", "x-small", "small", "medium", "large", "x-large", "xx-large"];
                    type: "choices";
                }, {
                    max: number;
                    min: number;
                    type: "float";
                }];
                type: "choices";
            };
        };
        font-style: {
            type: "optional";
            value: {
                choices: readonly ["normal", "italic"];
                type: "choices";
            };
        };
        font-weight: {
            type: "optional";
            value: {
                choices: readonly ["normal", "bold"];
                type: "choices";
            };
        };
        placement: {
            type: "optional";
            value: {
                choices: readonly ["above", "below"];
                type: "choices";
            };
        };
        relative-x: {
            label: "relative-x";
            type: "label";
            value: {
                type: "optional";
                value: {
                    max: number;
                    min: number;
                    type: "float";
                };
            };
        };
        relative-y: {
            label: "relative-y";
            type: "label";
            value: {
                type: "optional";
                value: {
                    max: number;
                    min: number;
                    type: "float";
                };
            };
        };
        smufl: {
            type: "optional";
            value: {
                type: "string";
            };
        };
        type: {
            type: "optional";
            value: {
                choices: readonly ["start", "stop", "single", "unmeasured"];
                type: "choices";
            };
        };
    };
    contents: readonly [{
        type: "required";
        value: {
            label: "tremolo-marks";
            type: "label";
            value: {
                max: 8;
                min: 0;
                type: "int";
            };
        };
    }];
    name: "tremolo";
} = Tremolo.schema

Type declaration

  • Readonly attributes: {
        color: {
            type: "optional";
            value: {
                pattern: RegExp;
                type: "regex";
                zero: "#000000";
            };
        };
        default-x: {
            label: "default-x";
            type: "label";
            value: {
                type: "optional";
                value: {
                    max: number;
                    min: number;
                    type: "float";
                };
            };
        };
        default-y: {
            label: "default-y";
            type: "label";
            value: {
                type: "optional";
                value: {
                    max: number;
                    min: number;
                    type: "float";
                };
            };
        };
        font-family: {
            type: "optional";
            value: {
                pattern: RegExp;
                type: "regex";
                zero: " ";
            };
        };
        font-size: {
            type: "optional";
            value: {
                choices: readonly [{
                    choices: readonly ["xx-small", "x-small", "small", "medium", "large", "x-large", "xx-large"];
                    type: "choices";
                }, {
                    max: number;
                    min: number;
                    type: "float";
                }];
                type: "choices";
            };
        };
        font-style: {
            type: "optional";
            value: {
                choices: readonly ["normal", "italic"];
                type: "choices";
            };
        };
        font-weight: {
            type: "optional";
            value: {
                choices: readonly ["normal", "bold"];
                type: "choices";
            };
        };
        placement: {
            type: "optional";
            value: {
                choices: readonly ["above", "below"];
                type: "choices";
            };
        };
        relative-x: {
            label: "relative-x";
            type: "label";
            value: {
                type: "optional";
                value: {
                    max: number;
                    min: number;
                    type: "float";
                };
            };
        };
        relative-y: {
            label: "relative-y";
            type: "label";
            value: {
                type: "optional";
                value: {
                    max: number;
                    min: number;
                    type: "float";
                };
            };
        };
        smufl: {
            type: "optional";
            value: {
                type: "string";
            };
        };
        type: {
            type: "optional";
            value: {
                choices: readonly ["start", "stop", "single", "unmeasured"];
                type: "choices";
            };
        };
    }
    • Readonly color: {
          type: "optional";
          value: {
              pattern: RegExp;
              type: "regex";
              zero: "#000000";
          };
      }
      • Readonly type: "optional"
      • Readonly value: {
            pattern: RegExp;
            type: "regex";
            zero: "#000000";
        }
        • Readonly pattern: RegExp
        • Readonly type: "regex"
        • Readonly zero: "#000000"
    • Readonly default-x: {
          label: "default-x";
          type: "label";
          value: {
              type: "optional";
              value: {
                  max: number;
                  min: number;
                  type: "float";
              };
          };
      }
      • Readonly label: "default-x"
      • Readonly type: "label"
      • Readonly value: {
            type: "optional";
            value: {
                max: number;
                min: number;
                type: "float";
            };
        }
        • Readonly type: "optional"
        • Readonly value: {
              max: number;
              min: number;
              type: "float";
          }
          • Readonly max: number
          • Readonly min: number
          • Readonly type: "float"
    • Readonly default-y: {
          label: "default-y";
          type: "label";
          value: {
              type: "optional";
              value: {
                  max: number;
                  min: number;
                  type: "float";
              };
          };
      }
      • Readonly label: "default-y"
      • Readonly type: "label"
      • Readonly value: {
            type: "optional";
            value: {
                max: number;
                min: number;
                type: "float";
            };
        }
        • Readonly type: "optional"
        • Readonly value: {
              max: number;
              min: number;
              type: "float";
          }
          • Readonly max: number
          • Readonly min: number
          • Readonly type: "float"
    • Readonly font-family: {
          type: "optional";
          value: {
              pattern: RegExp;
              type: "regex";
              zero: " ";
          };
      }
      • Readonly type: "optional"
      • Readonly value: {
            pattern: RegExp;
            type: "regex";
            zero: " ";
        }
        • Readonly pattern: RegExp
        • Readonly type: "regex"
        • Readonly zero: " "
    • Readonly font-size: {
          type: "optional";
          value: {
              choices: readonly [{
                  choices: readonly ["xx-small", "x-small", "small", "medium", "large", "x-large", "xx-large"];
                  type: "choices";
              }, {
                  max: number;
                  min: number;
                  type: "float";
              }];
              type: "choices";
          };
      }
      • Readonly type: "optional"
      • Readonly value: {
            choices: readonly [{
                choices: readonly ["xx-small", "x-small", "small", "medium", "large", "x-large", "xx-large"];
                type: "choices";
            }, {
                max: number;
                min: number;
                type: "float";
            }];
            type: "choices";
        }
        • Readonly choices: readonly [{
              choices: readonly ["xx-small", "x-small", "small", "medium", "large", "x-large", "xx-large"];
              type: "choices";
          }, {
              max: number;
              min: number;
              type: "float";
          }]
        • Readonly type: "choices"
    • Readonly font-style: {
          type: "optional";
          value: {
              choices: readonly ["normal", "italic"];
              type: "choices";
          };
      }
      • Readonly type: "optional"
      • Readonly value: {
            choices: readonly ["normal", "italic"];
            type: "choices";
        }
        • Readonly choices: readonly ["normal", "italic"]
        • Readonly type: "choices"
    • Readonly font-weight: {
          type: "optional";
          value: {
              choices: readonly ["normal", "bold"];
              type: "choices";
          };
      }
      • Readonly type: "optional"
      • Readonly value: {
            choices: readonly ["normal", "bold"];
            type: "choices";
        }
        • Readonly choices: readonly ["normal", "bold"]
        • Readonly type: "choices"
    • Readonly placement: {
          type: "optional";
          value: {
              choices: readonly ["above", "below"];
              type: "choices";
          };
      }
      • Readonly type: "optional"
      • Readonly value: {
            choices: readonly ["above", "below"];
            type: "choices";
        }
        • Readonly choices: readonly ["above", "below"]
        • Readonly type: "choices"
    • Readonly relative-x: {
          label: "relative-x";
          type: "label";
          value: {
              type: "optional";
              value: {
                  max: number;
                  min: number;
                  type: "float";
              };
          };
      }
      • Readonly label: "relative-x"
      • Readonly type: "label"
      • Readonly value: {
            type: "optional";
            value: {
                max: number;
                min: number;
                type: "float";
            };
        }
        • Readonly type: "optional"
        • Readonly value: {
              max: number;
              min: number;
              type: "float";
          }
          • Readonly max: number
          • Readonly min: number
          • Readonly type: "float"
    • Readonly relative-y: {
          label: "relative-y";
          type: "label";
          value: {
              type: "optional";
              value: {
                  max: number;
                  min: number;
                  type: "float";
              };
          };
      }
      • Readonly label: "relative-y"
      • Readonly type: "label"
      • Readonly value: {
            type: "optional";
            value: {
                max: number;
                min: number;
                type: "float";
            };
        }
        • Readonly type: "optional"
        • Readonly value: {
              max: number;
              min: number;
              type: "float";
          }
          • Readonly max: number
          • Readonly min: number
          • Readonly type: "float"
    • Readonly smufl: {
          type: "optional";
          value: {
              type: "string";
          };
      }
      • Readonly type: "optional"
      • Readonly value: {
            type: "string";
        }
        • Readonly type: "string"
    • Readonly type: {
          type: "optional";
          value: {
              choices: readonly ["start", "stop", "single", "unmeasured"];
              type: "choices";
          };
      }
      • Readonly type: "optional"
      • Readonly value: {
            choices: readonly ["start", "stop", "single", "unmeasured"];
            type: "choices";
        }
        • Readonly choices: readonly ["start", "stop", "single", "unmeasured"]
        • Readonly type: "choices"
  • Readonly contents: readonly [{
        type: "required";
        value: {
            label: "tremolo-marks";
            type: "label";
            value: {
                max: 8;
                min: 0;
                type: "int";
            };
        };
    }]
  • Readonly name: "tremolo"
schema: {
    attributes: {
        color: {
            type: "optional";
            value: {
                pattern: RegExp;
                type: "regex";
                zero: "#000000";
            };
        };
        default-x: {
            label: "default-x";
            type: "label";
            value: {
                type: "optional";
                value: {
                    max: number;
                    min: number;
                    type: "float";
                };
            };
        };
        default-y: {
            label: "default-y";
            type: "label";
            value: {
                type: "optional";
                value: {
                    max: number;
                    min: number;
                    type: "float";
                };
            };
        };
        font-family: {
            type: "optional";
            value: {
                pattern: RegExp;
                type: "regex";
                zero: " ";
            };
        };
        font-size: {
            type: "optional";
            value: {
                choices: readonly [{
                    choices: readonly ["xx-small", "x-small", "small", "medium", "large", "x-large", "xx-large"];
                    type: "choices";
                }, {
                    max: number;
                    min: number;
                    type: "float";
                }];
                type: "choices";
            };
        };
        font-style: {
            type: "optional";
            value: {
                choices: readonly ["normal", "italic"];
                type: "choices";
            };
        };
        font-weight: {
            type: "optional";
            value: {
                choices: readonly ["normal", "bold"];
                type: "choices";
            };
        };
        placement: {
            type: "optional";
            value: {
                choices: readonly ["above", "below"];
                type: "choices";
            };
        };
        relative-x: {
            label: "relative-x";
            type: "label";
            value: {
                type: "optional";
                value: {
                    max: number;
                    min: number;
                    type: "float";
                };
            };
        };
        relative-y: {
            label: "relative-y";
            type: "label";
            value: {
                type: "optional";
                value: {
                    max: number;
                    min: number;
                    type: "float";
                };
            };
        };
        smufl: {
            type: "optional";
            value: {
                type: "string";
            };
        };
        type: {
            type: "optional";
            value: {
                choices: readonly ["start", "stop", "single", "unmeasured"];
                type: "choices";
            };
        };
    };
    contents: readonly [{
        type: "required";
        value: {
            label: "tremolo-marks";
            type: "label";
            value: {
                max: 8;
                min: 0;
                type: "int";
            };
        };
    }];
    name: "tremolo";
} = ...

Type declaration

  • Readonly attributes: {
        color: {
            type: "optional";
            value: {
                pattern: RegExp;
                type: "regex";
                zero: "#000000";
            };
        };
        default-x: {
            label: "default-x";
            type: "label";
            value: {
                type: "optional";
                value: {
                    max: number;
                    min: number;
                    type: "float";
                };
            };
        };
        default-y: {
            label: "default-y";
            type: "label";
            value: {
                type: "optional";
                value: {
                    max: number;
                    min: number;
                    type: "float";
                };
            };
        };
        font-family: {
            type: "optional";
            value: {
                pattern: RegExp;
                type: "regex";
                zero: " ";
            };
        };
        font-size: {
            type: "optional";
            value: {
                choices: readonly [{
                    choices: readonly ["xx-small", "x-small", "small", "medium", "large", "x-large", "xx-large"];
                    type: "choices";
                }, {
                    max: number;
                    min: number;
                    type: "float";
                }];
                type: "choices";
            };
        };
        font-style: {
            type: "optional";
            value: {
                choices: readonly ["normal", "italic"];
                type: "choices";
            };
        };
        font-weight: {
            type: "optional";
            value: {
                choices: readonly ["normal", "bold"];
                type: "choices";
            };
        };
        placement: {
            type: "optional";
            value: {
                choices: readonly ["above", "below"];
                type: "choices";
            };
        };
        relative-x: {
            label: "relative-x";
            type: "label";
            value: {
                type: "optional";
                value: {
                    max: number;
                    min: number;
                    type: "float";
                };
            };
        };
        relative-y: {
            label: "relative-y";
            type: "label";
            value: {
                type: "optional";
                value: {
                    max: number;
                    min: number;
                    type: "float";
                };
            };
        };
        smufl: {
            type: "optional";
            value: {
                type: "string";
            };
        };
        type: {
            type: "optional";
            value: {
                choices: readonly ["start", "stop", "single", "unmeasured"];
                type: "choices";
            };
        };
    }
    • Readonly color: {
          type: "optional";
          value: {
              pattern: RegExp;
              type: "regex";
              zero: "#000000";
          };
      }
      • Readonly type: "optional"
      • Readonly value: {
            pattern: RegExp;
            type: "regex";
            zero: "#000000";
        }
        • Readonly pattern: RegExp
        • Readonly type: "regex"
        • Readonly zero: "#000000"
    • Readonly default-x: {
          label: "default-x";
          type: "label";
          value: {
              type: "optional";
              value: {
                  max: number;
                  min: number;
                  type: "float";
              };
          };
      }
      • Readonly label: "default-x"
      • Readonly type: "label"
      • Readonly value: {
            type: "optional";
            value: {
                max: number;
                min: number;
                type: "float";
            };
        }
        • Readonly type: "optional"
        • Readonly value: {
              max: number;
              min: number;
              type: "float";
          }
          • Readonly max: number
          • Readonly min: number
          • Readonly type: "float"
    • Readonly default-y: {
          label: "default-y";
          type: "label";
          value: {
              type: "optional";
              value: {
                  max: number;
                  min: number;
                  type: "float";
              };
          };
      }
      • Readonly label: "default-y"
      • Readonly type: "label"
      • Readonly value: {
            type: "optional";
            value: {
                max: number;
                min: number;
                type: "float";
            };
        }
        • Readonly type: "optional"
        • Readonly value: {
              max: number;
              min: number;
              type: "float";
          }
          • Readonly max: number
          • Readonly min: number
          • Readonly type: "float"
    • Readonly font-family: {
          type: "optional";
          value: {
              pattern: RegExp;
              type: "regex";
              zero: " ";
          };
      }
      • Readonly type: "optional"
      • Readonly value: {
            pattern: RegExp;
            type: "regex";
            zero: " ";
        }
        • Readonly pattern: RegExp
        • Readonly type: "regex"
        • Readonly zero: " "
    • Readonly font-size: {
          type: "optional";
          value: {
              choices: readonly [{
                  choices: readonly ["xx-small", "x-small", "small", "medium", "large", "x-large", "xx-large"];
                  type: "choices";
              }, {
                  max: number;
                  min: number;
                  type: "float";
              }];
              type: "choices";
          };
      }
      • Readonly type: "optional"
      • Readonly value: {
            choices: readonly [{
                choices: readonly ["xx-small", "x-small", "small", "medium", "large", "x-large", "xx-large"];
                type: "choices";
            }, {
                max: number;
                min: number;
                type: "float";
            }];
            type: "choices";
        }
        • Readonly choices: readonly [{
              choices: readonly ["xx-small", "x-small", "small", "medium", "large", "x-large", "xx-large"];
              type: "choices";
          }, {
              max: number;
              min: number;
              type: "float";
          }]
        • Readonly type: "choices"
    • Readonly font-style: {
          type: "optional";
          value: {
              choices: readonly ["normal", "italic"];
              type: "choices";
          };
      }
      • Readonly type: "optional"
      • Readonly value: {
            choices: readonly ["normal", "italic"];
            type: "choices";
        }
        • Readonly choices: readonly ["normal", "italic"]
        • Readonly type: "choices"
    • Readonly font-weight: {
          type: "optional";
          value: {
              choices: readonly ["normal", "bold"];
              type: "choices";
          };
      }
      • Readonly type: "optional"
      • Readonly value: {
            choices: readonly ["normal", "bold"];
            type: "choices";
        }
        • Readonly choices: readonly ["normal", "bold"]
        • Readonly type: "choices"
    • Readonly placement: {
          type: "optional";
          value: {
              choices: readonly ["above", "below"];
              type: "choices";
          };
      }
      • Readonly type: "optional"
      • Readonly value: {
            choices: readonly ["above", "below"];
            type: "choices";
        }
        • Readonly choices: readonly ["above", "below"]
        • Readonly type: "choices"
    • Readonly relative-x: {
          label: "relative-x";
          type: "label";
          value: {
              type: "optional";
              value: {
                  max: number;
                  min: number;
                  type: "float";
              };
          };
      }
      • Readonly label: "relative-x"
      • Readonly type: "label"
      • Readonly value: {
            type: "optional";
            value: {
                max: number;
                min: number;
                type: "float";
            };
        }
        • Readonly type: "optional"
        • Readonly value: {
              max: number;
              min: number;
              type: "float";
          }
          • Readonly max: number
          • Readonly min: number
          • Readonly type: "float"
    • Readonly relative-y: {
          label: "relative-y";
          type: "label";
          value: {
              type: "optional";
              value: {
                  max: number;
                  min: number;
                  type: "float";
              };
          };
      }
      • Readonly label: "relative-y"
      • Readonly type: "label"
      • Readonly value: {
            type: "optional";
            value: {
                max: number;
                min: number;
                type: "float";
            };
        }
        • Readonly type: "optional"
        • Readonly value: {
              max: number;
              min: number;
              type: "float";
          }
          • Readonly max: number
          • Readonly min: number
          • Readonly type: "float"
    • Readonly smufl: {
          type: "optional";
          value: {
              type: "string";
          };
      }
      • Readonly type: "optional"
      • Readonly value: {
            type: "string";
        }
        • Readonly type: "string"
    • Readonly type: {
          type: "optional";
          value: {
              choices: readonly ["start", "stop", "single", "unmeasured"];
              type: "choices";
          };
      }
      • Readonly type: "optional"
      • Readonly value: {
            choices: readonly ["start", "stop", "single", "unmeasured"];
            type: "choices";
        }
        • Readonly choices: readonly ["start", "stop", "single", "unmeasured"]
        • Readonly type: "choices"
  • Readonly contents: readonly [{
        type: "required";
        value: {
            label: "tremolo-marks";
            type: "label";
            value: {
                max: 8;
                min: 0;
                type: "int";
            };
        };
    }]
  • Readonly name: "tremolo"

Methods

  • Gets

    Returns null | number | "small" | "large" | "xx-small" | "x-small" | "medium" | "x-large" | "xx-large"

  • Gets

    Returns null | "start" | "stop" | "single" | "unmeasured"

Generated using TypeDoc