Previous topic

music21.analysis.windowed

Next topic

music21.audioSearch.base

Table Of Contents

Table Of Contents

music21.articulations

Classes for representing and processing articulations. Specific articulations are modeled as Articulation subclasses.

A Note object has a articulations attribute. This list can be used to store one or more music21.articulation.Articulation subclasses.

As much as possible, MusicXML names are used for Articulation classes, with xxx-yyy changed to XxxYyy. For instance, “strong-accent” in MusicXML is “StrongAccent” here.

Fingering and other playing marks are found here. Fermatas, trills, etc. are found in music21.expressions.

>>> from music21 import *
>>> n1 = note.Note("D#4")
>>> n1.articulations.append(articulations.Tenuto())
>>> n1.show()

>>> c1 = chord.Chord(["C3","G4","E-5"])
>>> c1.articulations = [articulations.OrganHeel(), articulations.Accent() ]
>>> c1.show()

A longer test showing the utility of the module:

>>> from music21 import *
>>> s = stream.Stream()
>>> n1 = note.Note('c#5')
>>> n1.articulations = [articulations.Accent()]
>>> n1.quarterLength = 1.25
>>> s.append(n1)
>>> n2 = note.Note('d5')
>>> n2.articulations = [articulations.StrongAccent()]
>>> n2.quarterLength = 0.75
>>> s.append(n2)
>>> n3 = note.Note('b4')
>>> n3.articulations = [articulations.Staccato()]
>>> n3.quarterLength = 1.25
>>> n3.tie = tie.Tie('start')
>>> s.append(n3)
>>> n4 = note.Note('b4')
>>> n4.articulations = [articulations.Staccatissimo()]
>>> n4.quarterLength = 0.75
>>> s.append(n4)
>>> n5 = note.Note('a4')
>>> n5.articulations = [articulations.Tenuto()]
>>> n5.quarterLength = 1.3333333333333
>>> s.append(n5)
>>> n6 = note.Note('b-4')
>>> n6.articulations = [articulations.Staccatissimo(), articulations.Tenuto()]
>>> n6.quarterLength = 0.6666666666667
>>> s.append(n6)
>>> s.metadata = metadata.Metadata()
>>> s.metadata.title = 'Prova articolazioni' # ital: "Articulation Test"
>>> s.metadata.composer = 'Giuliano Lancioni'
>>> s.show()
_images/prova_articolazioni.png

Articulation

Inherits from: Music21Object, JSONSerializer

class music21.articulations.Articulation

Base class for all Articulation sub-classes.

>>> from music21 import *
>>> x = articulations.Articulation()
>>> x.placement = 'below'

Articulation attributes

Attributes without Documentation: placement

Attributes inherited from Music21Object: classSortOrder, isSpanner, isStream, isVariant, hideObjectOnPrint, groups, id

Articulation properties

mx

Advanced method for musicxml output. Not needed by most users.

As a getter: Returns a class (mxArticulationMark) that represents the MusicXML structure of an articulation mark.

>>> from music21 import *
>>> a = articulations.Accent()
>>> mxArticulationMark = a.mx
>>> mxArticulationMark
<accent placement=above>

As a setter: Provided an musicxml.ArticulationMark object (not an mxArticulations object) configure the music21 object.

Create both a musicxml.ArticulationMark object and a conflicting music21 object:

>>> from music21 import *
>>> mxArticulationMark = musicxml.ArticulationMark('accent')
>>> mxArticulationMark.set('placement', 'below')
>>> a = articulations.Tenuto()
>>> a.placement = 'above'

Now override the music21 object with the mxArticulationMark object’s characteristics

>>> a.mx = mxArticulationMark
>>> a._mxName
'accent'
>>> 'Tenuto' in a.classes
False
>>> 'Accent' in a.classes
True
>>> a.placement
'below'
volumeShift

Get or set the volumeShift of this Articulation. This value, between -1 and 1, that is used to shift the final Volume of the object it is attached to.

>>> from music21 import *
>>> at1 = articulations.StrongAccent()
>>> at1.volumeShift > .1
True

Properties inherited from Music21Object: activeSite, beat, beatDuration, beatStr, beatStrength, classes, derivationHierarchy, duration, isGrace, measureNumber, offset, priority, seconds

Properties inherited from JSONSerializer: json

Articulation methods

Methods inherited from Music21Object: searchActiveSiteByAttr(), getContextAttr(), setContextAttr(), addContext(), addLocation(), addLocationAndActiveSite(), freezeIds(), getAllContextsByClass(), getCommonSiteIds(), getCommonSites(), getContextByClass(), getOffsetBySite(), getSiteIds(), getSites(), getSpannerSites(), hasContext(), hasSite(), hasSpannerSite(), hasVariantSite(), isClassOrSubclass(), mergeAttributes(), next(), previous(), purgeLocations(), purgeOrphans(), purgeUndeclaredIds(), removeLocationBySite(), removeLocationBySiteId(), setOffsetBySite(), show(), splitAtDurations(), splitAtQuarterLength(), splitByQuarterLengths(), unfreezeIds(), unwrapWeakref(), wrapWeakref(), write()

