BAB 2 LANDASAN TEORI 2.1 Pengertian...
Transcript of BAB 2 LANDASAN TEORI 2.1 Pengertian...
6
BAB 2
LANDASAN TEORI
2.1 Pengertian MIDI
Musical Instrument Digital Interface (MIDI) adalah suatu bahasa musik standar
yang diterima secara umum dalam dunia musik digital. (Tim Penelitian dan
Pengembangan Wahana Komputer, 2004, p2). MIDI adalah interface untuk perangkat
musik elektronik dengan perangkat-perangkat yang berkaitan. (Casabona, Helen and
David Frederick, 1987, p5).
Beberapa definisi MIDI berdasarkan Paul Messick (1998, p3). MIDI adalah:
Media untuk menghubungkan antara perangkat musik, komputer, dan
perangkat lainnya.
Media untuk memainkan suara yang telah diolah
Media untuk standarisasi protokol komunikasi
Berguna sebagai media untuk mengendalikan perangkat non musikal, seperti
sistem pencahayaan pada sebuah pertunjukan teater, tape rekorder, dan lain-
lain.
Sebuah kegiatan yang berhubungan erat dengan proses tetapi tidak dengan
audio.
Bentuk nyata dari proses pembuatan musik.
Media yang dapat diubah-ubah. (Dengan mudah dapat diubah-ubah untuk
mengganti not, waktu, dan bahkan bunyi yang dihasilkan oleh instrumen).
MIDI bukan merupakan:
7
Media berbentuk audio.
Media berupa gelombang audio.
Media yang hanya digunakan sound card pada komputer.
Media yang lambat dalam hitungan waktu yang sebenarnya.
Media yang kecepatan tidak terbatas (tetap dapat membuat delay).
Pada dasarnya, MIDI tidak lebih dari protokol komunikasi. MIDI digunakan
untuk mengirim informasi mengenai proses kinerja musikal. MIDI tidak mengenal bunyi
dari not yang dihasilkan, akan tetapi MIDI dapat mengenali not apa yang dimainkan
menurut waktu dan cara not tersebut dihasilkan. Sumber bunyi, seperti synthesizer,
menerima data MIDI dan menghasilkan suara sebagai respon. Jika synthesizer diatur
untuk membunyikan suara terompet, maka MIDI events membuat itu untuk menjadi
suara yang menyerupai terompet. Dalam hal ini, MIDI seperti partitur musik, bukan
berupa suara. Namun tidak sepenuhnya seperti partitur musik, MIDI messages dapat
mengalir melalui kabel dan menyebabkan synthesizer menghasilkan suara seperti yang
diinginkan.
2.2 Konfigurasi MIDI dan Pendukungnya
8
Gambar 2.1 A Possible MIDI Configuration
Sumber : java.sun.com
Dalam contoh ini, aplikasi program diatas memainkan musik dengan memuat
musical score yang ada pada disk. Standart MIDI files memiliki track yang juga
merupakan bagian dari MIDI events. Sebagian events memainkan not baik yang berisi
melodi maupun ritme. MIDI file yang ada dibaca dan dimainkan oleh piranti lunak
berbentuk sequencer. Sequencer tersebut memainkan musiknya dengan mengirimkan
MIDI messages kepada perangkat lainnya seperti internal atau eksternal synsthesizer.
Synthesizer itu sendiri akan membaca data berupa kumpulan suara termasuk instruksi
untuk mengemulasikan suara dari jenis instrumen musik tertentu. Jika tidak demikian
maka synthesizer akan memainkan not yang tersimpan di MIDI file dengan
menggunakan suara yang telah ada pada sythesizer tersebut.
9
Seperti pada Gambar 2.1, MIDI events harus diterjemahkan kedalam bentuk
MIDI yang polos ( bukan dalam format time tagged ). Sebelum dikirimkan melalui
MIDI output port ke synthesizer eksternal. Data raw MIDI masuk ke dalam komputer
dari sumber MIDI eksternal (gambar keyboard dalam diagram) akan diterjemahkan
kepada time-tagged MIDI messages yang dapat mengontrol synthesizer, atau yang
disimpan sequencer untuk digunakan kemudian.
(http://java.sun.com/j2se/1.4.2/docs/guide/sound/programmer_guide/chapter1.html -
112483 ).
2.2.1 Kabel MIDI
Menurut Tim Penelitian dan Pengembangan Wahana Komputer (2004, p3), kabel
MIDI adalah komponen utama yang digunakan untuk membuat, mentransfer, dan
menerima perintah MIDI serta segala pemberian efek atau program track yang
dibutuhkan untuk membuat lagu.
Gambar 2.2 Kabel MIDI
Sumber : www.audiofitter.com
10
2.2.2 MIDI Port
Menurut Tim Penelitian dan Pengembangan Wahana Komputer (2004, p5),
Dalam beberapa perangkat seperti keyboard dapat ditemukan tiga port yaitu: MIDI
IN, MIDI OUT dan MIDI THRU yang dapat terhubung dengan perangkat lain.
Fungsi dari ketiga port ini adalah :
1. MIDI IN : Port ini berfungsi sebagai penerima perintah MIDI dari suatu
perangkat ke perangkat lain yang terhubung.
2. MIDI OUT : Port ini berfungsi sebagai pengirim perintah MIDI dari suatu
perangkat ke perangkat lain yang terhubung.
3. MIDI THRU : Port ini berfungsi untuk meneruskan perintah MIDI yang diterima
kepada perangkat lain.
Gambar 2.3. MIDI port pada MIDI Controller
Sumber : encyclopedia.quickseek.com
11
Pemasangan port pada masing – masing perangkat harus tersusun dengan benar.
Contohnya pada keyboard 1 ujung kabelnya dihubungkan ke port MIDI OUT dan pada
keyboard 2 ujung kabelnya yang lain dihubungkan ke port MIDI IN. Maka setelah
penekanan tuts pada keyboard 1 perintah akan dikirim ke keyboard 2. Apabila keyboard
1 memprogram suara piano dan keyboard 2 memprogram suara slow string, maka akan
keluar suara dari keyboard 2 dengan suara tersebut, tetapi keyboard 1 tetap akan
mengeluarkan suara piano ditambah dengan suara slow string dari keyboard 2. Keyboard
2 yang menerima kedua program suara tersebut akan memainkannya secara bersamaan.
Apabila ingin menghubungkan alat musik yang lain dengan kedua alat musik
tersebut, ujung kabel port MIDI THRU harus dihubungkan ke keyboard 2 dan ujung
yang lain ke port MIDI IN pada keyboard ketiga. Dengan konfigurasi ini apabila tuts
ditekan dari keyboard 1 yang diprogram piano maka keyboard 2 juga akan memainkan
piano dan diselingi dengan slow string. Jika pada keyboard 3 diprogram dengan suara
helikopter maka suara dari perangkat ketiga yaitu piano, slow string dan helikopter akan
dimainkan bersamaan dengan nada yang sama pula jika set nada yang ada tidak diubah.
2.2.3 MIDI Controller
Terdapat 2 jenis pengertian mengenai MIDI Controller. Pengertian pertama
berupa perangkat keras atau piranti lunak yang dapat menghasilkan dan mengirim data
MIDI kepada perangkat MIDI yang sesuai, pengertian yang kedua adalah sebuah
perangkat keras yang sering digunakan untuk mengontrol sebuah permainan, tetapi tidak
tersambung langsung dengan event note on/ note off. Contohnya, pengaturan slider
untuk menetapkan perintah membuka dan menutup filter pada frekuensi rendah (Low
pass filter) ditetapkan pada sebuah synthesizer dengan controller 18. Setelah ditetapkan,
12
maka akan terdapat perbedaan pengaturan dengan controller yang lain.
(http://en.wikipedia.org/wiki/MIDI_controller)
Gambar 2.4 Implentasi MIDI keyboard controller
Sumber : en.wikipedia.org
Controller pada MIDI tidak hanya berbentuk keyboard. Seiring dengan
perkembangan jaman dan inovasi, telah lahir controller pada MIDI dalam bentuk gitar
MIDI, alat – alat tiup dengan MIDI analyzer, dan juga terdapat alat musik pukul seperti
drum MIDI.
13
Gambar 2.5 Yamaha WX5 MIDI Wind Controller
Sumber : www.bluezone.nl
2.2.4 Sequencer
Gambar 2.6 Analog Sequencer
Sumber : www.buzzclick-music.com
Sequencer adalah sebuah perangkat untuk merekam dan memainkan sebuah
sequence MIDI event. Sequencer mempunyai transmitter, karena sequencer bertugas
14
untuk mengirimkan MIDI messages yang tersimpan di dalam sequence, kepada
perangkat lain seperti synthesizer atau MIDI output port. Sequencer juga mempunyai
receiver karena salah satu tugasnya adalah merekam MIDI dan menyimpannya dalam
sebuah sequence.
(http://java.sun.com/j2se/1.4.2/docs/guide/sound/programmer_guide/chapter8.html#118
862 )
2.2.5 Synthesizer
Synthesizer adalah alat untuk menghasilkan suara. Suatu synthesizer dapat
menampung serangkaian objek dari MIDI Channel khususnya 16 channel MIDI yang
ada, sampai objek MIDI tersebut memanggil 16 channel yang ada.
(http://java.sun.com/j2se/1.4.2/docs/guide/sound/programmer_guide/chapter8.html#118
862 )
Gambar 2.7 Virtual Synthesizer
Sumber : www.geniator.com
15
Synthesizer adalah instrumen musik elektronik yang didesain untuk
memproduksi suara secara elektronik dengan menggunakan teknik tertentu seperti
additive, subtractive, FM, physical modeling synthesis, phase distortion atau scanned
synthesis. (http://en.wikipedia.org/wiki/synthesizer)
Gambar 2.8 Synthesizer dalam perangkat keras
Sumber : www.synthesizer.de
2.3 Protokol pada MIDI
Menurut Paul Messick (1998, p14), MIDI adalah protokol berbentuk serial
dimana setiap informasi dikemas dalam bentuk bit dan dikirimkan melalui kabel dan bit
berikutnya mengikuti, dan seterusnya. Setiap byte yang dikirim pada 31.250 baud yang
didalamnya terdapat 10 bit, terdiri atas start bit, 8 data bit, dan stop bit. Jadi 31.250 byte
dapat dikirimkan setiap detik atau setiap byte memerlukan waktu 320 microsecond untuk
dikirim.
16
2.4 MIDI Messages
Menurut Paul Messick (1998, p14) MIDI message adalah kumpulan data yang
memiliki spesifikasi secara penuh dalam sebuah event. Sebagian besar messages
memiliki panjang satu, dua atau tiga bytes atau lebih dari itu. Setiap tiga-byte message
dihasilkan sebuah Note On. Contohnya: memerlukan 960 microsecond, hampir
mendekati satu millisecond untuk mengirim. Pada intinya, lebih dari sekitar 1000 not
dapat dikirim dalam waktu satu detik.
Selain itu, MIDI messages juga memiliki satu status byte dan nol atau lebih data
byte. Nilai numerik dari satu status byte selalu terpaut antara 128 dan 255 sedangkan
semua data bytes terpaut diantara 0 sampai dengan 127. Perbedaan ini memudahkan
proses identifikasi antara status dan data, tetapi batas dari nilai satu data berisi atas tujuh
bit.
Pada dasarnya MIDI messages terdapat dua jenis yaitu:
1. Channel Messages
2. System Messages
Channel messages lebih mengarah kepada hal – hal yang bersifat detail dan
dibagi atas Channel Voice messages (untuk mengidentifikasi not) dan Channel Mode
messages (untuk mengidentifikasi penerima).
System messages sendiri terbagi tiga yaitu, System Common messages ( berisi
data untuk mengenali perangkat yang ada dalam sebuah sistem), System Real Time
messages ( menangani waktu dalam satu event yang berhubungan ) , System Exclusive
messages ( messages untuk menangani semua yang belum terpikirkan oleh pembuat
MIDI).
17
Gambar 2.9 Pembagian MIDI messages
Sumber : www.saxmusicplus.com
2.4.1 Channel Voice Messages
Sejauh ini sebagian besar cara pengiriman data yang menggunakan MIDI adalah
Channel Voice messages atau sering disebut Channel messages. Messages ini dapat
diarahkan ke dalam perangkat detail yang diinginkan (dengan cara mengatur channel
yang ada). Semua Channel messages mengidentifikasikan informasi dari permainan
seperti not yang dimainkan dan bagaimana jenis suara yang dihasilkan oleh not tersebut.
Contohnya sebuah Note on message dapat mengenali not apa yang dimainkan serta
bagaimana cara not tersebut dimainkan, dan Pitch Bend message akan mempengaruhi
pitch dari not yang berbunyi.
18
Empat bit status byte dari Channel messages menentukan channel dari masing –
masing not tersebut sedangkan empat bit yang lain mengindikasikan seperti apa channel
messages yang ada. Untuk meminimalkan jumlah bit yang dibutuhkan channel satu
sampai dengan enam belas ditetapkan sebagai nol sampai dengan lima belas (0x00 –
0x0F) dalam empat bit yang ada pada awal status bytes. Pada Tabel 2.1 di bawah ini
terlampir spesifikasi MIDI messages dalam 8 data bit.
Tabel 2.1 Channel Voice Messages
(Sumber : Maximum MIDI)
Status byte (Hex)* Data Byte Message
0x8n NOTE, VEL Note Off
0x9n NOTE, VEL Note On
0xAn NOTE, PREASURE Key Aftertouch
0xBn CTRL, VALUE Control Change
0xCn PROG# Program Change
0xDn PRESSURE Channel Aftertouch
0xEn LSB, MSB Pitch Bend
* n = channel , 0 for channel 1, F for channel 16
2.4.1.1 Note On/Off
Dua messages ini adalah sumber suara dalam MIDI. Masing – masing memiliki
pitch dari setiap note dan velocity. Pada umumnya nada C pada tengah – tengah
keyboard mempunyai nilai not MIDI 60. Beberapa pitch diluar jangkauan dengar yang
terdeteksi bisa dimainkan dengan MIDI, contohnya seperti canine (frekuensi suara yang
hanya bisa ditangkap oleh hewan seperti anjing atau kelelawar) atau bunyi gerak
19
aktivitas dalam bumi. Velocity memiliki pengertian secara umum sebagai sesuatu yang
berhubungan terhadap keras-lembutnya bunyi: 0 untuk diam, 64 untuk mezzopiano (mp),
dan 127 untuk fortississimo (fff).
Note On akan membunyikan not pada pitch yang ditentukan. Sekali dimulai,
sebuah not harus dihentikan, kalau tidak akan menjadi not yang terperangkap (bunyi
terus menerus). MIDI memiliki dua cara untuk menghentikan sebuat not dari bunyi:
Note Off message dan Note On message dengan velocity 0 (nol). Note Off message sama
dengan Note On message. Hal tersebut mengdeteksi not-not yang dituju dan velocity.
Bagaimana pun, velocity dapat mendeteksi bagaimana sebuah not bisa dibunyikan pada
saat ditekan atau berhenti pada saat dilepas. Note On pada velocity 0 (nol) dapat bekerja
dengan baik. Apabila velocity berhubungan dengan keras-lembutnya suara, maka akan
mungkin pada velocity 0 (nol) akan menghasilkan diam. Mengakhiri sebuah not dengan
menggunakan Note On message pada velocity 0 (nol) merupakan hal yang sudah umum
digunakan. Note On dan Note Off , keduanya memiliki status nilai yang sama. Hal ini
dapat terjadi pada running status yang ditujukan mengurangi sejumlah bytes yang
dibutuhkan untuk memulai dan mengakhiri setiap not. Durasi dari sebuah not adalah
waktu yang terkait antara Note On dan Note Off yang sama (atau Note On dengan
velocity 0 (nol).
2.4.1.2 Aftertouch
Aftertouch messages dikirimkan oleh beberapa keyboard setelah tuts pada
keyboard tersebut dilepas. Terdapat beberapa tekanan horisontal dan vertikal pada
sebuah not selama not itu sendiri berbunyi dan menghasilkan beberapa aftertouch
messages. Pada instrumen – instrumen tertentu, messages ini mungkin sudah ditetapkan
20
sesuai dengan bunyi instrumen itu sendiri. Salah satu dari contoh penggunaan aftertouch
messages ini adalah terciptanya bunyi polyphonic dan monophonic.
2.4.1.3 Control Change
Control change messages digunakan untuk menaik-turunkan volume, pan.
portamento time, modulation, dan untuk membuat bunyi lain pada perangkat MIDI.
Control Change mempunyai 120 pilihan untuk dapat menghasilkan bunyi seperti yang
kita inginkan, dan sebagian besar tidak terdefinisi. Controller bernomor 0 sampai
dengan 31 yang menentukan the Most Significant Byte(MSB) dari controller yang telah
diberikan, mempunyai resolusi tujuh bit. Jika dibutuhkan extra-control, controller
bernomor 32 sampai dengan 63 memberikan tujuh bit tambahan untuk controller 0
sampai dengan 31 yang telah ada. Controller bernomor 120 sampai dengan 127 telah
ditetapkan untuk Channel Mode Messages (yang akan dibahas selanjutnya).
Tabel 2.2 Control Change Messages
(Sumber : Maximum MIDI)
Controller (Decimal)
Function Controller (Decimal) Function
0 Bank Select 69 Hold 2
1 Modulation Wheel 70 Sound Controller 1 (sound variation)
2 Breath Controller 71 Sound Controller 2 (timbre/harmonic
3 Undefined Intensity )
4 Foot Controller 72 Sound Controller 3 (release time)
5 Portamento Time 73 Sound Controller 4 (attack time)
6 Data Entry MSB 74 Sound Controller 4 (brightness)
7 Channel Volume 75 – 79 Sound Controller 5 –10
21
8 Balance 80 – 83 General purposes controllers
9 Undefined 84 Portemento control
10 Pan 85 – 90 Undefined
11 Expression controller 91 Effect 1 Depth
12 Effect control 1 92 Effect 2 Depth
13 Effect control 2 93 Effect 3 Depth
14 – 15 Undefined 94 Effect 4 Depth
16 – 19 General Purposes
controllers
95 Effect 5 Depth
20 – 31 Undefined 96 Data increament
32 – 63 LSB for controller 0 - 31 97 Data decreament
64 Damper Pedal (Sustain) 98 Non-register parameter LSB
65 Portamento on/off 99 Non-register parameter MSB
66 Sostenuto 100 Register parameter LSB
67 Soft Pedal 101 Register parameter MSB
68 Legato foorswitch 120 – 127 Reserved for channel mode messages
Nomor - nomor controller yang berada di atas 63, digunakan sebagai
“switch”(on/off), dimana nilai dibawah 64 akan merespon kepada “off”, sedangkan di
atas atau sama dengan 46 adalah “on”. Tetapi fasilitas yang ada pada MIDI dapat
membuat controller tersebut untuk melanjutkan controller yang ada sebelumnya.
2.4.1.4 Program Change
Channel messages ini menentukan program yang diinginkan atau patch (Sumber
suara asli) pada instrumen yang menerimanya. Dengan mengubah program (program
change), alat musik seperti flute dapat berubah menjadi saxophone atau bahkan pipe
organ dan instrumen – instrumen lain yang mempunyai bunyi. Sebuah nomor program
tidak mempunyai informasi yang mengaitkan suatu bunyi dengan bunyi sebenarnya.
22
Angka 0 pada control change messages, pertama kali akan menjalankan program untuk
memilih instrumen yang diterima.
2.4.1.5 Pitch Bend
Pitch Bend messages bertujuan untuk mengatur semua not yang dimainkan pada
channel masing – masing dan disesuaikan dengan pitch yang diinginkan. Pitch yang ada
mempunyai 14 bit angka terdiri atas dua 7 bit bytes. Jadi sebuah MIDI messages yang
dikirimkan ke penerima (receiver) dengan batas bend lima dapat membelokkan nada
yang dikirimkan menjadi naik dan turun sebesar lima semitones. Batas bend dari masing
– masing instrumen dapat diatur dari panel depan yang ada.
2.4.2 Channel Mode Messages
Menurut Paul Messick (1998, p18), Channel mode messages dapat mengganti
kebiasaan penerima (receiver) dalam menerima messages. Sebagian dari messages
tersebut dapat mengubah penerima menjadi state khusus sementara yang lain menerima
lanjutan dari channel voice messages.
Seperti yang telah dibicarakan bahwa channel mode messages adalah bagian dari
control change messages dari control change messages dengan lanjutan nomor 120 –
127 (Tabel 2.2).
23
Tabel 2.3 Channel Mode Messages
(Sumber : Maximum MIDI)
Mode Messages (decimal)
Status/Data Bytes*
Usage
All Sound Off (120) 0xBn 0x78 0x00
Reset All Controller (121) 0xBn 0x79 0x00
Local Control (122) 0xBn 0x7A VAL VAL = 0 for off, VAL =127 for on
All Notes Off (123) 0xBn 0x7B 0x00
Omni Off (124) 0xBn 0x7C 0x00
Omni On (125) 0xBn 0x7D 0x00
Mono On (Poly off ) (126) 0xBn 0x7E VAL VAL = number of channel, or 0 to set the
number of channels to the number of
voices available
Poly On (Mono Off) (127) 0xBn 0x7F 0x00
*n = Basic Channel, 0 for channel 1, F for channel 16
Channel mode messages akan dikirimkan ke basic channel dari masing – masing
instrumen penerima. Basic channel (atau sering disebut dengan global channel) adalah
channel tertentu dari sebuah perangkat yang sudah ditentukan oleh perangkat tersebut
(secara permanen) atau yang dapat diatur oleh pengguna pada panel depan dari
perangkat tersebut. Dengan mengatur basic channel tersebut maka Channel Mode
messages yang dikirimkan pada channel lain akan diabaikan.
Perangkat penerima (receiving device) dapat mempunyai satu dari empat jenis
mode, yaitu omni on, omni off, mono on, poly on. Seperti pada Tabel 2.4 di bawah ini :
24
Tabel 2.4 Tabel Penerimaan
(Sumber : Maximum MIDI)
Poly Mono
Omni On
Mode 1
Omny On
Poly
Mode 2
Omny On
Mono
Omni Off
Mode 3
Omny Off
Poly
Mode 4
Omny Off
Mono
Contohnya untuk memilih Mode 1 pada penerima, kirim Omni On message diikuti oleh
poly on messages.
Mengaktifkan omni on memberikan penerima untuk merespon messages yang
ada pada semua channel. Sedangkan omni off akan memberikan messages untuk
penerima hanya pada basic channel, dan akan mengabaikan semua messages yang yang
dikirimkan ke channel lainnya.
Poly adalah kependekan dari polyphonic. Instrumen yang mempunyai
karakteristik polyphonic dapat membunyikan lebih dari satu nada dalam satu waktu.
Sedangkan memilih mono akan membatasi instrumen untuk membunyikan satu not pada
satu waktu. Penggunaan poly atau mono biasanya bergantung pada tipe dan karakter
suatu instrumen tersebut dimainkan. Piano adalah instrumen polyphonic, sedangkan
memainkan chord di tuba adalah hal yang paling sulit ( karena tuba memiliki sifat
mono).
Terdapat empat channel mode messages yang lain sebagai tambahan dari empat
mode messages yang telah dijelaskan sebelumnya. Mengatur ulang ( reset ) controller
25
akan membuat semua controller yang ada (seperti pitch bend dan modulation wheel)
kembali ke posisi awal mereka, dan semua note off messages yang ada akan
memberhentikan semua nada yang sedang berbunyi atau messages yang berada di
tengah – tangah. Bagaiman pun, dua messages ini akan diabaikan oleh penerima
(receiver) yang mempunyai mode omni on. Karena itu semua note off sering digunakan
untuk tombol panik (panic button). Sama halnya seperti note off messages, Sound off
messages juga digunakan untuk memberhentikan semua not yang sedang dimainkan.
sound off mesages baru - baru ini ditambahkan pada MIDI, sehingga beberapa perangkat
yang sudah berumur mungkin tidak merespon pesan ini. Dalam situasi yang tidak stabil,
cara paling meyakinkan untuk menghilangkan not yang berada ditengah – tengah (stuck
notes) adalah dengan mengirimkan perintah note off (atau note on dengan velocity nol)
untuk 128 not dan kepada 16 channel.
2.4.3 System (Common) Messages
Tabel 2.5 System Common Messages
(Sumber : Maximum MIDI)
Status Byte ( Hex ) Data Byte(s) Message
0xF1 VAL MIDI Time Code Quarter Frame
0XF2 LSB, MSB Song Position Pointer
0XF3 SONG# Song Select
0XF4 - Undefined
0XF5 - Undefined
0XF6 - Tune Request
0XF7 - EOX (End of Exclusive)
26
Menurut Paul Messick (1998, p20), System Common messages digunakan untuk
mengkoordinasi kegiatan yang berhubungan dengan semua perangkat yang terhubung
oleh sistem yang diberikan. Di antara dua dari tujuh System Common messages yang
ada, adalah tidak terdefinisi. EOX( End Of Exclusive ) messages dan MIDI Time Code
Quarter Frame messages akan dijelaskan berikutnya.
The Song Position Pointer (SPP) bertugas memberitahu sequencer atau drum
machine dimana posisi playback ditempatkan. Posisi yang mempunyai nilai sebanyak
14-bit adalah perhitungan waktu dari permulaan urutan. Masing – masing dari unit
waktu tersebut sama dengan enam MIDI clock. Sejak ada 24 MIDI clock dari
seperempat not, satu waktu unit SPP terdiri atas enam belas not. Karena itu SPP
messages menentukan posisi dari enam belas not berurutan. Messages ini telah dikirim
sebelum System Real-Time messages seperti Start atau Continue. Tetapi messages ini
tidak mempunyai arti jika sistem MIDI tidak bersinkronisasi dengan MIDI sync.
Tune Request adalah messages yang tidak lagi dimiliki oleh synthesizer analog.
Instrumen ini sangat sensitif dengan frekuensi out of tune, dan Tune Request akan
membuat frekuensi tersebut untuk kembali memusat pada oscillator. Messages ini sering
digunakan pada masa ini terhadap sebagian besar synthesizer dan modul bunyinya akan
sedikit lebih baik jika dibandingkan dengan komputer dengan output audio.
2.4.4 System Real-Time Messages
Menurut Paul Messick (1998, p21), System Real Time Messages bertugas
memberi indikasi bahwa suatu proses sedang terjadi pada saat ini. Messages ini
berbentuk single-byte, mempunyai sifat yang unik untuk muncul dimana saja bahkan
antara status byte dan data byte dari MIDI messages yang ada.
27
MIDI Timing Clock messages, atau sering disebut dengan MIDI Clock messages,
dikirimkan ketika sistem sedang mensinkronisasi waktu dengan perangkat MIDI
lainnya. Biasanya, jenis dari MIDI sync ini digunakan dengan drum machine dan dengan
beberapa tipe dari tape synchronization. Dua puluh empat MIDI Clock dikirimkan untuk
setiap seperempat not. Tingkat pengiriman messages ini tergantung dari kecepatan
tempo. Faktor lain juga terdapat pada MIDI sync yang berguna untuk mengurangi kerja
MIDI Clock yang berjalan. Dengan hanya 24 clocks per ketukan akan banyak sekali
kemungkinan untuk terjadi Error.
Start (0xFA), Continue (0xFB) dan Stop (0xFC) adalah real-time messages
yang mengatur sinkronisasi saat menggunakan MIDI sync. Start messages
mengindikasikan waktu mulai pada awal dari sebuah sequence yang sedang terjadi. Stop
messages akan segera memberhentikan playback atau record. Walaupun MIDI clocks
terus – menerus menerima messages, penerima (receiver) akan menahan posisi tersebut
sekarang dan mengabaikan MIDI Clocks sampai pesan start atau continue diterima.
Continue messages akan menyebabkan timing yang sedang berjalan melanjutkan dari
posisi yang sudah ada ke perintah MIDI Clocks yang selanjutnya. Messages ini
memberikan sequence untuk dihentikan sementara (dengan menggunakan stop
messages) dan melanjutkannya kembali. Mengirimkan Start messages setelah Stop
messages akan menyebabkan siklus sequence berhenti dan memulai lagi dari paling
awal.
System reset messages adalah pesan yang juga sering digunakan oleh MIDI
messages. Jika diterima dan dikenali oleh sebuah perangkat, System reset messages ini
bertugas untuk membuat sebuah perangkat kembali seperti posisi power dinyalakan.
Tidak ada status yang berjalan, mematikan semua not yang berbunyi, menyalakan
28
kendali lokal, dan membuat semua bagian – bagian yang ada pada waktu kondisi sebuah
perangkat dinyalakan.
2.4.5 System Exclusive Messages
Menurut Paul Messick ( 1998, p22 ), sistem ini adalah kambing hitam dari MIDI
protocol. Pesan – pesan ini adalah pesan baru yang dapat digunakan untuk tujuan yang
akan datang dan dapat dibayangkan. Pada awalnya, sistem ini telah didesain sebagai
suatu method untuk mentransfer semua pengaturan penyimpanan dari satu instrumen ke
instrumen lain.
Semua sysex messages mempunyai struktur yang sederhana. Dimulai dengan
System Exclusive status byte, 0xF0. Satu sampai tiga byte Manufacturer ID ( kode
pabrik) untuk mengidentifikasi instrumen mana yang dituju. Jika bit pertama adalah nol
maka diikuti oleh bentuk bit kedua yaitu ID dengan 16 bit. Semua nomor pada data
bytes dapat dimasukkan (Semua 7 bit, dengan bit ke delapan dibuat menjadi nol).
Biasanya, Satu atau lebih data bytes awal akan menentukan jenis instrumen dan jenis
dari sysex messages.
2.5 General MIDI
Menurut Tim Penelitian dan Pengembangan Wahana Komputer, General MIDI
(GM) adalah standar format dalam dunia musik dan di dalam pembuatan MIDI. GM
adalah spesifikasi format MIDI pada tiap keyboard yang mengadopsinya. Kegunaan GM
adalah untuk memanggil atau loading dan memainkan perintah MIDI yang telah
disimpan dengan format Standart MIDI files ( SMF ).
29
Di dalam beberapa jenis keyboard dan soundcard yang memiliki tanda dan logo
GM kompatibel tersebut biasanya memiliki sound set GM dengan pengaturan beragam
dari suara – suara yang sama pada beberapa keyboard yang memiliki logo GM tersebut.
GM memiliki 128 suara alat musik, drum set dan beberapa sound effect dari tiap – tiap
alat musik, tergantung jenisnya.
Menurut Paul Messick (1998, p26), General MIDI dapat menentukan kapasitas
minimum yang ada dari modul suara (sound module) yang harus disediakan. Modul
suara tidak harus mendukung General MIDI, tetapi jika masing – masing perangkat atau
keyboard mempunyai logo GM, maka user dapat merekam atau memainkan sequences
tanpa harus mengkhawatirkan bagaimana suara yang dihasilkan oleh sistem lainnya.
Gambar 2.10 Logo General MIDI
Sumber : www.audiomaster.it
2.5.1 General MIDI Mode
Menurut Paul Messick (1998, p26), untuk dapat mencapai standar General MIDI
maka jumlah minimum modul jenis suara harus dipenuhi. Diantaranya adalah harus
mempunyai 128 jenis suara instrumen yang berbeda (sound set), atau preset yang
disusun secara khusus. Selain itu GM sound set harus mempunyai set suara drum secara
terpisah yang dipetakan (mapping) secara berbeda ke dalam masing – masing key
30
number. Semua suara yang ada, baik presets maupun drum harus dapat dimainkan
dengan aturan – aturan tertentu, dan akan dipengaruhi oleh set minimal dari controllers
dan MIDI messages yang lain. Dari beberapa fasilitas yang ada, maka pembuat musik
dapat membuat MIDI files yang akan berbunyi sama ketika dimainkan dengan
bermacam – macam sistem yang ada.
Menurut Paul Messick (1998, p27), General MIDI termasuk sebuah bentuk
(mode). Instrumen pada General MIDI mempunyai beberapa sound set dan cara
mengoperasikannya. General MIDI tidak membatasi apa yang bisa dilakukan oleh
instrumen yang dipilih. Karena terdapat dua System Exclusive messages yang mengatur
masuk dan keluarnya sebuah instrumen dari General MIDI mode. Pesan – pesan yang
ada adalah :
1. General MIDI On : F0 7E <identitas perangkat> 09 01 F7
Pesan ini akan menyalakan General MIDI mode. Sebuah instrumen akan
menyediakan paling tidak set minimum yang ada pada General MIDI, dan
menggunakan GM Sound Set dan Percussion Map adalah salah satu list yang
harus terdaftar pada suara yang tersedia.
2. General MIDI Off : F0 7E <identitas perangkat> 09 01 F7
Pesan ini akan mematikan fungsi General MIDI mode yang ada. Instrumen yang
menerima akan melakukan aktifitasnya seperti biasa.
Dalam kedua kasus diatas “< identitas perangkat >” , berlaku untuk
ditujukan kepada satu instrumen atau menyebarluaskan pesan itu ke semua
perangkat yang ada.
31
2.5.2 General MIDI Requirement
Menurut Paul Messick (1998, p27 ), suara yang ada pada GM harus mempunyai
sedikitnya 24 suara yang secara dinamis dapat dialokasikan kepada 16 MIDI channel
yang ada. Masing – masing channel dapat ditentukan untuk suara yang berbeda – beda.
Channel 10 dalam GM selalu digunakan untuk suara perkusi, 24 suara lainnya juga
dapat dialokasikan dengan dinamis menuju semua 16 channel yang ada (termasuk suara
perkusi), atau 8 dari 24 suara dapat dialokasikan untuk suara perkusi, sedangkan 16
suara lainnya dapat dialokasikan ke channel yang lain.
Tabel 2.6 General MIDI Controller
(Sumber : Maximum MIDI)
Controller Description
1 Modulation
7 Volume
10 Pan
11 Expression
64 Sustain Pedal
121 Reset All Controllers
123 All Notes Off
Semua channel yang ada akan merespon kepada Pitch Bend, Aftertouch, dan
minimum set dari controller. perangkat yang diberikan akan merespon kepada range
MIDI messages yang lebih lebar saat berada dalam GM mode. Tetapi pada intinya
semua perangkat suara yang ada pada general MIDI akan merespon semua perintahnya.
2.5.3 General MIDI Soundset
32
Menurut Paul Messick (1998, p28), suara yang ada pada General MIDI terbagi
atas 16 grup yang berbeda. Masing – masing grup terdiri atas 8 preset. Jenis suara yang
ada bertindak sebagai pusat instrumen lainnya yang mempunyai jenis sama. Jadi dalam
satu grup, jenis suara yang satu akan berbeda dengan jenis suara yang lain. Modul suara
bebas diproduksi dengan arsitektur yang berbeda dan metode suara sintesis dalam
pembuatan produknya. Dengan begitu, maka kualitas suara yang ada mungkin
mengalami perbedaan antara satu perangkat dengan perangkat lainnya, tetapi suara
trumpet tetap diidentifikasi sebagai suara trumpet dan suara violin akan diidentifikasi
sebagai suara violin pula.
2.5.4 Percussion Map
Menurut Paul Messick (1998, p28), untuk chromatic percussion presets dalam
program 9 sampai 16, semua suara perkusi akan dimainkan pada channel 10. Masing –
masing suara ini dipetakan kepada masing – masing kunci terntentu, contohnya not
bernomor 36 mempunyai suara bass drum dan not dengan nomor 70 memainkan
maracas. Keseluruhan dari suara perkusi yang ada berjumlah 47 yang menyediakan
dasar – dasar perkusi yang sesuai untuk sebagian besar musik.
Tabel 2.7 General MIDI Instrument group
(Sumber : Maximum MIDI)
Preset Instrument group Preset Instrument group
1- 8 Piano 65 – 72 Reed
9 – 16 Chromatic Percussion 73 – 80 Pipe
17 – 24 Organ 81 – 88 Synth Lead
25 – 32 Guitar 89 – 96 Synth Pad
33 – 40 Bass 97 – 104 Synth Effects
41 – 48 Strings 105 – 112 Ethnic
33
49 – 56 Ensemble 113 – 120 Percussive
57 – 64 Brass 121 – 128 Sound Effect
Copyright ♥ 1991, 1994 MIDI Manufacturers Association
Tabel 2.8 General MIDI Sound Set
(Sumber : MIDI Manufacturers Association)
No Sound No Sound No Sound No Sound
1 Acoustic Grand Piano 33 Acoustic Bass 65 Soprano Sax 97 Fx 1 (train)
2 Bright Acoustic Piano 34 Electric Bass (finger) 66 Alto Sax 98 Fx 2 (soundtrack)
3 Electric Grand Piano 35 Electric Bass (Pick) 67 Tenor Sax 99 Fx 3 (crystal)
4 Honky-tonk Piano 36 Fretless Bass 68 Baritone Sax 100 Fx 4 (atmosphere)
5 Electric Piano 1 37 Slap Bass 1 69 Oboe 101 Fx 5 (brightness)
6 Electric Piano 2 38 Slap Bass 2 70 English Horn 102 Fx 6 (goblins)
7 Harpsicord 39 Synth Bass 1 71 Bassoon 103 Fx 7 (echoes)
8 Clavi 40 Synth Bass 2 72 Clarinet 104 Fx 8 (sci-fi)
9 Celesta 41 Violin 73 Piccolo 105 Sitar
10 Glockenspiel 42 Viola 74 Flute 106 Banjo
11 Music Box 43 Cello 75 Recorder 107 Shamisen
12 Vibraphone 44 Contrabass 76 Pan Flute 108 Koto
13 Marimba 45 Tremolo Strings 77 Blown Bottle 109 Kalimba
14 Xylophone 46 Pizzicato Strings 78 Shakuhachi 110 Bag Pipe
15 Tubular Bell 47 Orchestral Harp 79 Whistle 111 Fiddle
16 Dulcimer 48 Timpani 80 Ocarina 112 Shanai
17 Drawbar Organ 49 String Ensemble 1 81 Lead 1 (square) 113 Tinkle Bell
18 Percussive Organ 50 String Ensemble 2 82 Lead 2 (sawtooth) 114 Agogo
19 Rock Organ 51 Synthstrings 1 83 Lead 3 (calliope) 115 Steel Drums
20 Church Organ 52 Synthstrings 2 84 Lead 4 (chiff) 116 Woodblock
21 Reed Organ 53 Choir Aahs 85 Lead 5 (charang) 117 Taiko Drum
22 Accordion 54 Choir Oohs 86 Lead 6 (voice) 118 Melodic Tom
23 Harmonica 55 Synth Voice 87 Lead 7 (fifths) 119 Synth Drum
24 Tango Accordion 56 Orchestra Hit 88 Lead 8 (bass + lead) 120 Reverse Cymbal
25 Acoustic Guitar (nylon) 57 Trumpet 89 Pad 1 (new age) 121 Guitar Fret Noise
26 Acoustic Guitar (Steel) 58 Trombone 90 Pad 2 (warm) 122 Breath Noise
27 Electric Guitar (jazz) 59 Tuba 91 Pad 3 (polysynth) 123 Seashore
28 Electric Guitar (clean) 60 Muted Trumpet 92 Pad 4 (choir) 124 Bird Tweet
29 Electric Guitar (muted) 61 French Horn 93 Pad 5 (bowed) 125 Telephone Ring
30 Overdriven Guitar 62 Brass Section 94 Pad 6 (metallic) 126 Helicopter
31 Distortion Guitar 63 SynthBrass 1 95 Pad 7 (Halo) 127 Applause
32 Guitar Harmonics 64 SynthBrass 2 96 Pad 8 (Sweep) 128 Gunshot
Copyright ♥ 1991, 1994 MIDI Manufacturers Association
34
Tabel 2.9 Percussion Map
(Sumber : Maximum MIDI )
Key Drum Sound Key Drum Sound Key Drum Sound
35 Acoustic bass drum 51 Ride Cymbal 1 67 High Agogo
36 Bass drum 1 52 Chinese Cymbal 68 Low Agogo
37 Side Stick 53 Ride Bell 69 Cabasa
38 Acoustic Snare 54 Tambourine 70 Maracas
39 Hand Clap 55 Splash Cymbal 71 Short Whistle
40 Electric Snare 56 Cowbell 72 Long Whistle
41 Low Floor Tom 57 Crash Cymbal 2 73 Short Guiro
42 Closed Hi Hat 58 Vibraslap 74 Long Guiro
43 High floor tom 59 Ride Cymbal 2 75 Claves
44 Pedal Hi Hat 60 Hi Bongo 76 Hi Wood Block
45 Low Tom 61 Low Bongo 77 Low Wood Block
46 Open Hi Hat 62 Mute Hi Conga 78 Mute Cuica
47 Low-Mid Tom 63 Open Hi Conga 79 Open Cuica
48 Hi-Mid Tom 64 Low Conga 80 Mute Triangle
49 Crash Cymbal 1 65 High Timbale 81 Open Triangle
50 High Tom 66 Low Timbale
Copyright ♥ 1991, 1994 MIDI Manufacturers Association
2.6 Arsitektur Client Server
2.6.1 Pendahuluan
Istilah Client Server pertama kali digunakan pada tahun 1980-an sebagai
referensi pada PC (Personal Computer) pada sebuah jaringan. Model client server yang
sebenarnya mulai diterima dan diterapkan pada akhir tahun 80-an. Arsitektur piranti
lunak client server bersifat versatile, message-based dan infrastruktur modular yang
dimaksudkan untuk meningkatkan kegunaan (usability), fleksibilitas, interoperabilitas
35
dan skalabilitas dibandingkan dengan sistem tersentralisasi, mainframe, atau time
sharing computing (Sadoski,1997).
Client adalah sisi yang me-request servis dan server adalah sisi yang
menyediakan servis. Sebuah komputer bisa menjadi client maupun server tergantung
dari konfigurasi perangkat lunak yang dimiliki (Sadoski,1997).
2.6.2 Keunggulan Arsitektur Client-Server
Keunggulan arsitektur client sever dapat kita tinjau dengan melihat asal muasal
mengapa arsitektur client server merupakan pengembangan dari arsitektur – arsitektur
software sebelumnya (Sadoski,1997).
2.6.2.1 Arsitektur Mainframe
Dengan arsitektur mainframe, semua pengetahuan berada pada host komputer
pusat. User berinteraksi dengan host pusat tersebut melalui sebuah terminal yang
menangkap penekanan tombol dan mengirimkan informasi tersebut ke host pusat
Arsitektur mainframe tidak terhubung pada sebuah perangkat keras. Interaksi
user dapat dilakukan dengan menggunakan workstation PC atau UNIX. Keterbatasan
arsitektur mainframe adalah arsitektur ini tidak mendukung GUI (Graphical User
Interface) atau akses ke database yang banyak, dan secara geografis situsnya terpisah.
Pada beberapa tahun terakhir, mainframe telah menemukan kegunaan barunya yaitu
sebagai server pada arsitektur client server yang terdistrubusi (Sadoski,1997).
36
2.6.2.2 Arsitektur File Sharing
Jaringan komputer yang asli didasarkan pada arsitektur file sharing, dimana
server mendownload file dari lokasi yang di share di desktop. Task yang di-request oleh
user kemudian berjalan di desktop. Arsitektur file sharing bekerja jika penggunaan share
rendah. Pada tahun 90-an, LAN (Local Area Network) computing berubah karena
kapasitas dari file sharing dibatasi oleh jumlah online user yang meningkat, dan GUI
menjadi semakin populer. Saat ini, PC populer dengan menggunakan arsitektur client
server (Sadoski 1997).
2.6.2.3 Arsitektur Client Server
Dengan adanya batasan pada arsitektur file sharing, arsitektur client server mulai
muncul. Pendekatan ini memperkenalkan database server sebagai pengganti dari file
server. Dengan menggunakan DBMS (Database Mabagement System) relasional, query
dari user dapat ditampilkan secara langsung.
Arsitektur client server menurunkan traffic jaringan dengan menyediakan respon
query dibandingkan dengan transfer file total. Ini meningkatkan multi-user updating
melalui GUI front end menuju ke database yang di-share. Pada arsitektur client server,
Statement Remote Procedure Calls (RPCs) atau Standard Query Language (SQL)
biasanya digunakan untuk mengkomunikasikan antara client dan server.
Arsitektur client server dimaksudkan untuk menyediakan arsitektur yang bisa
diukur pada setiap komputer atau proses dalam jaringan, baik itu adalah sebuah client
atau server. Piranti lunak pada server secara umum, berjalan komputer yang powerful,
yang ditujukan untuk penggunaan khusus untuk menjalankan aplikasi bisnis.
37
Piranti lunak client di lain hal, umumnya berjalan pada PC atau workstation
biasa. Client mendapatkan semua atau sebagian besar dari informasi dan mengandalkan
pada aplikasi server untuk hal – hal seperti konfigurasi file, stock quote, program
aplikasi bisnis atau untuk memindahkan task load yang intensif dari sebuah PC kembali
ke server, dengan tujuan untuk menjaga komputer client dan user-nya agar bebas untuk
menjalankan task – task yang lain (Sadoski, 1997).
2.6.3 Properti Client-Server
Properti dari sebuah server adalah (Anonim, 2006):
a. Passive (Slave)
b. Menunggu request (waiting)
c. Merespon client dengan melayani client dan mengirim reply ke client untuk apa
yang mereka minta.
Properti dari sebuah client adalah (Anonim, 2006):
a. Active (Master)
b. Mengirim (request)
c. Menunggu sampai reply datang
Server dapat mempunyai status atau tidak mempunyai status sama sekali. Server
yang tidak mempunyai status tidak menyimpan informasi apa pun di antara request
yang ada. Sebagai contoh: sebuah server HTTP untuk halaman HTML yang statik,
server yang mempunyai status dapat mengingat informasi antara request yang ada.
Ruang lingkup informasi ini adalah global atau session. Contoh: Apache Tomcat
Jenis lain dari arsitektur jaringan yang lain dikenal sebagai arsitektur peer-to-
peer, karena setiap node atau instance dari program yang dijalankan adalah keduanya
38
bisa menjadi client dan sekaligus juga menjadi server dan setiap komponen mempunyai
tanggung jawab yang ekuivalen. Kedua arsitektur, client, server dan peer-to-peer
digunakan secara luas. Masing-masing dari arsitektur memiliki keunggulan dan
kelemahan (Anonim, 2006).
2.6.4 Arsitektur n-tier
Arsitektur client server memiliki tingkatan-tingkatan. Tingkatan-tingkatan ini
(tier) menentukan bagaimana arsitektur ini akan diterapkan berikut apa saja yang
diperlukan untuk memenuhi arsitektur client server ini. Selama ini arsitektur yang sering
digunakan adalah two tier arsitektur dan three tier arsitektur, dan pada arsitektur tersebut
biasa diterapkan beberapa implementasi yang berbeda (Sadoski, 1997).
2.7 Pemrograman Socket
2.7.1 Definisi Socket
Socket adalah kombinasi antara alamat IP dan port. (Veeramani, 2005). Socket
juga dapat dikatakan sebagai bentuk komunikasi antar proses yang digunakan untuk
membentuk koneksi dari komunikasi dua arah antar dua aplikasi, biasanya melalui
jaringan komputer. Namun dapat terjadi pada komputer yang sama.
Ada dua jenis socket yaitu internet socket dan local socket. Internet Socket
adalah socket yang mengikat port yang diberikan, kemudian menyerahkannya pada
transport layer untuk mengidentifikasi aplikasi mana sebagai tujuan pengiriman data.
Local socket adalah socket yang digunakan untuk komunikasi antar proses pada host
yang sama, bukan pada host yang berbeda. (http://en.wikipedia.org/wiki/Socket)
39
2.7.2 Java Networking
Java menggunakan banyak mekanisme berbasis stream ke keseluruhan bahasa
untuk menerima I/O. Sebagai contoh, semua file I/O dan memori I/O pada Java diterima
dengan stream. Pada umumnya pengiriman data juga dibawa dengan menggunakan
stream, walaupun implementasi datagram juga mendukung. Kelas-kelas pada Java
disediakan untuk internet working antara client dan server (Golding, 1997).
2.8 Media Streaming
Media Streaming adalah media yang terus menerus diterima dan ditampilkan
kepada user pada saat provider sedang mengirimkannya (belum selesai). Metode
pengiriman yang digunakan, sangat bergantung dari jenis media yang dikirimkan.
Streaming biasanya diterapkan pada media yang mempunyai jaringan telekomunikasi.
Pada umumnya sistem pengiriman terbagi dua, yaitu yang berkaitan dengan streaming
(televisi, radio), atau yang tidak berkaitan dengan streaming (audio CD, video
cassetes).(http://en.wikipedia.org/wiki/Streaming_media)
2.9 Diagram Alir (Flow Chart)
Diagram alir (flowchart) adalah representasi grafis dari serangkaian aktivitas
operasi, pergerakan, inspeksi, delay, keputusan dan penyimpanan dari sebuah proses.
Diagram alir menggunakan simbol-simbol untuk merepresentasikan jenis operasi atau
proses yang sedang berjalan. Bentuk yang sudah distandarisasi menyediakan metode
yang umum dipakai oleh banyak orang untuk memvisualisasikan masalah dengan cara
yang sama dan lebih mudah (Hansen, 2005).
Simbol-simbol yang digunakan dalam diagram alir adalah sebagai berikut:
40
1. Proses, dibagi menjadi 2 macam:
a. Berupa proses/ pengolahan
b. Predefined process
2. Operasi input/output
3. Decision, berupa pertanyaan atau penentuan suatu
keputusan
4. Terminal, untuk menandai awal dan akhir program
5. Preparation, untuk instalasi suatu nilai.
6. Panah, sebagai penghubung antar komponen dan penunjuk
arah.
7. Manual input, sebagai input dari pengguna
8. Penghubung:
a. On page connector, sebagai penghubung dalam 1 halaman
b. Off page connector, sebagai penghubung antar halaman
yang berbeda
41
Berikut ini adalah contoh penggunaan flowchart pada sebuah proses:
Gambar 2.11 Penggunaan Flowchart
Sumber : www.enfoldsystems.com