MIDI nedir?

6
Müziğin yapılış tarzını sonsuza dek değiştiren MIDI teknolojisini inceleyeceşimiz yazıların birinci bölümü.

 

 

MIDI’nin Tarihçesi

Antik çağlarda (1970’lerin sonuna kadar), synthesizer denen alet çok muhterem bir aletti. Öyle her müzik aleti dükkanında veya büyük süpermarkette satılmazdı. Eşin-dostun evinde tozlanmasın diye üzeri dantelli örtüyle örtülmüş Triton’lar da göremezdiniz. Synthesizer, büyük müzik gruplarının büyük klavye ustalarının büyük paralar vererek satın aldıkları, büyük kamyonlarla taşınabilen bir enstrumandı. Büyük paralar derken, şöyle orta halli bir Moog sistemi 5,000 dolardan başlar, o güne göre yeni teknolojiler içeren modüler sistemler 10,000-15,000 dolar sınırına ve hatta daha da kuzeye doğru giderdi.

Antik ça?lar?n sonunda mikro i?lemci üretiminin yayg?nla?mas?, ucuzlamas? ve mikro i?lemcilerin synthesizer dizayn?nda giderek daha çok kullan?lmaya ba?lamas?yla synth denen alet de yayg?nla??p ucuzlad?. Hatta birçok profesyonel klavyecinin çok say?da synth’i olmaya ba?lad?.

Ama insan genetik olarak sürekli ?ikayet edecek bir?eyler arama e?iliminde oldu?u için “ne güzel be? tane synth’im var” demek yerine “A synth’inin X sesi, B synth’inin Y sesi çok güzel. Ke?ke A ile B’yi birbirine ba?lamanin bir yolu olsa da ben birini çalarken di?eri de çald?klar?m? unison takip edebilse” veya “A’nin tu?lar?n? seviyorum, B’nin de seslerini, ke?ke A’nin tu?lar? ile B’yi çalabilsem” türünden yak?nmalar duyulmaya ba?landi.

Bu tür ba?lant?lar yapmak mümkün de?ildi, çünkü her synth, üreticinin o model için dizayn etti?i kendine has bir sistem kullan?yordu ve hiçbiri birbiriyle uyumlu de?ildi. Ama kullan?c?lardan gelen bu istek üreticilerin kula??na ula?t? ve bu iste?i yerine getirirlerse sat??lar?n?n artaca??n? farkeden üreticiler tüm synth’lerin birbiriyle ileti?im kurmas?n? sa?layacak evrensel bir dil olu?turmak için harekete geçtiler (ilk giri?im Roland’?n o zamanki ba?kan?ndan geldi diye hat?rl?yorum).

Önce Japonya’daki önde gelen synth üreticileri (Roland, Korg, Yamaha, Kawai) kendi aralar?nda görü?meye ba?lad?lar. Sonra Amerikan üreticileri de bu i?e kat?lmazsa istenen sonucun elde edilemeyece?i anla??ld? ve Sequential Circuits firmas?n?n da kat?lmas?yla görü?meler Trans-Pasifik olarak sürdürüldü (böyle bir sözcük var m??).

1983 y?l?nda görü?meler sonuçland? ve o günden sonra üretilecek her türlü synthesizer’in birbiriyle iyi–kötü ileti?im kurmas?n? sa?layacak olan MIDI (Musical Instrument Digital Interface) protokolünün do?u?u 1983 NAMM (Kuzey Amerika Müzik Aleti Üreticileri) Fuar?’nda dünyaya duyuruldu.

?yi de, nedir bu MIDI?

MIDI, müzik enstrumanlar? aras?nda performans verilerinin seri olarak aktar?lmas?na yarayan bir ileti?im protokolüdür. Bu kadar basit! Laughing

Basit ama yine de biraz aç?klayal?m. Ne demek “performans verisi”?

MIDI ba?lant?s? hiç bir zaman ses (audio) sinyali ta??maz. Ta??d??? bilgi daha çok bilgisayar klavyenizi bilgisayara ba?layan kablonun ta??d??? bilgiye benzer. Diyelim ki yukar?daki örnekte oldu?u gibi A synth’ini bir MIDI kablosuyla B synth’ine ba?lad?n?z. Siz A’n?n tu?lar?na bast?kça B’nin ses üreteci sesi üretiyor. Bu durumda siz A’da bir tu?a bast???n?z zaman A’nin B’ye iletti?i MIDI mesajlar? ?unlard?r:

