music21

Dies ist eine alte Version des Dokuments!


(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()
  • music21.1623395117.txt.gz
  • Zuletzt geändert: 2021/06/11 07:05
  • von martin