Bilgisayar Bilimleri Lisans Seçmeli Dersi: GNU/Linux Üzerinde Müzik

Benzer belgeler
BİLGİSAYAR BİLİMLERİ LİSANS SEÇMELİ DERSİ : GNU/LİNUX ÜZERİNDE MÜZİK

Bilgisayar Bilimleri Lisans Seçmeli Dersi: GNU/Linux Üzerinde

I. Oturum: GNU/LINUX A GİRİŞ

EYLÜL 2012 İŞLETİM SİSTEMLERİ. Enformatik Bölümü

İşletim Sistemleri; İÇERİK. Yazılım BİLGİ TEKNOLOJİLERİ VE UYGULAMALARI Yazılım Türleri

EĞİTİM-ÖĞRETİM YILI MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ (İNGİLİZCE) BÖLÜMÜ DERS PROGRAMINDA YAPILAN DEĞİŞİKLİKLER

Pardus. S.Çağlar Onur, 21 Aralık Pardus Projesi [TÜBİTAK / UEKAE] Linux Kullanıcıları Derneği

Pardus. A. Murat Eren, 25 Mart Pardus Geliştiricisi. Pardus Yenilikleri Sık Sorulan Sorular

Akademik Dünyada Özgür Yazılım. Akademik Dünyada. Onur Tolga Şehitoğlu

Metin Demiralp. 4 Şubat 2003

Veritabanı Dersi. Teoriden Pratiğe. Çağıltay N.E., Tokdemir G. Veritabanı Sistemleri Dersi -Bölüm XXV: Web'den Erişim Çağıltay, N., Tokdemir, G.

Linux un Temel Bileşenleri. Linux Nedir? Aydın ÜSTÜN (Selçuk Üniversitesi) e-posta:


Müzik Verileri İçin XML Tabanlı Diller

İŞLETİM SİSTEMLERİ. Enformatik Bölümü

BİLGİ İŞLEM DERS 1. Yrd Doç Dr. Ferhat ÖZOK MSGSU FİZİK BÖLÜMÜ MSGSU FİZİK BÖLÜMÜ

ve Sonrası Girişli Öğrenciler için Uygulanacak Ders Program

Açık Kaynak Kodlu Yazılım

Bilgisayar Mühendisliği Bölümü Lisans Ders Programı / Computer Engineering Undergraduate Curriculum

Android e Giriş. Öğr.Gör. Utku SOBUTAY

Efe Çiftci Çankaya Üniversitesi Bilgisayar Mühendisliği Bölümü Kasım 2012 CENG 191 Computer Engineering Orientation Özel Sunumu

DERS TANITIM BİLGİLERİ. Dersin Adı Kodu Yarıyıl Teori (saat/hafta) Laboratuar (saat/hafta) Uygulama (saat/hafta) AKTS. Yerel Kredi

Müzik Verilerini Saklama Biçimleri

Ders Adı Kodu Yarıyılı T+U Saati Ulusal Kredisi AKTS

YÖNETİM BİLİŞİM SİSTEMLERİ BÖLÜMÜ YENİ DERS MÜFREDATI (1) FAKÜLTESİ: İŞLETME FAKÜLTESİ / BUSINESS SCHOOL

İŞLETİM SİSTEMLERİ. (Operating Systems)

İNTERNET PROGRAMCILIĞI DERSİ

Temel Linux Eğitimi 1., 2. ve 3. Bölümler

T.C. ERCİYES ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ EĞİTİM ÖĞRETİM YILI DERS KATALOĞU

Akdeniz Üniversitesi

DEVAM ETMEKTE OLAN ÖĞRENCİLERE UYGULANACAK PROGRAMLAR VE DERSLERİN İNTİBAKLARI

Linux ve Windows Üzerinde C ve C++ Kullanımı

Bilgisayar Mühendisliği

Ders Adı Kodu Yarıyılı T+U Saati Ulusal Kredisi AKTS. Bilgisayar Organizasyonu BIL