Methods inherited from JSONSerializer: jsonAttributes(), jsonComponentFactory(), jsonPrint(), jsonRead(), jsonWrite()

Accent

Inherits from: DynamicArticulation, Articulation, Music21Object, JSONSerializer

class music21.articulations.Accent
>>> from music21 import *
>>> a = articulations.Accent()

Bowing

Inherits from: TechnicalIndication, Articulation, Music21Object, JSONSerializer

class music21.articulations.Bowing

BrassIndication

Inherits from: WindIndication, TechnicalIndication, Articulation, Music21Object, JSONSerializer

class music21.articulations.BrassIndication

BreathMark

Inherits from: LengthArticulation, Articulation, Music21Object, JSONSerializer

class music21.articulations.BreathMark

Caesura

Inherits from: Articulation, Music21Object, JSONSerializer

class music21.articulations.Caesura

DetachedLegato

Inherits from: LengthArticulation, Articulation, Music21Object, JSONSerializer

class music21.articulations.DetachedLegato
>>> from music21 import *
>>> a = articulations.DetachedLegato()

Doit

Inherits from: IndeterminantSlide, PitchArticulation, Articulation, Music21Object, JSONSerializer

class music21.articulations.Doit

DoubleTongue

Inherits from: TonguingIndication, WindIndication, TechnicalIndication, Articulation, Music21Object, JSONSerializer

class music21.articulations.DoubleTongue

DownBow

Inherits from: Bowing, TechnicalIndication, Articulation, Music21Object, JSONSerializer

class music21.articulations.DownBow

DynamicArticulation

Inherits from: Articulation, Music21Object, JSONSerializer

class music21.articulations.DynamicArticulation

Falloff

Inherits from: IndeterminantSlide, PitchArticulation, Articulation, Music21Object, JSONSerializer

class music21.articulations.Falloff

FretBend

Inherits from: FretIndication, TechnicalIndication, Articulation, Music21Object, JSONSerializer

class music21.articulations.FretBend

FretBend attributes

Attributes without Documentation: bendAlter, preBend, release, withBar

Attributes inherited from Articulation: placement

Attributes inherited from Music21Object: classSortOrder, isSpanner, isStream, isVariant, hideObjectOnPrint, groups, id

FretBend properties

FretBend methods

Methods inherited from Music21Object: searchActiveSiteByAttr(), getContextAttr(), setContextAttr(), addContext(), addLocation(), addLocationAndActiveSite(), freezeIds(), getAllContextsByClass(), getCommonSiteIds(), getCommonSites(), getContextByClass(), getOffsetBySite(), getSiteIds(), getSites(), getSpannerSites(), hasContext(), hasSite(), hasSpannerSite(), hasVariantSite(), isClassOrSubclass(), mergeAttributes(), next(), previous(), purgeLocations(), purgeOrphans(), purgeUndeclaredIds(), removeLocationBySite(), removeLocationBySiteId(), setOffsetBySite(), show(), splitAtDurations(), splitAtQuarterLength(), splitByQuarterLengths(), unfreezeIds(), unwrapWeakref(), wrapWeakref(), write()

Methods inherited from JSONSerializer: jsonAttributes(), jsonComponentFactory(), jsonPrint(), jsonRead(), jsonWrite()

FretIndication

Inherits from: TechnicalIndication, Articulation, Music21Object, JSONSerializer

class music21.articulations.FretIndication

FretTap

Inherits from: FretIndication, TechnicalIndication, Articulation, Music21Object, JSONSerializer

class music21.articulations.FretTap

FrettedPluck

Inherits from: FretIndication, TechnicalIndication, Articulation, Music21Object, JSONSerializer

class music21.articulations.FrettedPluck

specifies plucking fingering for fretted instruments

HammerOn

Inherits from: FretIndication, TechnicalIndication, Articulation, Music21Object, JSONSerializer

class music21.articulations.HammerOn

Harmonic

Inherits from: TechnicalIndication, Articulation, Music21Object, JSONSerializer

class music21.articulations.Harmonic

HarpFingerNails

Inherits from: HarpIndication, TechnicalIndication, Articulation, Music21Object, JSONSerializer

class music21.articulations.HarpFingerNails

musicXML – fingernails

HarpIndication

Inherits from: TechnicalIndication, Articulation, Music21Object, JSONSerializer

class music21.articulations.HarpIndication

IndeterminantSlide

Inherits from: PitchArticulation, Articulation, Music21Object, JSONSerializer

class music21.articulations.IndeterminantSlide

LengthArticulation

Inherits from: Articulation, Music21Object, JSONSerializer

class music21.articulations.LengthArticulation

NailPizzicato

Inherits from: Pizzicato, Bowing, TechnicalIndication, Articulation, Music21Object, JSONSerializer