– bir tu?a bas?ld? (Note on)
– x tu?una bas?ld? (Note number = x)
– tu?a y ?iddetinde bas?ld? (Velocity = y)

Parmag?n?z? tu?tan çekti?inizde ise ?u mesajlar gider:

– bir tu? b?rak?ld? (Note off)
– x tu?u b?rak?ld? (Note number = x)
– tu? z ?iddetinde b?rak?ld? (Velocity = z)

K?sacas? tek bir tu?a bas?p b?rakman?z en az 6 adet MIDI mesaj?n?n gönderilmesini sa?lar (konuyu daha fazla kar??t?rmamak için birçok ayr?nt?y? atl?yorum ?u anda). B synth’i A’dan ald??? bu performans de?erlerine göre sesi sentezler, yani birle?tirip üretir. (Sentez/Synthesis=Birle?tirme, Analiz/Analysis=Ay?r??t?rma)

Peki bu yaz?n?n ilk cümlesindeki “seri olarak” sözü ne anlama geliyor? MIDI protokolü ayn? anda yaln?zca tek bir mesaj gönderilmesine olanak verir. Diyelim ki siz klavyenizde ayn? anda dört tu?a birden bas?p bir akor çald???n?zda, buna ili?kin mesajlar ayn? anda de?il, birbirini takiben, yani seri olarak gönderilir. Bunu yapmak icin klavye tu?a hangi s?rayla bast???n?z? belirleyip verileri o s?rayla göndermeye çal???r. MIDI’nin en büyük k?s?tlamalar?ndan biri budur; hele bir de ileti?im h?z?n?n 31.2 KB/saniye oldu?unu hesaba katarsan?z MIDI ile yap?lan performanslarda zamanlaman?n neden büyük bir sorun haline geldi?ini anlamak daha da kolayla??r.

Bütün bu k?s?tlamalar?na ra?men MIDI çok k?sa zamanda evrensel kabul gördü ve üretilen synth’lerin büyük ço?unlu?u MIDI mesajlar?n? al?p gönderebilme yetene?ine sahip olacak ?ekilde üretildi. ?lk ba?ta MIDI birkaç synth’i birbirine ba?lay?p ayn? anda çalabilmek için kullan?ld?. Ama kisa süre içinde, baz? pratik dü?ünceli insanlar MIDI mesajlar?n? bilgisayara kaydedip sonradan üzerinde istedikleri gibi oynayabileceklerini, geli?tirebileceklerini, saklayabileceklerini ve MIDI dosyas? haline getirip e?e-dosta göndererek ortak müzikal serüvenlere giri?ebileceklerini farkettiler. Bunun sonucunda müzik prodüksiyonunu tamamen de?i?tiren MIDI sequencing programlar? do?du.

MIDI Dilinde ?lk CümlemizYukar?da, müzik klavyemizde tek bir tu?a bast???m?z zaman, bunun en az 3 MIDI mesaj?n?n gönderilmesini sa?layaca??n? yazm??t?m (note on, note value, velocity). Bu üç mesajdan her birini bir sözcü?e, üçünün toplam?n? da bir cümleye benzetebiliriz. Derleyip toparlad???m?zda bu cümle ?una benzer: “x tu?una y h?z?yla bas?ld?”.

 

MIDI dilinde her sözcük 8 bit uzunlu?undad?r. Bit, bildi?iniz gibi 0 veya 1’den olu?an tek bir hanedir (benim burada kolayl?k olsun diye sözcük dedi?im ?eye ise bilgisayar terminolojisinde byte denir, bit’le kar??mas?n!).

Her 8 haneli sözcü?ün, en solda yer alan hanesi özel bir anlam ta??r. Bu hane e?er 1 ise, o sözcük bir eylem bildiriyor demektir (fiil gibi). Buna ?ngilizcede status byte denir. E?er bu hane 0 ise, o sözcük bir de?er bildiriyor demektir (?ngilizcesi data byte).

Örne?in bir tu?a bast???n?zda gönderilen Note On komutu ?öyledir:

1001 0000

(burada sa?daki dört hanenin ba?ka bir görevi var, ama ona daha ileride girece?iz).

Note on komutunun hemen ard?ndan gelen Note Value komutu ise ?öyledir örne?in:

0011 1100

