Está en la página 1de 11

SeminarNasionalTeknologi2007(SNT2007)

Yogyakarta,24November2007

ISSN:19789777

PROGRAM KONVERSI NOT BALOK


DENGAN STRUKTUR MusicXML KE NOT ANGKA

Lukas Chrisantyo A.A., S.Kom.1, Katon Wijana, S.Kom., M.T.2, Restyandito, S.Kom., MSIS.3
1

Mahasiswa Teknik Informatika Universitas Kristen Duta Wacana, Yogyakarta.


1

Dosen Sistem Informasi Universitas Kristen Duta Wacana, Yogyakarta.

Dosen Teknik Informatika Unversitas Kristen Duta Wacana, Yogyakarta.

ABSTRAK
Notasi musik adalah sarana untuk menyimpan hasil karya musik seseorang. Standar
penulisan notasi yang berlaku secara internasional adalah notasi balok. Bagi sebagian pemusik
terutama penyanyi di Indonesia, membaca not balok adalah hal yang susah bila dibandingkan
dengan membaca not angka. Hal ini menyebabkan harus ada konversi yang bila dilakukan secara
manual adalah pekerjaan yang kurang efektif dan efisien.
Melihat kondisi tersebut, penulis merancang suatu program bantu untuk mengkonversi not
balok ke not angka dengan batasan utama untuk satu jenis suara saja (monofon). Sebagai format
berkas not balok, penulis menggunakan format file MusicXML dari Recordare. Sebagai
pembanding, penulis juga menyertakan format berkas sumber dari file MIDI maupun menuliskan
not balok secara manual di editor yang kemudian semuanya akan dikonversi ke not angka. Proses
konversi menggunakan konsep dasar interval nada dan dibantu dengan penggunaan array statis
untuk menyimpan informasi not angka serta untuk mempermudah penggeseran nada dasar. Pada
konversi MusicXML disediakan juga kemampuan untuk menyesuaikan nada dasar apabila pada
lagu didapati nada yang berada di luar jangkauan vokal manusia.
Hasil konversi ditampilkan dengan bantuan font Nada-Arial yang dirancang sendiri untuk
memenuhi kebutuhan tampilan not angka. Hasil konversi disimpan dalam format dokumen
Microsoft Word agar pengerjaan selanjutnya bisa lebih fleksibel. Bila dilakukan pengujian secara
intuitif, konversi MusicXML menghasilkan keluaran not angka yang akurat.
Kata kunci: software engineering, conversion of musical notation, MusicXML
1. PENDAHULUAN

Mahasiswa Teknik Informatika Universitas Kristen Duta Wacana, Yogyakarta.


Dosen Sistem Informasi Universitas Kristen Duta Wacana, Yogyakarta.
3
Dosen Teknik Informatika Unversitas Kristen Duta Wacana, Yogyakarta.
2

D1

SeminarNasionalTeknologi2007(SNT2007)

ISSN:19789777
Yogyakarta,24November2007

Dalam dunia seni musik, notasi merupakan salah satu komponen yang penting. Notasi
musik adalah sarana untuk menyimpan hasil karya musik seseorang. Lagu-lagu klasik yang rumit
tidak akan pernah bisa dimainkan lagi pada zaman sekarang apabila tidak dituliskan dalam bentuk
notasi musik. Walaupun saat ini media rekam sudah berkembang pesat, notasi musik yang baik
tetap digunakan untuk mendukung proses edukasi musik dan cara memainkan musik itu sendiri.
Permasalahan yang muncul adalah susahnya belajar not balok yang sudah ratusan tahun
menjadi standar notasi musik di seluruh dunia. Perlu ketelatenan dan kesungguhan dalam
mempelajari not balok. Untuk itu diciptakanlah not angka yang lebih mudah dipelajari bagi kaum
awam musik. Dari sinilah tercipta perbedaan antara pemusik yang menggunakan not balok dan not
angka. Pemusik yang sudah terbiasa memakai not balok, seringkali kesulitan memakai not angka.
Hal yang sama juga terjadi sebaliknya. Penyanyi paduan suara sulit sekali diajak membaca not
balok walaupun kemampuannya membaca not angka tidak diragukan lagi. Oleh karena
permasalahan di atas, dibutuhkan penerjemah yang mampu mengkonversi dua jenis notasi ini.
Secara umum, perumusan masalah mencakup konversi not balok dengan bantuan komputer
dari file berstruktur MusicXML ke not angka, dengan pembanding masukan not balok dari file
MIDI dan menulis secara manual di Editor Not Balok.