class music21.articulations.NailPizzicato

not in MusicXML

OpenString

Inherits from: Bowing, TechnicalIndication, Articulation, Music21Object, JSONSerializer

class music21.articulations.OpenString

OrganHeel

Inherits from: OrganIndication, TechnicalIndication, Articulation, Music21Object, JSONSerializer

class music21.articulations.OrganHeel

OrganIndication

Inherits from: TechnicalIndication, Articulation, Music21Object, JSONSerializer

class music21.articulations.OrganIndication

OrganToe

Inherits from: OrganIndication, TechnicalIndication, Articulation, Music21Object, JSONSerializer

class music21.articulations.OrganToe

PitchArticulation

Inherits from: Articulation, Music21Object, JSONSerializer

class music21.articulations.PitchArticulation

Pizzicato

Inherits from: Bowing, TechnicalIndication, Articulation, Music21Object, JSONSerializer

class music21.articulations.Pizzicato

in MusicXML, Pizzicato is an element of every note. Here we represent pizzes along with all bowing marks.

Plop

Inherits from: IndeterminantSlide, PitchArticulation, Articulation, Music21Object, JSONSerializer

class music21.articulations.Plop

PullOff

Inherits from: FretIndication, TechnicalIndication, Articulation, Music21Object, JSONSerializer

class music21.articulations.PullOff

Scoop

Inherits from: IndeterminantSlide, PitchArticulation, Articulation, Music21Object, JSONSerializer

class music21.articulations.Scoop

SnapPizzicato

Inherits from: Pizzicato, Bowing, TechnicalIndication, Articulation, Music21Object, JSONSerializer

class music21.articulations.SnapPizzicato

Spiccato

Inherits from: Staccato, LengthArticulation, Articulation, Music21Object, JSONSerializer

class music21.articulations.Spiccato

A staccato note + accent in one

>>> from music21 import *
>>> a = articulations.Spiccato()

Staccatissimo

Inherits from: Staccato, LengthArticulation, Articulation, Music21Object, JSONSerializer

class music21.articulations.Staccatissimo

A very short note (derived from staccato), usually represented as a wedge.

>>> from music21 import *
>>> a = articulations.Staccatissimo()

Staccato

Inherits from: LengthArticulation, Articulation, Music21Object, JSONSerializer

class music21.articulations.Staccato
>>> from music21 import *
>>> a = articulations.Staccato()

Stopped

Inherits from: WindIndication, TechnicalIndication, Articulation, Music21Object, JSONSerializer

class music21.articulations.Stopped

Stress

Inherits from: DynamicArticulation, Articulation, Music21Object, JSONSerializer

class music21.articulations.Stress

StringFingering

Inherits from: Bowing, TechnicalIndication, Articulation, Music21Object, JSONSerializer

class music21.articulations.StringFingering

MusicXML – fingering

StringHarmonic

Inherits from: Bowing, Harmonic, TechnicalIndication, Articulation, Music21Object, JSONSerializer

class music21.articulations.StringHarmonic

StringThumbPosition

Inherits from: Bowing, TechnicalIndication, Articulation, Music21Object, JSONSerializer

class music21.articulations.StringThumbPosition

MusicXML – thumb-position

StrongAccent

Inherits from: Accent, DynamicArticulation, Articulation, Music21Object, JSONSerializer

class music21.articulations.StrongAccent
>>> from music21 import *
>>> a = articulations.StrongAccent()

TechnicalIndication

Inherits from: Articulation, Music21Object, JSONSerializer

class music21.articulations.TechnicalIndication

TechnicalIndications (MusicXML: technical) give performance indications specific to different instrument types, such as harmonics or bowing.

Tenuto

Inherits from: LengthArticulation, Articulation, Music21Object, JSONSerializer

class music21.articulations.Tenuto
>>> from music21 import *
>>> a = articulations.Tenuto()

TimbreArticulation

Inherits from: Articulation, Music21Object, JSONSerializer

class music21.articulations.TimbreArticulation

TonguingIndication

Inherits from: WindIndication, TechnicalIndication, Articulation, Music21Object, JSONSerializer

class music21.articulations.TonguingIndication

TripleTongue

Inherits from: TonguingIndication, WindIndication, TechnicalIndication, Articulation, Music21Object, JSONSerializer

class music21.articulations.TripleTongue

Unstress

Inherits from: DynamicArticulation, Articulation, Music21Object, JSONSerializer

class music21.articulations.Unstress

UpBow

Inherits from: Bowing, TechnicalIndication, Articulation, Music21Object, JSONSerializer

class music21.articulations.UpBow

WindIndication

Inherits from: TechnicalIndication, Articulation, Music21Object, JSONSerializer

class music21.articulations.WindIndication

WoodwindIndication

Inherits from: WindIndication, TechnicalIndication, Articulation, Music21Object, JSONSerializer

class music21.articulations.WoodwindIndication