Burada en soldaki s?f?r bu cümlenin bir de?er bildirdi?ini ifade ediyor. Önceden note on komutu geldi?i icin synth bu de?eri zaten merakla beklemekte (“tamam bir notaya bas?ld?, ama hangi notaya?”). ?lk s?f?r bu de?erin geldi?ini belirtiyor, sonraki 7 hane ise hangi notaya bas?ld?g?n? ifade ediyor. Merakl?s? oturup hesaplayabilir, 0 ve 1’lerden olu?an 7 haneli bir say?yla 128 ayr? say?sal de?er ifade edebilirsiniz. Bu nedenle MIDI dünyas?nda tüm de?erler 0 ile 127 aras?nda ayarlanabilir. Note value da ayn? ?ekilde. 128 nota, 10 küsur oktav? kaplayan yeterli bir geni?lik verir bize. Bu geni?lik içinde hangi notaya bas?ld???n? bu kodlama sistemiyle ifade edebiliriz.

Synth hangi notaya bas?ld???n? da ö?rendikten sonra, o notaya hangi h?zla bas?ld??? bilgisini beklemeye ba?lar. O da bir sonraki sözcü?ün içinde gelir:

0100 0000

Burada yine ilk 0 bu sözcü?ün bir de?er bildirdi?ini gösteriyor. Geri kalan 7 rakam ise, tu?a hangi h?zla bas?ld???n? yine 0-127 aras?nda bir rakamla ifade ediyor.

Bak?n, MIDI dilini çat-pat konu?maya ba?lad?k bile! Laughing

(c) 2003 Doruk Somunk?ran. Kaynak göstererek al?nt? yapmak serbesttir.

Paylaş

6 YORUMLAR

  1. Hocam öncelikle bu konuda bizi aydınlattığınız için teşekkürler. Lakin benim klavyem NOTE OFF komutunu hiçbir programda vermiyor. Tuş sürekli basılıymış gibi gözüküyor. Yardımcı olabilirseniz sevinirim. Klavye ile PC arasındaki alışverişi MIDI to USB Converter ile hallediyorum. VSTlerde ses, tuşu bırakmama rağmen çalıyor.

    Selametle Hocam.

    • Merhaba Cihan,

      Anlattıklarından MIDI klavyede veya USB arabiriminde bir sorun varmış gibi görünüyor. Bunları teker teker eleyerek gitmekten başka bir çare yok. Yani, öncelikle klavyeyi bir başka sistemde denemek, veya senin sistemine bir başka klavye bağlayıp denemek. Böylece sorunun klavyede olup olmadığını elemek. Sonra (sorun klavyede değilse) aynı şeyi USB/MIDI arabirimi için yapmak, gibi. Arabirimde sinyal aktarımını gösteren ışıklar var mı? Parmağını tuşlardan kaldırdığında bu ışıklar yanıyor mu?

  2. Merhaba Hocam.

    Öncelikle cevabınız için çok teşekkür ederim. Klavyem çok kaliteli değil. USB/MIDI sinyal aktarımını gösteren ışıklar var. Parmağı çektikten sonra ışık yanıyor(Yalnız basmaya devam etsem bile göstergedeki ışık bir kaç saniye sonra kendisi geri komut gönderiyor gibi ışığı yakıyor.). Windows 7 Ultimate SP1 kullanıyordum. Windows Xp Home SP3’e geçtim. Aynı sorun devam ediyor. Birde Linux tabanlı bir işletim sisteminde deneyip sonucu buraya yazacağım.

    Selametle Hocam.

    • Parmağını çektiğinde ışık yanıyorsa, note off komutu gönderiliyor demektir. O zaman benim tahminim klavyede bir sorun olmadığı yönünde. Yazılımlardan kaynaklanan bir sorun var gibi. Hangi programları kullandığını yazabilir misin?

      (Not: Parmağını tuşa basmaya devam ettiğin esnada gönderilen komutlar büyük olasılıkla aftertouch parametreleri olabilir.)

  3. Hocam FL Studio kullanıyorum(Klavyeden herhangi bir notaya bastığımda fl studio arabiriminde “note on”‘u görüyorum. Kaldırdığımda “note off” yazmıyor. Ama converter gönderdiğine dair ışığı yakıyor). Başka yazılımlarda denedim. Aynı sorun. USB/MIDI aktarımını yapan cihazın sürücüleri, cihazda dahili olarak geliyor. Onda bir sorun olabilir mi?

    Selametle.

CEVAP VER

Please enter your comment!
Please enter your name here