2. PERANCANGAN KONVERSI
Sesuai fungsionalitasnya, program ini memiliki masukan atau input sebanyak tiga macam,
yaitu file MusicXML, file MIDI format 0 atau 1, dan masukan mouse untuk meletakkan gambargambar not balok dan simbol-simbol yang diperlukan. Piranti input keyboard digunakan untuk
memasukkan judul lagu pada editor not balok.
File MusicXML dapat dibuat oleh berbagai macam program penyunting not balok yang
umum dipakai di seluruh dunia, seperti Finale, Encore, Sibelius, dan lain sebagainya. Cara
pembuatannya sangat mudah, user tinggal menyimpan not balok yang sudah disusun dengan cara
mengekspor ke MusicXML.
File MIDI format 0 atau 1 juga dapat dibuat oleh berbagai macam program penyunting not
balok atau alat musik keyboard, gitar, organ, clavinova, dan lain sebagainya asalkan mempunyai
fasilitas MIDI. Karena karakteristik file MIDI yang menyimpan notasi secara timewise, maka dapat
diprediksi hasil konversi kemungkinan kurang sempurna jika dibandingkan hasil konversi file
MusicXML.
File MusicXML yang akan dikonversi dibuka terlebih dahulu menggunakan komponen
XMLDocument milik Delphi dengan perintah XMLDocument1.LoadFromFile(OpenDialog1
.FileName). Setelah file berhasil dibuka, datanya secara otomatis dimuat ke memori dengan
struktur hirarkis/tree sesuai dengan ciri file XML. Untuk mencari value dari node yang diinginkan,
kita bisa menggunakan metode:

D2

SeminarNasionalTeknologi2007(SNT2007)

ISSN:19789777
Yogyakarta,24November2007

Setelah file MusicXML dibuka, digunakan langkah-langkah pemrosesan dengan acuan sebagai
berikut:
- Judul lagu terdapat pada:
XMLDocument1.DocumentElement.ChildValues['movement-title']
- Nama pengarang terdapat pada:
XMLDocument1.DocumentElement.ChildNodes.Nodes['identification']
.ChildValues['creator']
- Nama pengarang terdapat pada:
XMLDocument1.DocumentElement.ChildNodes.Nodes['identification']
.ChildValues['creator']
- Nada dasar terdapat pada:
XMLDocument1.DocumentElement.ChildNodes.Nodes['part']
.ChildNodes.Nodes['measure'].ChildNodes.Nodes['attributes']
.ChildNodes.Nodes['key'].ChildValues['fifths']
- Jenis birama terdapat pada:
XMLDocument1.DocumentElement.ChildNodes.Nodes['part']
.ChildNodes.Nodes['measure'].ChildNodes.Nodes['attributes']
.ChildNodes.Nodes['time'].ChildValues['beats']
dan
XMLDocument1.DocumentElement.ChildNodes.Nodes['part']
.ChildNodes.Nodes['measure'].ChildNodes.Nodes['attributes']
.ChildNodes.Nodes['time'].ChildValues['beat-type']
- Tempo relatif terdapat pada:
XMLDocument1.DocumentElement.ChildNodes.Nodes['part']

D3

SeminarNasionalTeknologi2007(SNT2007)

Yogyakarta,24November2007

.ChildNodes.Nodes['measure'].ChildNodes.Nodes['direction']

ISSN:19789777

.ChildNodes.Nodes['direction-type'].ChildValues['words']
- Tempo mutlak (Metronome Maelzel) terdapat pada:
XMLDocument1.DocumentElement.ChildNodes.Nodes['part']
.ChildNodes.Nodes['measure'].ChildNodes.Nodes['direction']
.ChildNodes.Nodes['direction-type'].Attributes['tempo']
- Informasi notasi terdapat pada node part>measure>note.

