RSS

Analog ve dijital: Hohner'in 150. yıl kutlaması; Csound, Lisp, Chuck, vs.

01 Oct

Bilişsel bilim yüksek lisans tezim yüzünden bir süreliğine bazı ilgi alanlarıma bir miktar ara vermek zorunda kalmıştım. Bunların başında da blues armonika çalmak geliyordu. Nihayet hasret sona erdi ve Cumartesi günü yeni bir blues armonika almaya karar verdim. Elimdeki Hohner MS serisi armonika aylar önce bozulduğu için yeni modellere bakarken Hohner’in 150. yıldönümü kutlamaları için özel modeller çıkardığını gördüm. Bunun üstüne 150th Anniversary Standard Edition modeli bir blues armonika almamak olmazdı. Bunu bir de tarihi koleksiyondan küçük ve şirin bir Puck ile süsleyince tıpkı kaybettiği oyuncağına kavuşmuş çocuklar gibi sevindim dersem abartmış olmam 🙂

Çok şık bir ahşap kutu içinde gelen 150th Anniversary Standard Edition blues armonikası hem uygun fiyatlı hem de benim emektar MS series modeline kıyasla biraz daha parlak bir sese sahip.

Bu analog güzellik haricinde yine müzik bağlamında ilgilenmek istediğim ama vakit ayıramadığım şeylerin arasında bilgisayarla ses sentezleme ve müzik üretimi geliyordu. Evdeki makinama ek olarak ofisteki makinama da Csound (64 bitlik son sürümü), Blue ve ChucK yazılımlarını kurdum. Csound kurulumundan çıkan ve Michael Gogins tarafından yazılmış harika bir Csound tutorial belgesinden Csound bilgilerimi tazelemeye ve yeni şeyler öğrenmeye başladım. Gogins, csound programlama için Python’a ağırlık verdiğinden ötürü sanırım bu vesile ile Python da kurcalama imkanım olacak.

Tabii bilgisayarda müzik söz konusu olacak da Lisp söz konusu olmayacak, olur mu, olmaz elbette! 😉 Hemen yine Gogins’in tutorial belgesinden ve csound e-posta listesinden faydalanarak Common Lisp (CLISP) kullanarak Csound’u nasıl kontrol edebileceğimi inceledim. CM (Common Music) ve CFFI kurup eldeki örnek .lisp dosyasını biraz modifiye ettikten sonra CL ile de ilk başarılı Csound denememi gerçekleştirmiş oldum:


;; Brief example indicating a minimal use of the Csound API from CLisp.
;; This file must be run from the interfaces directory,
;; e.g. "cd interfaces; clisp test.lisp"
;; You may need to edit directories specified below.

(load "E:/Program Files/cm/src/cm.lisp")
(use-system :cffi :directory "E:/Program Files/clisp-2.41/cffi/cffi.asd")
(load "csound.lisp")
(load "filebuilding.lisp")
(cffi:load-foreign-library "csnd.dll")
(setq cs (csound::csoundCreate nil))
(cffi:with-foreign-string (csd "../../examples/trapped.csd")
			  (filebuilding::csoundCompileCsd cs csd))
(setq *keep-playing* t result 0)
(loop while (and *keep-playing* (eq result 0)) do
      (setq result (csound::csoundPerformKsmps cs)))

Bundan sonrası epey sesli (!) ve eğlenceli geçeceğe benziyor 😉 Csound ve Blue ortamlarını daha iyi öğrenmenin yanısıra ChucK ile de ‘live coding‘ denemeleri gerçekleştirmeyi planlıyorum (akıp gitmekte olan bazı ses döngülerine gerçek zamanlı olarak farklı kodlar yollayarak müdahale edebilmek epey zevkli ve deneysel çalışmalara yol açabilir).

Advertisements
 

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

 
%d bloggers like this: