Music21, Alat Bantu Music Programming Berbasis Python Dari MIT.

 

Compusiciannews.com -Programming-  Music21 adalah sekumpulan alat dalam bentuk teknologi komputer yang berbasis bahasa pemrograman Python untuk membantu para akademisi dan pendengar musik menjawab pertanyaan-pertanyaan mengenai musik. Pernahkah Anda bertanya sebuah pertanyaan seperti “Bagaimana cara Bach berkarya seperti itu?” atau Saya berharap saya tahu band mana yang pertama menggunakan chord-chord dalam urutan ini,” atau “Saya akan bertaruh kita akan tahu lebih mengenai Renaissance ( Ragas India atau struktur pitch post-tonal atau bentuk menit) jika saya dapat menulis program lebih otomatis dari pada yang lainnya,”maka Music21 akan menjawab semua pertanyaan itu.

Music21 sangat mudah digunakan bahkan cenderung teramat mudah. Setelah mulai menjalankan Python dan mengetikan perintah “from music21 import *”, Anda dapat melakukan semua hal berikut hanya dengan satu baris kode Music21:

Menampilkan melodi singkat dalam notasi musik:

converter.parse(“tinynotation: 3/4 c4 d8 f g16 a g f#”).show()

 

Meng-konvert sebuah file dari format data Humdrum **kern  ke MusicXML untuk diedit di Finale atau Sibelius:

converter.parse('/users/cuthbert/docs/composition.krn').write('musicxml')

Selain itu dengan menggunakan beberapa baris kode Music21, Anda juga dapat mempersiapkan sebuah katalog tematik dari setiap musik Bach:

catalog = stream.Opus()
for workName in corpus.getBachChorales():
  work = converter.parse(workName)
  firstTS = work.flat.getTimeSignatures()[0]
  if firstTS.ratioString == '6/8':
    catalog.append(work.measureRange(0,2))
catalog.show()

Music21 diciptakan untuk framework dan teknologi seperti Humdrum, MusicXML, MuseData, MIDI, and Lilypond tetapi Music21 menggunakan kerangka yang disebut Object-Oriented sehingga membuat Music21 mampu menangani data yang kompleks. Menggunakan Music21, sekali Anda menulis sebuah program untuk menyelesaikan suatu masalah, program tersebut dapat dengan mudah menjadi modul yang dapat diadaptasikan untuk menyelesaikan masalah-masalah lain yang mirip.

Leave a Reply

Your email address will not be published. Required fields are marked *