Untuk mengkonversi notasi balok digunakan ketentuan jika nada dasar tidak menggunakan tanda
kromatis (0 kruis dan 0 mol) atau nilai fifths = 0 yang lazim disebut Do=C maka not angka yang
sepadan adalah:

Tabel 1: Padanan not balok dengan not angka pada nada dasar Do=C

Untuk membantu proses konversi, digunakan struktur data berupa array, antara lain:
1. ArrayNDsr
ArrayNDsr berisi elemen-elemen not balok nada dasar.

Tabel 2: Elemen-elemen ArrayNDsr

2. ArrayNA

D4

SeminarNasionalTeknologi2007(SNT2007)

ISSN:19789777
Yogyakarta,24November2007

ArrayNA berisi elemen-elemen not angka dari not terendah hingga not tertinggi. Elemen
ini berupa kode font NADA-ARIAL untuk menampilkan bentuk not angka yang diinginkan.
Tabel 3: Elemen-elemen ArrayNA

3. ArrayNB
ArrayNB berisi elemen-elemen not balok dari not terendah hingga tertinggi. ArrayNB
berfungsi membantu pencarian not yang berada di luar batas vokal manusia, yaitu G3 hingga F5.

Tabel 4: Elemen-elemen ArrayNB

D5

SeminarNasionalTeknologi2007(SNT2007)
Yogyakarta,24November2007

ISSN:19789777

Setelah mengambil informasi-informasi awal, program akan memproses informasiinformasi notatif. Pertama akan dilakukan pengecekan not-not yang terlalu rendah atau tinggi dari
birama awal hingga akhir. Not yang terlalu rendah diprioritaskan karena berdasarkan teori vokal
bahwa batas bawah suara manusia bersifat permanen dan tidak bisa direndahkan lagi. Hal ini
berbeda dengan batas atas suara manusia yang bisa dilatih agar bisa menyanyikan nada yang lebih
tinggi dari biasanya. Bila ditemukan not yang di luar batas, maka user akan diberi pilihan untuk
mengubah nada dasar atau tidak.

Setelah pengecekan batas not selesai, program mulai mengkonversi not dari birama awal
hingga akhir dengan urutan:
1. Cek ulang nada dasar, hal ini sebagai antisipasi bila ada perubahan nada dasar di tengah-tengah
lagu (lazim disebut modulasi).
2. Konversi tanda diam (rest).
3. Konversi pitch tanpa mempedulikan nada dasar lebih dahulu (misal C dikonversi jadi 1/do, D
jadi 2/re, dan seterusnya sesuai oktaf). Kemudian disesuaikan dengan nada dasar yang telah
didapat dari langkah 1. Penyesuaian ini dilakukan dengan cara menggeser pointer ArrayNA
sebanyak selisih jarak dari nada dasar C sampai nada dasar yang dimaksud, atau bisa dilihat
pada tabel berikut:
Tabel 5: Tabel interval antar nada dasar
Nada
Nada
Kromatis
Step
Kromatis
Step
Dasar
Dasar

4.
5.
6.
7.

0 kruis

F#/Gb

6 kruis/6
mol

-6

C#/Db

7 kruis/5
mol

-1

1 kruis

-7

2 kruis

-2

G#/Ab

4 mol

D#/Eb

3 mol

-3

3 kruis

4 kruis

-4

A#/Bb

2 mol

1 mol

-5

B/Cb

5 kruis/7
mol

Konversi tanda triol.


Konversi tanda slur/tie/legato.
Konversi harga not.
Tutup dengan garis birama penutup.
D6

SeminarNasionalTeknologi2007(SNT2007)
Yogyakarta,24November2007

ISSN:19789777

Setelah semua informasi selesai diproses, hasilnya ditampilkan di komponen RichEdit1


dan RichEdit2. Jika user menekan tombol SimpanWord maka program akan melakukan
penyimpanan ke dalam file berformat dokumen Word (*.doc) dengan nama sesuai keinginan user.
Penyimpanan dalam dokumen Word menggunakan komponen WordApplication dan
WordDocument yang mensyaratkan pencantuman ComObj, OleServer, WordXP dalam klausa
uses.
Berikut ini adalah flowchart dari proses konversi not balok dari file dengan struktur
MusicXML:

