Dies ist eine alte Version des Dokuments!
Die wichtigsten music21-Befehle im Überblick
(1) Umgang mit Dateien
sBach = converter.parse('https://analyse.hfm-weimar.de/database/04/BaJoSe_BWV846_COM_COM_DasWohltem_004_00816.xml')
# lädt das Präludium C-Dur aus dem Wohltemperierten Klavier als Variable 'sBach'
sBach.show()
# Noten werden in MuScore angezeigt
sBach.show('text')
# Noteninformationen in musicxml-Format
sBach.show('midi')
# Noten werden als midi abgespielt
Auswahl von Takten / Stimmen:
a = sBach.parts[0] # wählt die erste Stimme (hier: rechte Hand) als Variable 'a' b = sBach.measures(4,7) # wählt Takt 4 bis 7 als Variable 'b' c = sBach.parts[0].measures(2,4) # wählt Takt 2 bis 4 der ersten Stimme als c Alternative: sBach.measures(2,4).show() # wählt aus und zeigt an.
Anzahl der Elemente anzeigen:
len(sBach) # nennt die Anzahl der Elemente auf der nächsttieferen Ebene len(sBach.flat) # nennt die Anzahl aller enthaltenen Elemente, z.B. Noten
Speichern der Auswahl:
a.write() # Speichert die Variable 'a' (s. oben: die erste Stimme); alternativ: sBach.parts[0].write() a.write(‘midi‘) # speichert 'a' als Midi-File
(2) Ansicht von Graphiken:
sBach.plot('pianoroll')
sBach.parts[2].plot('pianoroll')
# nur die zweite Stimme wird angezeigt
sBach.measure(2,5).plot('pianoroll')
# nur Takt 2-5 werden angezeigt
graph.plotStream(sBach)
# = alternative Methode
sBach.plot('histogram')
# Histogramm der Tonhöhenhäufigkeiten
(3) Schreiben von Noten
n1 = note.Note('g4', type='quarter')
n2 = note.Note('a4', type='quarter')
n3 = note.Note('g4', type='half')
# Noten werden measures verbunden („gestreamt“), measures zu parts und parts zu scores:
m1 = stream.Measure()
m1.append([n1, n2, n3])
p1 = stream.Part
p1.append([m1])
(4) Chordify: Schreibt Partituren in Akkordfolgen um
chords = music.chordify() dann: chords.show() oder chords.write()