MÜHENDİSLİK FAKÜLTESİ / ENSTİTÜSÜ / YÜKSEKOKULU BİLİŞİM SİSTEMLERİ MÜHENDİSLİĞİ BÖLÜMÜ /ABD LİSANS PROGRAMI - 2 ( yılı öncesinde birinci

Linux e Giriş ve Dağıtımlar

PROGRAMLAMA TEMELLERİ

Nasıl Pardus Geliştiricisi Olunur?

MÜHENDİSLİK FAKÜLTESİ / ENSTİTÜSÜ / YÜKSEKOKULU BİLİŞİM SİSTEMLERİ MÜHENDİSLİĞİ BÖLÜMÜ /ABD LİSANS PROGRAMI - 1 ( yılı ve sonrasında birinci

Tarih Saat Modül Adı Öğretim Üyesi. 01/05/2018 Salı 3 Bilgisayar Bilimlerine Giriş Doç. Dr. Hacer Karacan

YRD. DOÇ. DR. SERDAR ÇELİK

Ders Adı Kodu Yarıyılı T+U Saati Ulusal Kredisi AKTS. Teknik İngilizce I BIL

Pardus. Erkan Tekman, T. Barış Metin. 18 Mayıs Ulusal Dağıtım Projesi Ulusal Elektronik ve Kriptoloji Enstitüsü. Pardus için 10 Neden

Bilgisayar Mühendisliği. Bilgisayar Mühendisliğine Giriş 1

Linux İşletim Sistemi Tanıtımı

MÜFREDAT DERS LİSTESİ

1) Programlama dillerinin temel kavramlarını öğrenir. 1,2,4 1

DEVAM ETMEKTE OLAN ÖĞRENCİLERE UYGULANACAK PROGRAMLAR

GALATASARAY ÜNİVERSİTESİ

DEVAM ETMEKTE OLAN ÖĞRENCİLERE UYGULANACAK PROGRAMLAR VE DERSLERİN İNTİBAKLARI

1.Debian. 2.Ubuntu. Şekil 1. Güncel logosu

Alanya Alaaddin Keykubat UniversityInternational Relations Office

BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 10. LINUX OS (Programlama) BİLGİ & İLETİŞİM TEKNOLOJİLERİ GENEL BAKIŞ

Özgür Yazılım ve GNU/Linux'a Giriş

UHeM ve Bulut Bilişim

Bilkent Üniversitesi Bilgisayar Mühendisliği Bölümü. Bilgisayar Mühendisliği

SELÇUK ÜNİVERSİTESİ SEYDİŞEHİR MESLEK YÜKSEKOKULU BİLGİSAYAR TEKNOLOJİLERİ BÖLÜMÜ BİLGİSAYAR PROGRAMCILIĞI PROGRAMI DERS DAĞILIM ÇİZELGESİ (2010)

DENİZ HARP OKULU BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ

BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ

Akdeniz Üniversitesi

Bilgisayar Mühendisliği Bölümü Lisans Ders Programı / Computer Engineering Undergraduate Curriculum

Akademik Rapor Hazırlama ve Yazışma Teknikleri

Bilgisayar Programlama MATLAB

YAZILIM MÜHENDİSLİĞİ BÖLÜMÜ İNTİBAK ÇİZELGESİ SINIF / GÜZ DÖNEMİ

1. YARIYIL / SEMESTER 1 2. YARIYIL / SEMESTER 2

YRD. DOÇ. DR. AGÂH TUĞRUL KORUCU

Akdeniz Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölüm Tanıtımı

ROBOTİK VE KODLAMA EĞİTİMİ ÇERÇEVESİNDE ÖĞRETİM YILI BİLİŞİM TEKNOLOJİLERİ DERSİ ÜNİTELENDİRİLMİŞ YILLIK DERS PLANI

Pardus Projesi ve Topluluk süreçleri. Ali Işıngör Akın Ömeroğlu

GTÜ Bilgisayar Topluluğu

DENİZ HARP OKULU BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ

Linux Kurulumu. Bilgisayar Mühendisliği. 11 Mayıs 2011

1.PROGRAMLAMAYA GİRİŞ

MATEMATİK BÖLÜMÜ BÖLÜM KODU:3201

Akdeniz Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölüm Tanıtımı

Ders Kodu Dersin Adı Dersin Ġntibak Durumu

Eğitim Semineri Araştırmacının Alet Kutusu: Mendeley

Akdeniz Üniversitesi Mühendislik Fakültesi Bilgisayar Mühendisliği Bölüm Tanıtımı

Ders Adı Kodu Yarıyılı T+U Saati Ulusal Kredisi AKTS

Ders Adı : Nesne Tabanlı Programlama-I Ders No : Teorik : 3 Pratik : 1 Kredi : 3.5 ECTS : 4. Ders Bilgileri.

PROGRAMLAMAYA GİRİŞ. Öğr. Gör. Ayhan KOÇ. Kaynak: Algoritma Geliştirme ve Programlamaya Giriş, Dr. Fahri VATANSEVER, Seçkin Yay.

Yazılım Mühendisliğine Giriş 2018 GÜZ

Bilgisayarlara ve Programlamaya Giriş (COMPE 101) Ders Detayları

BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ

Bilecik Üniversitesi Mühendislik Fakültesi Moodle Uzaktan Öğretim Sistemi

ÖZGÜR YAZILIMLAR İLE J2EE

TÜİK e-vt Teknik Kılavuz

DENİZ HARP OKULU BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ

Akdeniz Üniversitesi

1.SINIF 1. DÖNEM DERS MÜFREDATI. (9) TEORİ/UYG. (SAAT) MATH 101 Matematik I Calculus I Zorunlu 4-6 PHYS 101 Fizik I Physics I Zorunlu ECE 101

MOODLE UZAKTAN ÖĞRETİM SİSTEMİ

Veritabanı. Ders 2 VERİTABANI

VERİ YAPILARI VE PROGRAMLAMA (BTP104)

28 Aralık Yıldız Teknik Üniversitesi Bilgisayar Mühendisliği Bölümü

PHP 1. Hafta 1. Sunum

Dersin Konusu ve Amaçları: Ders P lanı: Bölüm 1: Bilgi Teknolojilerinde Temel Kavramlar

GALATASARAY ÜNİVERSİTESİ

Bilgiyi Keşfedin! Özelleştirme, Eklenti ve Veri Entegrasyonu Kurumsal Seviyede Yönetim ve Performans

Ders Adı Kodu Yarıyılı T+U Saati Ulusal Kredisi AKTS

Transkript:

Akademik Bilişim 07 - IX. Akademik Bilişim Konferansı Bildirileri 31 Ocak - 2 Şubat 2007 Dumlupınar Üniversitesi, Kütahya Bilgisayar Bilimleri Lisans Seçmeli Dersi: GNU/Linux Üzerinde Müzik Tuğba Dalyan-Yıldız 1, Ruhan İkeda 1,2 1 İstanbul Bilgi Üniversitesi, Bilgisayar Bilimleri Böl. Kurtuluş Deresi Cad. No:47, Dolapdere, 34440 Beyoğlu, İstanbul 2 İstanbul Teknik Üniversitesi, Dr. Erol Üçer Müzik İleri Araş. Mer. (MİAM), Maçka Kampüsü, 80680, Maçka, İstanbul tdalyan@cs.bilgi.edu.tr, ralpaydin@cs.bilgi.edu.tr Özet: Bu makalede, İstanbul Bilgi Üniversitesi Bilgisayar Bilimleri Bölümü tarafından Güz 2006 döneminde verilen COMP 291 : GNU/Linux Üzerinde Müzik dersinin içeriği, işleyiş şekli ve projelerinden bahsedilecektir. GNU/Linux sistemi, açık ve modüler yapısı, sistemin üzerinde bulunan gereçler, bu sistemde ses ve müzik işlemek için geliştirilmiş yetkin özgür yazılımlar nedeniyle tercih edilmiştir. Ders, müzik bilgisi açısından, müzik temeli olmayan bir öğrencinin rahatlıkla anlayabileceği düzeyde tutulmuştur. Dersin ana amacı, müziksel bilginin bilgisayar ile işlenmesidir. Ders, GNU/Linux un ses ve müzik mimarisi, Lisp ile programlama, Lisp programları yazarak müzik besteleme ve Bilgisayar ve Müzik Araştırması başlıkları olarak dört kısımdan oluşmuştur. Anahtar Kelimeler: Bilgisayar ve Müzik, Bilgisayar ve Ses, Müzik İşleme, Müzik Bilgisi İşleme, Müzik ve GNU/Linux. An Undergraduate Computer Science Course : Music on GNU/Linux Abstract: In this article, we will share our experience on the elective undergraduate course : COMP 291 Selected Topics in Computer Science : Music on GNU/Linux which was offered in Fall 2006 by the Computer Science Department of İstanbul Bilgi University. We chose GNU/ Linux operating system because it is open and modular, the system is equipped with adequate tools for music, free and capable software for sound and music processing exists for this system. We assume that students had no prior exposure to music. The main purpose of the course is processing musical information. The course has four sections: GNU/Linux audio architecture, Lisp programming, composing through Lisp programming, Computer Music Research Topics. Keywords: Computer Music Research, Music and GNU/Linux, Musical Information Processing, Audio and Sound on GNU/Linux, Digital Music. 1. Giriş GNU/Linux işletim sisteminin, ses ve müzik işleme için hazır olup olmadığı tartışılsa da özgür yazılım dünyasının en kapsamlı projesi olan GNU/Linux işletim sistemi üzerinde çalışan ve bir müzisyenin rahatça sayısal bir ev stüdyosu olarak kullanabileceği çok sayıda özgür yazılım bulunmaktadır. Günümüzde, GNU/Linux un bilgisayar ile ilgilenen müzisyenler için ne kadar çekici bir işletim sistemi olabileceğine, geliştirilen sistemlere ve üzerindeki özgür yazılımlara (ÖY) birçok yerde değinilmektedir [4],[14]. İstanbul Bilgi Üniversitesi Bilgisayar Bilimleri Bölümü nde Güz 2006 döneminde, müzik bölümü öğrencilerine, müzik ile ilgilenen bilgisayar bilimi ve matematik bölümü öğrencilerine hitap eden GNU/Linux Üzerinde Müzik seçmeli dersi açılmıştır. Dersin içeriğini özetleyecek olursak, özgür yazılım tabanlı GNU/Linux sisteminin ses mimarisi ve bu mimari üzerinde 327

Bilgisayar Bilimleri Lisans Seçmeli Dersi: GNU/Linux Üzerinde Müzik Tuğba Dalyan-Yıldız, Ruhan İkeda koşan ses ve müzik işleme programlarına giriş yapılmış, ses ve müzik bilgisinin rahat işlenmesi için Common Lisp programlama dili öğretilmiş, Common Lisp tabanlı Common Music ile algoritmik besteleme örnekleri verilmiştir. Ayrıca, Common Lisp Music sinyal işleme paketi ile ses sentezleme örnekleri gösterilmiştir. Makalemizin ilk kısmında, GNU/Linux Müzik sistemleri hakkında genel bilgi verilmiştir. İkinci kısmında, dersin işleyişi ve öğrencilere verilen dönem projelerinden bahsedilmiştir. Son kısımda ise kazanılan ve kazandırılan deyenimlerden bahsedilmiştir. 2. GNU/Linux Müzik Sistemi GNU/Linux un, ses ve müzik sistemlerindeki performansını düşük bulan geliştiriciler, 90 ların başında çalışmalara başlamışlardır. 1992 de Hannu Savolainen ın ses aygıtları için geliştirdiği Açık Ses Sistemleri (OSS/Free), bu yönde atılmış ilk adımdır[13]. 2002 de, GNU/Linux işletim sistemine Gelişmiş Linux Ses Mimarisi ALSA (Advanced Linux Sound Architecture) eklenmiştir. ALSA, GNU/Linux 2.4 çekirdeğindeki ses mimarisinin yerini alarak 2.6 çekirdeğine de adapte edilmiştir. GNU/Linux ses ve müzik sistemlerinde görülen en önemli gelişme ise 2.6 çekirdeği ile gelen gelişmiş ALSA ve MIDI desteğidir. Böylelikle, GNU/Linux çekirdeğinin müzik yazılımı ve donanımı için sağladığı donanım desteğinin artması ile bu platform müzik ile ilgilenenler için esnek ve yetkin bir stüdyo haline gelmiştir[14]. Günümüzde, donanım desteği dışında da müzik ile ilgili kapsamlı projeler başlatılmıştır. Ubuntu Studio Audio, bu projelerin başında gelmektedir. Debian tabanlı Ubuntu Studio Audio paketleri, GNU/Linux platformunda kullanıcıya esneklik sağlamanın dışında, kullanım kolaylığı da getirmiştir. Bu sistemde, mevcut kaynak listesinin bulunduğu dosya, yeni kaynak adresleri eklenerek güncelleştirilir. Kullanıcı, herhangi bir paket yönetimini kullanarak da sisteme istenilen paketleri yükleyebilir. Ubuntu Studio Audio daki paketlere ve kaynak listesine resmi adresinden ulaşılabilir[18]. Ses ve müzik işlemeye yönelik diğer önemli GNU/Linux dağıtımları: Planet CCRMA - RedHat 9 ya da Fedora Core 1, 2, 3, 4, 5 üzerinde çalışan rpm paketlerinin derlenip, toplanması ile oluşturulmuştur[15]. Agnula/DeMuDi, GNU/Linux işletim sisteminin ses ve müzik kullanımı için geliştirilen dağıtımıdır. Burada, Agnula : A GNU Linux Audio; DEMUDI ise DEbian MUltimedia Distribution (Debian Çokluortam Dağıtımı) karşılığıdır[17]. Agnula, profesyonel ses ve video alanındaki ÖY ları yaymak için gerçekleştirilen bir gönüllülük esaslı bir projedir. Asıl amacı, saf özgür yazılım dağıtımı olan Debian GNU/Linux dağıtımı üzerinde bu projeyi geliştirmektir[14]. Agnula/DeMuDi, Debian dan bağımsız bir dağıtım değildir; Debian sistemin multimedya sistemleri için yapılandırılmış halidir. Agnula/De- MuDi, kendi başına CD den kurulduğu gibi, Ubuntu Studio daki gibi kaynak listesini değiştirip, istenilen paketlerin çekilmesi şeklinde de olabilir[2],[3]. Günümüzde, Ubuntu Studio ve Agnula / DeMuDi nin tercih edilmesinin esas sebebi, tamamen özgür bir dağıtım olan Debian üzerine inşa edilmesindendir. Paket yönetiminin rahat ve gelişmiş olması, birçok insan tarafından desteklenmesi ve sorun çıktığında çözüm sisteminin gelişmiş olması gibi nedenler Debian ı tercih edilen bir dağıtım haline getirmiştir. Tablo 1, Agnula/DeMuDi de ve Ubuntu Studio Audio nun kaynak dosyalarında yer alan bazı ses ve müzik programlamlarını göstermektedir. 328

Akademik Bilişim 07 - IX. Akademik Bilişim Konferansı Bildirileri 31 Ocak - 2 Şubat 2007 Dumlupınar Üniversitesi, Kütahya Ses/müzik yazılımı Ardour GTK Hydrogen JACK Control JAMin Qsynth Seq24 Serpentine Audio CD Creator Ses Kaydedicisi Sound Juicer CD extractor VkeyBD ZynAddSubFx İşlev/açıklama JACK bağlantılı, ses kanallarını işleme ve karıştırma platformu Vurmalı çalgı (ritim kutusu) topluluğu Programlar arası audio akışını denetleyen motor Profesyonel audio işleme Sentezleyici MIDI partisyonlarını birleştirme gereci. Audio CD yazıcısı ogg ve wav formatında ses kaydedici Audio CD teki parçaların ogg dosyalarına çevrimi Sanal MIDI klavyesi Ses sentezleyicisi Tablo 1. GNU/Linux Müzik sistemi üzerindeki bazı ses ve müzik programları: Kaynak dosyalarında işaret edilen ve Debian sitelerinde debian paketi olarak da hazırlamış özgür yazılımların dışındaki paketler de GNU/ Linux müzik sistemine yüklenebilir. Örneğin, zip veya tar yumakları. Bizim örnek sistemimizde aşağıdaki paketler de bulunmaktadır: MusicXML: MusicXML, müzik bilgisinin XML dilinde (dilden, koddan bağımsız, bilgisayara ve insana açık gramer olarak) ifade edilmiş halidir. Müzik saklama formatı olan MusicXML, kanonik bir müzik formatıdır. [12],[8]. Lilypond: TeX temelli nota yazımı ve şekillendirme ( layout ) programıdır ve TeX tabanlı yazılım paketlerinde olduğu gibi WYSIWYG (What You See Is What You Get --Ne görüyorsanız onu elde edersiniz) değildir. Lilypond un esas becerisi, LaTeX in matematiksel formül şekillendirmesi gibidir. Müzik bilgisini kesin olarak kodlamakla kalmaz, basımevi çıktısı gibi güzel gözükmesini de sağlar[10]. Common Müzik Ailesi: Common Music, Common Lisp Music ve Common Music Notation suitinden oluşur. Common Music, Lip tabanlı algoritmik besteleme, Common Lisp Music Lisp tabanlı sinyal işleme, Common Music Notation ise Lisp tabanlı müzik basımı programlarıdır[6]. 3. Dersin İşlenişi Bu kısımda, Güz 2006 döneminin her çeyreğinde işlenilen konulardan ve dönem projelerinden alt başlıklar halinde bahsedilmiştir. 3.1 GNU/Linux üzerinde ses ve müzik işleme Dersin ilk haftalarında müzik terminolojileri hakkında bilgi verilmiş, öğrencinin GNU/ Linux üzerinde çalıp, yazıp, okuyup, kaydedebilecekleri programlar gösterilmiştir. İstanbul Bilgi Üniversitesi Bilgisayar Bilimleri Bölümü nde son dört yıldır verilen eğitim GNU/Linux platformu üzerinde olduğu için, dersi alan öğrencilere GNU/Linux platformu hakkında herhangi bir giriş yapılmamıştır. ÖY tabanlı müzik sistemlerinin mimarisi ve üzerinde koşan ses ve müzik işleme uygulamalarına (çalıcılar, sentezleyicler, kaydediciler, karıştırıcılar, vb.) kısa bir giriş yapılmıştır. Önemli ses ve müzik formatları derste gösterilmiştir. MIDI, MusicXML, Lilypond dosyaları oluşturulmuş ve dinlenmiştir. MusicXML ve MIDI arasında dönüşüm yapılmış, Lilypond dan PDF, PS ve MIDI formatlarına çevirim yapılmıştır. MIDI dosyası oluşturarak MusicXML dosyasına çevirmek öğrenci projelerinden bir tanesidir. İlk proje ile öğrenciler, herhangi bir gereç kullanarak bir MIDI dosyası oluşturmuşlar, bu dosyayı MusicXML formatına çevirmişler ve MIDI ve MusicXML formatlarını tanımışlardır. 3.2 Lisp ile Müzik Programlama Dönemin ikinci çeyreğinde, Common Lisp programlama dili anlatılmıştır. Böylelikle, müziğin yapısına ve işleyişine dair bilgilerini bir programlama dili aracılığı ile kesinleştirmişlerdir. Dil olarak Lisp seçilmesinin nedenleri ise: 329

Bilgisayar Bilimleri Lisans Seçmeli Dersi: GNU/Linux Üzerinde Müzik Tuğba Dalyan-Yıldız, Ruhan İkeda 1. 2. 3. 4. 5. Lisp matematiksel düşünceye en yakın programlama dilidir. Kişi (örneğin bir müzisyen), bilgisayarın ve programların işleyişinin iç mekanizmalarına aşina olmadan, düşüncelerinin netliği ile bunu program olarak ifade edebilir. Sadece bir çeşit veri yapısı vardır: Liste. Programlar da, veriler de listedir. Programların liste olması programların veri olarak rahat işlenmesini sağlar. Veri ve fonksiyonlar liste olduğu için programın biçimi çok basittir : Parantezle çevrili sembol listeleri. Bellek yönetimi otomatik olarak yapıldığı için programcı kullanmadığı değişkenleri silmek ve benzeri bellek idame işleri ile yükümlü değildir. Müziğin, değişik seviyelerde gösterimi ardarda gelen sembollerdir. İster ses düzeyinde, ister nota düzeyinde olsun liste veri yapısı ile birebir örtüşür. Birden fazla sesin olduğu çoksesli müzikte de her sesin farklı bir liste ile ifadesi, ya da her ölçünün tüm sesleri kapsayacak şeklide ifadesi liste yapısı ile mümkündür. Bölümdeki Bilgisayar Bilimleri öğrencilerinin birinci sınıfta programlama eğitimine Lisp in bir diyalekti olan Scheme ile başlaması dersin işleyişi açısından kolaylık sağlamıştır. Öğrencilerin çalışabilmeleri için laboratuvarlara Common Lisp yüklenmiş[5], böylelikle ödev ve projelerini yapabilecekleri ortam hazırlanmıştır. Bu derste Common Lisp e giriş yapıldıktan sonra, öğrencilere verilen ikinci proje ise, Common Lisp kullanarak, verilen notayla başlayan majör gamı oluşturmalarıdır[7]. Dönemin ikinci çeyreğinin sonunda verilen proje ise, verilen bir nota listesinde tekrar eden dörtlü notaları bulmak olmuştur. Bunu yaparken sadece dört notaya değil, nota dörtlüsünün transpoze edilmiş (ötelenmiş) hallerine ve transpoze edilmiş hallerinin tersini de kontrol etmeleri gerekmiştir. Böylelikle, müzikte örüntü bulmaya giriş yapılmıştır[7]. 3.3 Common Music ve Algoritmik Kompozisyon Dönemin üçüncü çeyreğinde Common Music (CM) paketi incelenmiştir. Bu paketteki nesnelerin ve fonksiyonların müzikte nereye oturduğu tartışılmış, örnek kodlar sınıfta öğrencilerle birlikte yazılmış ve dinlenmiştir. Öğrenciler ile CM içindeki soyut veri yapıları ve fonksiyonlar kullanılarak, programlar yazılmış ve oluşturulan MIDI dosyaları dinlenmiştir. Öğrencilerin laboratuvarlarda fonksiyonlar üzerinde oynama yapabilmeleri için CM paketi yüklenmiştir. Dersin işleyişinde CM nin resmi sitesindeki örnekler de kullanılmıştır [6]. 3.4 Bilgisayar Müziği Araştırma Konuları Dönemin dördüncü bölümünde Bilgisayar Müziği araştırma başlıkları açıklanmıştır. Bilgisayar Müziği araştırma alanı, müzik araştırmalarındaki (teori, kompozisyon, performans, müzikoloji) fikirlerin ve tezlerin bilgisayar programları ve donanımları ile denenmesi kadar, Bilgisayar Bilimleri ve Elektronik Mühendisliği araştırmalarındaki fikirlerin (yapay zeka, sinyal işleme) müzik alanında uygulanmasıdır. Araştırma konularını kabaca dört gurupta toplayabiliriz: 1. 2. 3. 4. Ses Sentezleme amaçlı sinyal işleme [6],[16] Müzik ve yapay zeka [1],[17] Gramer olarak müzik, müzik dilleri [17] Müzikteki matematiksel yapılar [9],[11] 3.5. Dönem Projeleri Öğrenciler, ödevlerin yanısıra bir dönem projesi hazırlamışlardır. Bu projeler, araştırma veya uygulama ağırlıklıdır ve öğrenciler aşağıdaki projelerden bir tanesini seçmişlerdir: 1. CM ortamını kullanarak (veya kullanmadan, sıfırdan başlayarak) müzik organizasyonuna dair CM deki süreç ve dizi benzeri soyut bir veri yapısı veya fonksiyonu oluşturmak. Bu yeni yapıyı veya fonksiyonu kullanan bir müzik örneği hazırlamak. 330

Akademik Bilişim 07 - IX. Akademik Bilişim Konferansı Bildirileri 31 Ocak - 2 Şubat 2007 Dumlupınar Üniversitesi, Kütahya 2. CM içindeki Markov Zinciri Modellemesi ni kullanarak, basit ilkokul melodilerinden oluşan küçük bir veritabanı oluşturarak, bu tarz müzikten bir örnek yaratmak. 3. Müzik Teorisi ndeki küme teorisi ışığı altında kümeler arasında bir yakınlık ilişkisi tanımlamak ve buna bir ölçüt getirmek. 4. XSL kullanarak MIDI2xml ve xml2midi çeviricileri yazmak. 5. Lisp kodu ile CM de müzik bestelemek. Common Lisp Music fonksiyonlarını da CM den çağırmak. Bestelenen müziği Common Music Notation veya Lilypond kullanarak webe bastırmak. 6. Rast, Kurdilihicazkar gibi makamlar eşit aralıklı 12-tona dayalı batı müziğinden farklı bir dizilişe sahiptirler. CM ile Türk müziği makamlarını sesleri tek tek ele alarak, makamdaki sesleri frekans olarak ifade etmek. 7. MusicXML dosyası olarak verilen bir müziğin verili partisyonunu verili aralıkta XSL programlama dili kullanarak transpoze etmek (ötelemek). ri alanların dışındaki bir alanda program yazması sağlanmıştır. Müzik ile ilgilenen öğrencilerin, ses ve müzik ile uğraşacağı yeni bir platform ve kullanabilecekleri paketler gösterilmiştir. Böyle bir ders için, Ubuntu Studio Audio nun çalışan CD (CD den başlatılıp, CD de çalışan, sabit diske müdahele etmeyen), istenen yazılım birleşiminin serbestçe oluşturulması; hem evde hem okulda, birden fazla sistemde çalışabilmesi gibi kolaylıkları nedeniyle tercih edilmelidir. Bilgisayar ile Müzik için lisans dersi kitabının olmaması, öğrenciler için derste istenilen seviyeyi anlamak ve tutturmak açısından zorluk doğurmuştur. The Computer Music Tutorial ın bir kısmı bu dersin kitabı olarak kullanılmıştır[16]. Teşekkür Yazarlar, İstanbul Bilgi Üniversitesi Bilgisayar Bilimleri Bölümü Başkanı Chris Stephenson a Müzik ve Bilgisayar Araştırması konusuna gösterdiği ilgi ve bu konuda bir dersin açılmasını teşvik ettiği için teşekkürlerini sunarlar. 5. Kaynaklar 4. Sonuç Bu bölümde, ders ile ilgili bazı çıkarımlar yapılmış, derste ve işlenişinde eksik görülen yerlerden, kattığı deneyimlerden bahsedilmiştir: İstanbul Bilgi Üniversitesi Bilgisayar Bilimleri Bölümü ndeki eğitimin, son dört yıldır GNU/Linux üzerinde verilmesi, programlamaya girişin Scheme ile öğretilmesi, GNU/Linux üzerinde Müzik dersinin işleyişini kolaylaşmıştır. Ders sayesinde, müzik programcılığının gerektirdiği ölçüde müzik kavramlamlarının, müzik işaretlerinin, sembollerinin ve temel müzik teorisi bilgilerinin edinilmesi sağlanmıştır. Öğrencilerin şimdiye kadar öğrendikle- 331 [1]. Special Issue on Computer Music, ACM Computing Surveys, 1985. [2]. AGNULA, agnula.org, Agnula Project. [3]. Agnula/DeMuDi, demudi-agnula.org, Agnula Project. [4]. Alpaydın, R., GNU/Linux üzerinde ses ve müzik işleme : Agnula/DeMuDi, www. santralmuzik.com/001 ruh.htm, Santral Müzik Dergisi, İstanbul Bilgi Üniversitesi. [5]. CLISP - an ANSI Common Lisp, sourceforge.net/projects/clisp/, SourceForge.net. [6]. Common Music, Common Lisp Music, Common Music Notation. www-ccrma.

Bilgisayar Bilimleri Lisans Seçmeli Dersi: GNU/Linux Üzerinde Müzik Tuğba Dalyan-Yıldız, Ruhan İkeda stanford.edu, The Stanford University Center for Computer Research in Music and Acoustics. [7]. Comp291: Music on Linux, cs.bilgi. edu.tr/pages/courses/year_2/comp_291/, İstanbul Bilgi Üniversitesi Bilgisayar Bilimleri Bölümü. [8]. Extensible Markup Language (XML), www.w3c.org, The World Wide Web Consortium (W3C). [9]. Fauvel, J., Flood,R., ve Wilson, R., Music and Mathematics, Oxford University Press, 2003. [10]. LilyPond, www.lilypond.org, in cooperation with Linux Audio Developers Group and Linux Audio Consortium. [11]. Mazzola, G., The Topos of Music, Birkhauser Verlag. 2002. [13]. Phillips, D., Dev Mazumdar and Hannu Savolainen Interview, Linux Journal Archive, Cilt: 1999, Sayı: 63, Temmuz 1999. [14]. Philips, D., Computer Music and the Linux Operating System: A Report from the Front, Computer Music Journal, 27:4, Winter 2003, 27-42. [15]. Planet CCRMA at home, ccrma.stanford. edu/planetccrma/software/, The Stanford University Center for Computer Research in Music and Acoustics. [16]. Roads, C., The Computer Music Tutorial, The MIT Press, 1996. [17]. Roads, C., ve Strawn, J., Foundations of Computer Music, The MIT Press, 1988. [18]. UbuntuStudio, wiki.ubuntu.com/ubuntustudio, The Ubuntu Community. [12]. MusicXML, www.recordare.com, Recordare LLC. 332