Gambar 2: Flowchart Konversi Not Balok dari file MusicXML

Proses konversi dari file MIDI hampir serupa dengan proses file MusicXML di atas.
Perbedaanya hanya pada pembacaan format dan tidak disertakan kemampuan pengecekan not di
luar jangkauan vokal manusia. File MIDI menyimpan informasi harga nada dengan range nilai
tertentu sesuai temponya (timewise). Sedangkan pada editor not balok, gambar-gambar not
diletakkan di area tertentu yaitu pada garis-garis paranada dengan dua garis bantu di atas dan di
bawah baru kemudian dikonversi langsung dalam bentuk not angka. Proses konversi sama dengan
proses yang telah dijelaskan di atas.

D7

SeminarNasionalTeknologi2007(SNT2007)

ISSN:19789777
Yogyakarta,24November2007

Untuk menampilkan not balok di dalam editor, diperlukan tools berupa gambar-gambar not
beserta simbol-simbolnya. Gambar not dan simbol musik diciptakan melalui image editor dalam
format bitmap, dengan pixel sebagai satuannya. Pixel adalah akronim dari picture element, yaitu
merupakan satuan terkecil dari grafik. Image editor yang dipakai adalah Borland Image Editor,
program bawaan dari paket Borland Delphi 7.
Untuk menampilkan not angka dengan bagus perlu dibuat sebuah font yang mendukung
penulisan not angka. Penulis menggunakan program bantu Font Creator 5.5 untuk memodifikasi
font Arial menjadi font NADA-ARIAL. Program bantu yang bisa di-download di alamat
http://www.high-logic.com/ ini bersifat shareware dengan masa evaluasi 30 hari.
Aturan-aturan yang dipakai dalam penulisan not angka menggunakan font NADA-ARIAL
adalah sebagai berikut:
Tabel 6: Aturan penulisan not angka menggunakan font NADA-ARIAL

3. ANALISIS
Sebagai pengujian, disiapkan sebuah lagu berjudul Indonesia Pusaka karya Ismail
Marzuki yang menggunakan nada dasar Do=C dan berbirama 4/4 atau common. Penggunaan nada
dasar ini dimaksudkan untuk menguji apakah nada A tinggi bisa dideteksi sebagai nada yang
berada di luar jangkauan manusia. Kemudian agar bisa dikonversi, lagu di atas diekspor dalam
format MusicXML dan MIDI.

D8

SeminarNasionalTeknologi2007(SNT2007)
Yogyakarta,24November2007

Gambar 3: Lagu Indonesia Pusaka dalam


bentuk not balok

ISSN:19789777

Gambar 4: Deteksi nada yang terlalu tinggi


untuk dinyanyikan

Pada pengujian menggunakan format MusicXML, program mampu mendeteksi nada A5


yang terlalu tinggi untuk dinyanyikan. Program akan melakukan penurunan nada dasar menjadi
G#/Amol.

Gambar 5: Lagu Indonesia Pusaka dalam


setelah dikonversi menggunakan file
MusicXML

Gambar 6: Lagu Indonesia Pusaka setelah


dikonversi menggunakan file MIDI

Karena keterbatasan program dan struktur file MIDI, maka hasil konversi tidak bisa
menampilkan informasi birama. Oleh karena itu disediakan fungsi untuk memutar file MIDI
sehingga user dapat terbantu dalam memahami hasil konversi.

D9

SeminarNasionalTeknologi2007(SNT2007)
Yogyakarta,24November2007

ISSN:19789777

Gambar 7: Lagu Indonesia Pusaka yang ditulis manual di Editor Not Balok

Setelah dilakukan pengujian program terlihat bahwa secara umum program mampu
mengkonversi notasi balok menjadi notasi angka, terlepas dari perbedaan masing-masing sumber
notasi balok.
Celah dimana program bisa melakukan kesalahan terutama bila user memasukkan notasil
lagu di luar batasan masalah. Celah tersebut antara lain:
-

Pada konversi MusicXML, bila user memasukkan lagu berbentuk polifoni/akordis, maka
program akan menampilkan hasil konversi akord menjadi sejajar di samping not yang
dikonversi sebelumnya.
Pada konversi not balok, bila user menuliskan not dari kanan ke kiri, not angka tetap akan
berisi not yang dituliskan pertama, kedua dan seterusnya dan tetap ditulis dari kiri ke kanan,
sehingga terlihat terbalik.

4. KESIMPULAN
Dalam menjalankan fungsinya sebagai perangkat konversi, program ini telah berfungsi
dengan baik. Notasi balok sesusah apapun dapat dikonversi dengan cepat dan mudah menggunakan
program ini. Dengan adanya program ini, pemusik (khususnya penyanyi dan penulis partitur lagu)
dapat terbantu pekerjaannya.
Jika ditinjau secara teknis, proses konversi notasi dengan bantuan array disimpulkan dapat
menghasilkan output yang akurat. Hal ini didukung dengan karakteristik array yang mampu
menggeser pointer sesuai aturan interval nada untuk mendapatkan tangga nada sesuai nada dasar.
Hasil konversi berupa not angka yang ditampilkan menggunakan font kreasi sendiri terlihat cukup
representatif untuk bisa langsung dibaca atau dinyanyikan.
Dari perbandingan tiga macam sumber not balok yang dibahas pada karya tulis ini dapat
disimpulkan pula bahwa MusicXML adalah format penyimpanan not balok yang paling cocok
untuk dikonversi menjadi not angka. Hal ini disebabkan karena keunggulan format XML yang
mampu menyimpan begitu banyak informasi namun tetap dapat dibaca dengan mudah oleh
berbagai bahasa pemrograman.

D10

SeminarNasionalTeknologi2007(SNT2007)
Yogyakarta,24November2007

ISSN:19789777

5. DAFTAR PUSTAKA
Andi Offset (2003), Panduan Praktis Pemrograman Borland Delphi 7.0, 2003, Wahana Komputer,
Yogyakarta:
Budidharma, Pra. (2001) Buku Kerja Teori Musik Sebagai Pengantar Komposisi & Aransemen.
Jakarta: PT. Elex Media Komputindo
Craig,
William.
Outline
of
the
Standard
MIDI
File
Structure,
dalam
http://ccrma.stanford.edu/ccarh.orghandoutsmf.html; diakses terakhir tanggal 17 Oktober 2006
Cunningham, Stuart (2005) Suitability Of MusicXML As A Format For Computer Music Notation
& Interchange. University of Wales: North Wales
Jelita, Natalia. (2000) Editor Not Balok, Skripsi S1, Program Studi Teknik Informatika, Universitas
Kristen Duta Wacana, Yogyakarta
Musical Notation, http://en.wikipedia.org/wiki/musical_notation; diakses terakhir 20 November
2006
MusicXML Definition, http://www.musicxml.org; diakses terakhir 12 September 2006
Pranata, Antony (2003). Pemrograman Borland Delphi 6. Yogyakarta: Andi Offset,
Santosa, P. Insap, Ir. MSc.(1994) Grafika Komputer dan Antar Muka Grafis. Yogyakarta: Andi
Offset
Setiawan, Yudha C. (2004) Tip & Trik Delphi. Yogyakarta: Andi Offset
Soeharto, M. (1975) Belajar Notasi Balok. Jakarta: PT. Gramedia,
St Laurent, S. (2000) XML Elements of Style. Hill Publishers: Berkshire,
Sukohardi, Al. (1997) Teori Musik Umum. Yogyakarta: Pusat Musik Liturgi
Using The Microsoft Word COM Interface, http://www.accelerated-ideas.com/DelphiKBase/
aiDelphiKBase_WordCOM1.aspx; diakses terakhir 22 Maret 2007
Waskitojati, R. Damar. (2004) Program Bantu Penentuan Akord dan Pembacaan Dari Suatu
Rangkaian Notasi Angka. Skripsi S1, Program Studi Teknik Informatika, Universitas Kristen
Duta Wacana, Yogyakarta
What is Numbered Musical Notation?, http://www.2bhonest.com/index.htm; diakses terakhir 20
November 2006

D11

También podría gustarte