Katsaus vapaisiin nuotinnusohjelmiin



Samankaltaiset tiedostot
Historiaa. Unix kirjoitettiin kokonaan uudestaan C-kielellä Unix jakautui myöhemmin System V ja BSDnimisiin. Kuutti, Rantala: Linux

Etusivu 1. Näkymä ja aktivointi 2. Tee partituuripohja 3. Tee nuotteja 4. Sanat, sointumerkit Pikkukappale. Pikkukappale

Nuottigrafiikka. Tupla viivat, joista jälkimmäinen on paksumpi tarkoittaa sävellyksen loppua. Tahtiosoitus

Etusivu 1. Näkymä ja aktivointi 2. Tee partituuripohja 3. Tee nuotteja 4. Sanat, sointumerkit Pikkukappale. Tee nuotteja

KUVANKÄSITTELY THE GIMP FOR WINDOWS OHJELMASSA

PLAY. TP1 Musiikkikasvatusteknologia Notaatio 2 ja yhteistoiminnallinen nuotinkirjoitus Jarmo Kivelä, projektikoordinaattori

Sanat, sointumerkit...

Excel-taulukkoon X- ja Y-sarakkeisiin tallennettujen koordinaattien muuntaminen paikkatietokohteiksi

Pauliina Munter / Suvi Junes Tampereen yliopisto/tietohallinto 2013

Purot.net Wiki. Tutkielma. Paavo Räisänen. Centria Ammattikorkeakoulu

TAULUKON TEKEMINEN. Sisällysluettelo

YH1b: Office365 II, verkko-opiskelu

ARVI-järjestelmän ohje arvioinnin syöttäjälle

ASCII-taidetta. Intro: Python

1. Skannaus ja tekstintunnistus (OCR) verkkoskannerilta

ASENNUS JA KÄYTTÖOHJE

Maastotietokannan torrent-jakelun shapefile-tiedostojen purkaminen zip-arkistoista Windows-komentojonoilla

Vesa Ollikainen, päivitys Juha Haataja

Vedä ja pudota Maamittauslaitoksen JPEG2000-ortoilmakuva GeoTIFF-muotoon

CABAS. Release Notes 5.4. Uusi kuvien ja dokumenttien käsittely

Pikanäppäin Yhdistelmiä. Luku 6 Pikanäppäimet

Improvisointi - ALOITA ALUSTA JOKAINEN MEISTÄ VOI TUNTEA OLONSA EPÄMUKAVAKSI ALOITTAESSAAN IMPROVISOIMISEN, JOSKUS PIDEMMÄN AIKAA.

FOTONETTI BOOK CREATOR

Tekstinkäsittely 1. Peruskäyttö. Tietotekniikan perusteet Metropolia Ammattikorkeakoulu Vesa Ollikainen

Tonaalista kontrapunktia

Rekursiolause. Laskennan teorian opintopiiri. Sebastian Björkqvist. 23. helmikuuta Tiivistelmä

Mupe Ops. Musiikkitaito 1. Tavoitteet:

ASENNUS- JA KÄYTTÖOHJE

Alkusanat. c d e f g a h c d e f g a h c d e f g a h c d e f g a h c d e f g a h c d e f g a h c d e f g a h c

Suvi Junes/Pauliina Munter Tietohallinto/Opetusteknologiapalvelut 2014

Google-dokumentit. Opetusteknologiakeskus Mediamylly

Johdatus Ohjelmointiin

KUVAN TUOMINEN, MUOKKAAMINEN, KOON MUUTTAMINEN JA TALLENTAMINEN PAINTISSA

Ohje tutkielman tekemiseen

Helppokäyttöisyyttä Windows Vista käyttöjärjestelmän asetuksilla

Sähköposti ja uutisryhmät

Lupa opetuskäyttöön pyydettävä. Näppäimistö. Kohdistimen ohjausnäppäimistö. Funktionäppäimistö. Kirjoitusnäppäimistö

YH2: Office365 II, verkko-opiskelu

MUSIIKIN PIENOISMUODOT Muoto 4 ANALYYSIHARJOITUKSIA

Lujabetonin projektipankki-ohje. Elementtisuunnitelmatiedostojen nimeäminen ja vienti projektipankkiin

Ohjelmoinnin perusteet Y Python

Ohjeet asiakirjan lisäämiseen arkistoon

Avoimen lähdekoodin kehitysmallit

Asiointipalvelun ohje

OHJE RFID - Suoraohjauskoodin muodostamiseen Toshiba SX sarjan tulostimilla

6.1 Tekstialueiden valinta eli maalaaminen (tulee tehdä ennen jokaista muokkausta ym.)

Muuttujien määrittely

T e k s t i n k ä s i t t e l y ä s e l k o k i e l e l l ä WORD

Datatähti 2019 loppu

Salasanojen turvallinen tallentaminen KeePass ohjelmalla

UUDEN NUOTTIKUVAN PURKAMINEN

Tutkielma tasavireisestä, pythagoralaisesta ja diatonisesta sävelasteikosta Teuvo Laurinolli ( )

1. Word 2007 käyttöliittymä

sivu 1 Verkkopäätteen muuttaminen Anvian uuteen tekniikkaan Ohje käy seuraaviin verkkopäätteisiin

Kirjan toteutus BoD easybook -taittotyökalun avulla

Loppuraportti. Virtuaali-Frami, CAVE-ohjelmisto. Harri Mähönen projektiassistentti Seinäjoen ammattikorkeakoulu. Versio

Vesa Ollikainen, päivitys Juha Haataja

Valintanauhan komennot Valintanauhan kussakin välilehdessä on ryhmiä ja kussakin ryhmässä on toisiinsa liittyviä komentoja.

Kieliversiointityökalu Java-ohjelmistoon. Ohje

Tilastolliset ohjelmistot A. Pinja Pikkuhookana

MultiSave - käyttö ja käyttöönotto

Ohjelmoinnin perusteet Y Python

Datatähti 2019 alku. task type time limit memory limit. A Kolikot standard 1.00 s 512 MB. B Leimasin standard 1.00 s 512 MB

Hallintaliittymän käyttöohje

Gimp JA MUUT KUVANKÄSITTELYOHJELMAT

Tämä dokumentti on tehty pohjaan Muistiopohja_logolla.ott

Tehtävä: FIL Tiedostopolut

Taulukkolaskennan perusteet Taulukkolaskentaohjelmat

TTS kannattavuuslaskentaohjelma

SQLite selvitysraportti. Juha Veijonen, Ari Laukkanen, Matti Eronen. Maaliskuu 2010

ADMIN. Käyttöopas 08Q4

MOODLE-OHJE: Liitetiedoston lisääminen ja päivittäminen

Opinnäytetyön mallipohjan ohje

PDF-tiedostojen teon pikaohje

10. ASIAKASHALLINTA CRM; Osoitetarrat, ryhmäsähköposti ja export

Yhtälönratkaisusta. Johanna Rämö, Helsingin yliopisto. 22. syyskuuta 2014

Ohjelmointi 1. Kumppanit

Opiskelun ja työelämän tietotekniikka (DTEK1043)

Visual Case 2. Miika Kasnio (C9767)

Automaattinen sovitus-, sävellys- ja harjoitteluohjelma. Suppea opas Band-In-A-Box, jäljempänä BIAB, ohjelman käyttöön Musiikkitalon Mac-luokassa.

ASTERI VEROLOMAKE 60 61A 61B WINDOWS-OHJELMA KÄYTTÖOHJE

Näkymä ja aktivointi

Ajokorttimoduuli Moduuli 2. - Laitteenkäyttö ja tiedonhallinta. Harjoitus 1

ohjeita kirjautumiseen ja käyttöön

Tekstinkäsittelystä. H4: Tekstinkäsittelyn perusharjoitus. Toimisto ohjelmista

Sangen lyhyt L A T E X-johdatus

Tobii Communicator 4. Alkutoimet

Canva CV NÄIN PÄÄSET ALKUUN CANVA CV:N TEOSSA: Canva on graafisen suunnittelun

kertaa samat järjestykseen lukkarissa.

E-kirjan kirjoittaminen

Tietojen syöttäminen ohjelmalle. Tietojen syöttäminen ohjelmalle Scanner-luokan avulla

Joonas Ruotsalainen GIT PIKAOPAS. Tutkielma 2011

Selkosanakirja sdfghjklöäzxcvbnmqwertyuiopåasdfghjklöäzxcvbnmq. Tietokoneet. wertyuiopåasdfghjklöäzxcvbnmqwertyuiopåasdfghjk 1.4.

Mainoksen taittaminen Wordilla

Jypelin käyttöohjeet» Ruutukentän luominen

KÄSIKIRJOITUKSEN LÄHETTÄMINEN JULKAISULLE

Hops-ohjaajan ohje Opiskelijan hopsit.

Alkuraportti. LAPPEENRANNAN TEKNILLINEN YLIOPISTO TIETOJENKÄSITTELYN LAITOS CT10A Kandidaatintyö ja seminaari

Automaattinen rivitys

MOBISITE-TYÖKALUN SISÄLTÄMÄT TOIMINNOT

Transkriptio:

Katsaus vapaisiin nuotinnusohjelmiin Kirjallinen työ Kevät 2008 Antti Kaihola Esittävän säveltaiteen koulutusohjelma Sibelius-Akatemia

SIBELIUS-AKATEMIA Tiivistelmä Työn nimi Sivumäärä Katsaus vapaisiin nuotinnusohjelmiin 50 Tekijä(t) Lukukausi Antti Kaihola Kevät 2008 Koulutusohjelma Suuntautumisvaihtoehto Esittävän säveltaiteen koulutusohjelma piano Osasto Pianomusiikin osasto Tiivistelmä Kirjallinen työ Kirjallisen työni tavoitteena on kartoittaa saatavilla olevat musiikin nuotintamiseen tarkoitetut vapaat tietokoneohjelmat, valita käyttökelpoisimmat ja tehdä niistä vertaileva arvio. Aiheen taustoittamiseksi tutustutan lukijan vapaiden ohjelmien käsitteeseen, selvennän tietokoneavusteisen nuotintamisen erityispiirteitä nuotinnusohjelman laatimisen näkökulmasta sekä esittelen valtavirrasta poikkeavien nuotinnusohjelmien käyttöä. Olen etsinyt ja ladannut vapaita nuotinnusohjelmia Internet-sivuilta, sillä Internet on niiden pääasiallinen levitysja tiedotuskanava. Olen asentanut ohjelmat ja tutustunut niihin käytännön nuotinnustöiden avulla. Ohjelmointiprojektien taustoja ja suunnitelmia olen selvittänyt ohjelmien dokumentaation, Internet-keskusteluarkistojen sekä kehittäjille lähetetyn sähköpostikyselyn avulla. Lisäksi olen käyttänyt musiikkiteknologiaan, ohjelmointiin ja vapaisiin ohjelmiin liittyviä kirjoja, artikkeleita ja valikoituja Internet-lähteitä. Vapaiden nuotinnusohjelmien tarjonta on monipuolistunut nopeasti, ja niitä laativien projektien tavoitteet ja kohderyhmät ovat kirjavia. Tavalliselle muusikolle tai musiikinopettajalle tämänhetkiset vapaat nuotinnusohjelmat sopivat pääasiallisiksi nuotinnustyökaluiksi vain, jos hänellä on runsaasti kiinnostusta ja aikaa niiden opettelemiseen. Vapaat nuotinnusohjelmat kuitenkin kehittyvät nopeasti, ja jos haluaa osallistua niiden kehittämiseen, tarjolla on useita mielenkiintoisia projekteja. Hakusanat nuottikirjoitus, transponointi, julkaisujärjestelmät, avoin lähdekoodi, vapaat ohjelmistot Muita tietoja 1

Sisältö 1 Johdanto 4 1.1 Nuotinnusohjelmien historiasta 4 1.2 Vapaat ohjelmistot 4 1.3 Vapaat nuotinnusohjelmat 5 1.4 Terminologiaa 6 1.5 Rajaus 7 1.6 Arviointimenetelmät 7 2 Musiikin kuvauskielet 9 2.1 Kuvauskielet siirrettävyyden esteenä ja apuna 9 2.2 Ihmisille ja koneille tarkoitetut kuvauskielet 10 2.3 ABC-kuvauskieli ja abcm2ps-kaiverrusohjelma 11 2.3.1 Bachin C-duuri-invention nuotintaminen ABC-kielellä 11 2.3.2 Schumannin lied ABC-kuvauskielellä 12 2.3.3 ABC:n puutteita 16 2.3.4 Arvio ABC-kuvauskielestä ja abcm2ps-ohjelmasta 16 2.4 LilyPond: kuvauskieli ja nuotinkaiverrusohjelma 17 2.4.1 Johdatus LilyPond-kuvauskieleen esimerkkien avulla 17 2.4.2 LilyPondin edistyneempiä ominaisuuksia: Schumann-esimerkki 19 2.4.3 Aputyökaluja LilyPond-kuvauskielen kirjoittamiseen 22 2.4.4 Arvio LilyPond-ohjelmasta 24 2.5 ABC:n ja LilyPondin käyttötarkoituksesta 25 2.6 MusiXTeX, PMX ja M-Tx 25 2.7 MusicXML ja siirrettävyyden lupaus 26 3 Nuotinkirjoitusohjelmat 27 3.1 MuseScore 27 3.1.1 MuseScoren koekäyttö 29 3.1.2 Muunnokset MuseScoresta eri tiedostomuotoihin 29 3.1.3 MuseScoren puutteita 30 3.1.4 Arvio MuseScore-nuotinnusohjelmasta 30 3.2 NoteEdit 31 3.3 Canorus 31 3.4 NtEd 32 3.4.1 NtEd:in ominaisuuksia 32 2

3.4.2 NtEd:in tavoitteet 33 3.4.3 NtEd:in koekäyttö 34 3.4.4 NtEd:in käyttöliittymän ongelmat 34 3.4.5 Muita havaittuja NtEd:in puutteita 35 3.4.6 NtEd ja yhteisö 35 3.4.7 Arvio NtEd-nuotinnusohjelmasta 36 3.5 Rosegarden 36 3.5.1 Rosegardenin koekäyttö 37 3.5.2 Muunnokset Rosegarden-ohjelmasta muihin muotoihin 38 3.5.3 Arvio Rosegarden-musiikkiohjelman nuotinnusosiosta 39 3.6 GNU Denemo 39 3.6.1 GNU Denemon koekäyttö 40 3.6.2 GNU Denemon puutteita 41 3.6.3 Arvio GNU Denemo-nuotinkirjoitusohjelmasta 41 4 Pohdinta 43 Lähdeluettelo 44 3

1 Johdanto 1.1 Nuotinnusohjelmien historiasta Tietokoneavusteisen nuotintamisen historia alkoi Yhdysvalloissa 1960-luvun alussa. Columbia Universityssä luotiin tietokoneella suoritettavaa nuottien muokkaamista ja tulostamista varten suunniteltu musiikin kuvauskieli DARMS. 1 Nuotit kirjoitettiin kirjaimista, numeroista ja muista symboleista koostuvalla koodilla, jonka tietokone tulkitsi fotonitulostimelle. Illinois n yliopistossa puolestaan rakennettiin v. 1961 ILLIAC I -tietokoneella ja Musicwriter-kirjoituskoneella toimiva nuotinnusjärjestelmä, joka pystyi tulostamaan korkealaatuisia yksiäänisiä partituureja. 2 Graafista nuotinkirjoitusta kehiteltiin 1960-luvulla ainakin Yhdysvalloissa Bell-yhtiön laboratoriossa (1965), 3 Kanadassa National Research Council n laboratoriossa sekä Harvardin yliopistossa. 4 Varhaiset nuotinnusohjelmat syntyivät siis poikkeuksetta tutkimusprojekteissa, ja 1970- luvulla parhaat ohjelmat olivat jo käyttökelpoisia käytännön nuotinnustarpeisiin. Vuonna 1977 tuli markkinoille ensimmäinen kaupallinen nuotinnustietokone Musicomp, 5 jota mm. Warner-yhtiö käytti julkaisutoiminnassaan. 6 Kuluttajien saataville nuotinnusohjelmat tulivat 1980-luvulla, kun henkilökohtaiset tietokoneet yleistyivät. Tämän hetken tunnetuimmista kaupallisista ohjelmista Finale 7 on julkaistu ensi kertaa vuonna 1988 ja Sibelius 8 1993. Ne ovat saatavina Windows- ja Macintosh-tietokoneille 9 600 800 hintaan. 1.2 Vapaat ohjelmistot Vapailla ohjelmistoilla (tai: avoimen lähdekoodin ohjelmilla) tarkoitetaan tietokoneohjelmia, joiden suunnittelu ja ohjelmointi tapahtuvat avoimena prosessina, johon kuka tahansa voi tutustua ja osallistua. Ohjelman lähdekoodi on vapaasti saatavissa ja sitä voi muo- 1 [Brinkman89] DARMS on yhä käytössä HymnQuest-ohjelmassa, jolla voi tehdä melodiaan perustuvia hakuja DARMS-kuvauskielellä koodattuun virsitietokantaan. [Stanley01] 2 [Carter89] Lejaren Hiller käytti ILLIAC I:tä säveltäessään Illiac Suiten, joka on maailman ensimmäisiä tietokoneen avulla sävellettyjä teoksia. [Bohn04] 3 [Williams05] 4 [Roads96] 5 [Reyna08] 6 [Rizov06] 7 <http://www.finalemusic.com/> 8 <http://www.sibelius.com/> 9 Sibeliuksen varhaiset versiot toimivat Acorn Archimedes -tietokoneilla 4

kata haluamallaan tavalla tai käyttää osana muita projekteja. Vapaita ohjelmia saa paitsi kopioida ilmaiseksi myös myydä maksua vastaan. 10 1.3 Vapaat nuotinnusohjelmat Vapaat ohjelmistot ovat vakiinnuttaneet asemansa keskeisissä palvelin- ja toimistotehtävissä. 11 Erikoissovelluksissa, joihin nuotinnusohjelmatkin kuuluvat, vapaita vaihtoehtoja on vähemmän. Syinä lienevät sekä käyttäjäkunnan pienuus että vapaiden musiikkisovellusten kehittäjien keskittyminen audio- ja MIDI-sovelluksiin nuotinnuksen sijasta. 12 Vapaiden palvelin- ja toimisto-ohjelmien soveltuminen yrityskäyttöön houkuttelee niiden kehitystyöhön mukaan suuria yrityksiä resursseineen, mitä etua vapailla nuotinnusohjelmilla ei ole toistaiseksi ollut. Nuotinnusohjelman ohjelmoijalta vaaditaan syvällistä nuottikirjoituksen periaatteiden ymmärtämistä, kykyä hallita vaativa ohjelmarakenne sekä taitoa suunnitella hyvä käyttöliittymä. Hyvä nuotinnusohjelma on laaja ja monimutkainen jo siksi, että sen täytyy osata käsitellä nuotinnuksen erikoistapauksia kuten tiettyjen soittimien ja musiikkityylien notaatiota. 13 Vaatimukset ovat jossain määrin samankaltaisia kuin tekstinkäsittely- tai kuvankäsittelyohjelman laatimisessa. Näihin tarkoituksiin sopivat vapaat ohjemat 14 osoittavat, että avoimen lähdekoodin toimintatavoilla on mahdollista saada aikaan laadukkaita tietokoneohjelmia. Vapaat nuotinnusohjelmat ovat pitkälti samassa tilanteessa kuin taitto-ohjelmat: suuret kaupalliset toimijat ovat vakiinnuttaneet asemansa erittäin monipuolisilla tuotteilla, ja laadukkaan ohjelmiston kehittäminen vaatii paljon resursseja. Vuosi 2008 saattaa kuitenkin olla taitekohta vapaiden nuotinnusohjelmien kehityksessä. Useita lupaavia projekteja on ilmaantunut, ja vanhemmat ohjelmat ovat kehittyneet merkittävästi. 10 [Ingo05] 11 Esim. GNU/Linux (käyttöjärjestelmä), Apache (web-palvelin) ja OpenOffice (toimisto-ohjelmisto) ovat laajalti tunnettuja. 12 [Schweer07] Otaksun tämän johtuvan kevyen musiikin tekijöiden suuremmasta tarpeesta audio- ja MIDIkuin nuotinnussovelluksille. 13 [Schweer07] 14 OpenOffice-toimisto-ohjelmisto sisältää tekstinkäsittelyohjelman, The GIMP on vapaa kuvankäsittelyohjelma ja Inkscape vektorigrafiikkaohjelma 5

1.4 Terminologiaa Käytän tässä kirjoituksessa yksinkertaisuuden vuoksi stemmoista, partituureista ja ylipäätään mistä tahansa nuotinnetusta musiikkikokonaisuudesta nimitystä partituuri. Musiikin kuvauskielellä tarkoitetaan sääntöjä, joita seuraamalla nuotti-informaatiota voidaan koodata merkkimuotoon ja purkaa merkkimuodosta takaisin partituuriksi. 15 Merkit voivat olla selväkielisiä nuottien ja esitysmerkintöjen nimiä tai konemuotoisia ohjauskoodeja. Tämän kirjoituksen käsittelemät kuvauskielet ovat erityisesti notaatiosovellusten kuvauskieliä erotukseksi audio- ja analyysisovellusten kuvauskielistä. 16 Käytän nimitystä nuotinkirjoitusohjelma (engl. Scorewriter, Music Notation Software) tietokoneohjelmista, joiden avulla kirjoitetaan nuotteja. Kirjoittaminen voi tapahtua joko graafisesti, musiikin kuvauskielellä tai näiden yhdistelmänä. Syöttölaitteena voi olla tietokoneen näppäimistö, hiiri, MIDI-koskettimisto ja/tai muu MIDI-laite. Graafisessa nuotinkirjoitusohjelmassa (ks. esim. kuva 14, s. 28) lopullista partituuria esittävää kuvaa muokataan suoraan ruudulla, kun taas symbolisissa nuotinkirjoitusohjelmissa käyttäjä käsittelee partituurin representaatiota, joka on koodattu musiikin kuvauskielellä. Jotkin nuotinkirjoitusohjelmat ovat graafisen ja symbolisen syöttötavan hybridejä: nuotteja syötetään kirjoittamalla musiikin kuvauskieltä, mutta lopputuloksen saa helposti näkyviin kirjoittamisen aikana (ks. kuva 12, s. 24). Nuotinkaiverrusohjelmalla (engl. Music Engraving Software) tarkoitan sovellusta, joka tuottaa musiikin kuvauskielen perusteella visuaalisen partituurin. Esimerkiksi seuraavanlainen kuvitteellista kuvauskieltä oleva partituuri voitaisiin syöttää nuotinkaiverrusohjelmaan: clef:g 4/4 c d e f g2 g2 Kaiverruksen tuloksena syntyisi tämä nuottiesimerkki: 4 15 [Putilin05] 16 [Selfridge97] 6

Nuotinkaiverrusohjelmalle syötetään siis musiikin kuvauskieltä sisältävä tiedosto, ja tuloksena on tuloste tai tulostusvalmis tiedosto (yleensä PostScript tai PDF). Nuotinkirjoitus- ja -kaiverrusohjelmista käytän yhteistä nimitystä nuotinnusohjelma. Suositut kaupalliset nuotinnusohjelmat sisältävät sekä graafisen nuotinkirjoitusohjelman että nuotinkaiverrusohjelman. Sen sijaan useat vapaat nuotinkirjoitusohjelmat tuottavat tiedostoja, jotka voi sitten tulostaa nuotinkaiverrusohjelmalla. Periaate on yleinen vapaissa ohjelmissa: käytetään hyväksi jo olemassa olevia ohjelmia sen sijaan, että yritettäisiin ohjelmoida samat toiminnot itse uudelleen. 1.5 Rajaus Olen löytänyt yli 20 projektia, 17 joiden päämääränä on vapaan nuotinnusohjelman laatiminen. Tässä kirjoituksessa käsiteltävää joukkoa oli tarpeen rajata, ja valitsin kriteereiksi seuraavat vaatimukset: projekti on edennyt viimeisten kolmen vuoden aikana ohjelmakoodi noudattaa jotakin OSI:n hyväksymää lisenssiä ohjelma on asennettavissa ja toimii ainakin yhdessä yleisimmistä nyky- GNU/Linux-distribuutioista ohjelman asentaminen ja kokeilu onnistuvat kohtuullisella vaivalla 1.6 Arviointimenetelmät Arvioitaviksi olen valinnut sellaiset ohjelmien keskeiset toiminnot, joita tyypillisesti tarvitaan opetuskäytössä, stemmojen transponoinnissa sekä teoria- ja sävellysharjoitusten nuotintamisessa. Erityisesti olen keskittynyt länsimaiseen musiikkinotaatioon (engl. CMN, Common Music Notation) ja rajannut pois ei-traditionaalisen notaation. En myöskään arvioi ohjelmien kykyä käyttää MIDI-laitteita nuottien syöttämiseen tai soittaa syötettyä partituuria äänisynteesin avulla. Asenin ohjelmat Ubuntu 8.04 -käyttöjärjestelmään, 18 koska se on eniten käytettyjä vapaita työpöytäympäristöjä. Tutustuin ohjelmiin nuotintamalla ensin kaksi ensimmäistä tah- 17 Canorus, NtEd, NoteEdit, Muse, MuseScore, LilyPond, abc2ps, abcm2ps, GNU Denemo, Philip s Music Writer, Rosegarden, Audimus, gcomposer, LilyPondTool, abcmtex, jaabc2ps, jcabc2ps, iabc, Gscore, BarFly, Brahms, Nutation, MuX2d, JComposer 18 <http://www.ubuntu-fi.org/> 7

tia J. S. Bachin Inventiosta no. 1 C-duuri, BWV 772. Kysymyksessä on pianostemma, jossa kumpikin viivasto on yksiääninen eikä sisällä etumerkkejä, monimutkaisia rytmejä tai esitysmerkintöjä. Tämän yksinkertaisen tehtävän avulla pyrin saamaan nopeasti tuntuman nuotinnusohjelmaan ja karsimaan heikot ohjelmat pois vertailusta. Ohjelmien kykyjen rajoja kokeilin nuotintamalla kullakin valitulla ohjelmalla 6 tahtia Robert Schumannin laulusta Die Blume der Ergebung, op. 83 no. 2. Valitsemassani jaksossa esiintyy pienessä tilassa useita nuotinnusohjelmalle haastavia piirteitä: polyfonia artikulaatiomerkki viivastolta toiselle jatkuva palkitettu sävelkuvio viivastojen toiselle ulottuva kaari tahtiviivan yli sidottu sointu trioli ja duoli päällekkäin dynaamisia merkkejä (kirjaimin ja kiiloin) laulun sanoja, joista löytyy myös ASCII-merkistöön kuulumaton ü-kirjain kohotahti Parhaiten tehtävästä selviytyneillä ohjelmilla muokkasin partituurin vielä mahdollisimman samanlaiseen muotoon ja kokoon kuin Edition Petersin originaali. 19 Arvioin niiden eroja sitten silmämääräisesti sekä pyysin kollegojen kommentteja paljastamatta heille mistä mikäkin paperituloste on peräisin. Partituurien siirrettävyyttä kokeilin tallentamalla ja lataamalla partituureja MusicXMLmuodossa kaikkien muotoa tukevien ohjelmien välillä. Näin syntyi käsitys yhtäältä siitä, millä tarkkuudella MusicXML pystyy partituurit esittämään ja toisaalta siitä, kuinka tarkasti testatut ohjelmat tätä muotoa pystyvät kirjoittamaan ja lukemaan. Valittujen ohjelmien taustatietoja kartoitin niiden dokumentaatiosta ja Internet-lähteistä sekä lähettämällä kehittäjille sähköpostikyselyn. Kyselyssä pyydettiin tarkistamaan ja täydentämään keräämiäni tietoja, jotka koskevat projektin historiaa, suunnitelmia, käyttötarkoitusta ja kohderyhmää, kehitystyöhön osallistujia, vahvuuksia ja heikkouksia, käyttäjäkuntaa sekä joitakin teknisiä yksityiskohtia. Kyselyyn vastasi ainoastaan NtEdohjelmaa kehittävä Jörg Anders. 19 Schumann: Lieder III, s. 8. EP 2385a. ISMN M-014-01081-2. 8

Keskustelin myös tamperelaisen Heikki Juneksen kanssa, joka on osallistunut sekä Rosegardenin että LilyPondin kehitystyöhön. Häneltä sain tietoja näistä projekteista kehittäjän näkökulmasta. Ohjelmia kehittävien projektien ja niiden käyttäjä- ja kehittäjäyhteisön aktiivisuutta arvioin laskemalla projektien postituslistoille huhtikuussa 2008 kirjoitettujen viestien lukumäärän. 2 Musiikin kuvauskielet Vapaiden nuotinnusohjelmien joukossa erilliset nuotinkaiverrusohjelmat ovat keskeisessä asemassa. Käytetty musiikin kuvauskieli on olennainen osa nuotinkaiverrusohjelmaa, joten on syytä tarkastella tiedostomuotoja ja niissä käytettyjä musiikin kuvauskieliä tarkemmin. Kuvauskielellä tarkoitetaan määrämuotoista rakenteisen tiedon esitystapaa. Nuottikirjoitus on olennaisilta osiltaan rakenteista tietoa, koska tietyt säännöt määrittelevät, mitkä ovat käytettävät symbolit ja niiden väliset suhteet. Määrämuotoisuus taas liittyy tiedon koneelliseen tulkittavuuteen. Koska tietokoneet käsittelevät tietoa luku- tai merkkijonoina, musiikkikin esitetään koneen muistissa sarjana merkkejä. 2.1 Kuvauskielet siirrettävyyden esteenä ja apuna Kaupalliset nuotinkirjoitusohjelmat tallentavat partituurin yleensä valmistajan itse määrittelemällä musiikin kuvauskielellä. 20 Periaatteessa se merkitsee, että yhdellä ohjelmalla nuotinnettua ja tallennettua partituuria ei voi avata toisen valmistajan ohjelmassa. Käytännössä valmistajat ovat käyttäjien tarpeesta lisänneet ohjelmiinsa mahdollisuuden viedä ja/tai tuoda partituureja muiden ohjelmien käyttämässä muodossa. Kilpailevan valmistajan tiedostomuodon tukeminen on kuitenkin vaikeaa, jos se ei perustu mihinkään standardiin. Varsinkin, jos tiedostomuodon suunnitellut yritys ei ole halukas antamaan siihen liittyvää dokumentaatiota, on vaikeaa taata, että kaikki tiedostot muuntuvat 20 Yleisimpiä valmistajakohtaisia tiedostomuotoja ovat Finalen MUS- ja ETF-muodot, Sibeliuksen SIB sekä Encoren ENC. 9

virheettömästi. Onkin tyypillistä, että partituurien siirto ohjelmien välillä toimii epäluotettavasti, vain osittain tai ei ollenkaan. Siirrettävyysongelmien ratkaisemiseksi on pyritty luomaan yhteisesti sovittuja tiedostomuotoja. 21 Nuotti-informaation siirtämiseen kehitetyistä muodoista käytetyin on MusicXML, joka on syrjäyttämässä aiemmin yleisimmin käytetyn NIFF-muodon. Vapaiden ohjelmien ohjelmakoodin avoimuus ja niiden käyttämien tallennusmuotojen avoimuus liittyvät läheisesti toisiinsa. Vapaat ohjelmat käyttävät tiedostomuotoja, joita saa käyttää vapaasti ilman lisenssimaksuja missä tahansa tietokoneohjelmassa. Usein tiedostomuotojen dokumentointi on myös kattavaa ja sen saa vapaasti Internetistä. 2.2 Ihmisille ja koneille tarkoitetut kuvauskielet Musiikin kuvauskielet voi jakaa karkeasti kahteen luokkaan: 1) ihmisen ja 2) koneen kirjoittamiksi ja lukemiksi tarkoitetut kuvauskielet. Koneen kirjoittamia ja lukemia kuvauskieliä käytetään tyypillisesti graafisten nuotinkirjoitusohjelmien tallennusmuodossa tai partituurien siirtomuotona eri ohjelmien välillä. Jos tällaisessa muodossa tallennetun sävellyksen avaa tekstinmuokkaimessa, se näyttää joko käsittämättömältä merkkisekamelskalta tai työläästi tulkittavalta symbolikieleltä. Kaikkien tässä kirjoituksessa esiteltyjen nuotinkirjoitusohjelmien omat tiedostomuodot käyttävät koneelle tarkoitettuja musiikin kuvauskieliä. Jäljempänä esitellyt ABC- ja LilyPond-kuvauskielet sen sijaan on tarkoitettu ihmisen kirjoitettaviksi. Niitä käytetään partituurin syöttämiseen tekstimuodossa nuotinkaiverrusohjelmille sen sijaan että se piirrettäisiin ruudulla näkyvälle viivastolle. Kuvauskielisessä työtavassa nuotintaja määrittelee tekstinä kaiken sen informaation, jonka perusteella nuotinkaiverrusohjelma piirtää partituurin. Kaiverrusvaiheessa ohjelma voi tehdä älykkäitä nuottien asetteluun liittyviä ratkaisuja, kun yksittäisten nuottien ja symbolien täsmällistä kohdistusta ei ole etukäteen määrätty. Koska vapailla nuotinnusohjelmilla saa tällä hetkellä aikaan monimutkaisia partituureja parhaiten ABC- tai LilyPond-kuvauskielellä, esittelen niitä kahden esimerkin avulla poi- 21 Toimisto-ohjelmien siirtokelpoisia tiedostomuotoja ovat mm. RTF (teksti), CSV (laskentataulukko) ja PNG (kuva). 10

mimalla niistä nuotinkaiverruksen yksityiskohtia tarkasteluun. Tutustuminen nuotinkaiverrusohjelman toimintaan näin mikrotasolla auttaa ymmärtämään nuotinnusohjelmien toimintaperiaatetta ja hahmottamaan tehtävän monimutkaisuutta. 2.3 ABC-kuvauskieli ja abcm2ps-kaiverrusohjelma ABC on alunperin Chris Walshaw n vuonna 1991 laatima musiikin kuvauskieli yksiäänisten sävelmien kirjoittamista varten. 22 Anglosaksisissa maissa se on muodostunut de facto-standardiksi irlantilaisten ja walesilaisten kansansävelmien kirjoittamiseen ja jakamiseen Internetissä. 23 ABC on tiivis, yksinkertainen ja helposti opittava tapa kirjoittaa nuotteja teksti- ja numerosymbolein. Suuren suosion seurauksena monet käyttäjät alkoivat kaivata siltä monipuolisempia ominaisuuksia kuten polyfoniaa ja usean viivaston systeemejä. Monet ABCtiedostoja nuoteiksi kääntävät nuotinkaiverrusohjelmat lisäävätkin standardiin omia laajennuksiaan. Myös itse standardista on kehitetty uutta 2.0-versiota, mutta viimeisin luonnos on vuodelta 2003. Laajimmin käytetty ja parhaiten länsimaisen taidemusiikin nuotintamiseen sopiva ABCtiedostoja kääntävä nuotinkaiverrusohjelma on Jef Moinen tekemä abcm2ps, 24 abcm2ps tukee polyfoniaa, usean viivaston systeemejä, laulun sanoja viivaston alla, kaarien suunnan säätämistä, mikrointervalleja sekä useita muita ABC:n laajennuksia. 2.3.1 Bachin C-duuri-invention nuotintaminen ABC-kielellä Kuvassa 1 on J. S. Bachin C-duuri-invention kaksi ensimmäistä tahtia kirjoitettuna ABCmuodossa ja kuvassa 2 abcm2ps:n kaivertama lopputulos. Riveillä 1 5 määritellään partituurin järjestysnumero, teoksen nimi ja säveltäjä, tahtilaji ja sävellaji. Riveillä 6 7 lukitaan rivin pituudeksi kaksi tahtia ja luodaan omat viivastot äänille no. 1 ja 2. Riveillä 8 10 on ylemmän ja 11 13 alemman viivaston nuotit. Pieni z-kirjain tarkoittaa taukoa ja kirjaimet A G nuottien nimiä. 25 Yksiviivainen oktaavi 22 [Walshaw07] Walshaw liftaili Euroopassa huilu mukanaan ja kirjoitti tuntemiensa sävelmien alkutahdit muistinsa tueksi paperille ABC-muodossa, koska ei tuolloin osannut nuotteja. 23 [Gonzato07] 24 <http://moinejf.free.fr/> abcm2ps pohjautuu Michael Methfesselin abc2ps:ään <http://www.ihp-ffo. de/~msm/>. 25 B tulkitaan angloamerikkalaisen nimeämiskäytännön mukaan 11

1 X: 1 2 T: Inventio 3 C: J. S. Bach 4 M: C 5 K: C 6 %%barsperstaff 2 7 %%staves {1 2} 8 V:1 9 z/c/d/e/ F/D/E/C/ GcBc 10 d/g/a/b/ c/a/b/g/ dgfg 11 V:2 12 z4 z/c,/d,/e,/ F,/D,/E,/C,/ 13 G,G,, z2 z/g,/a,/b,/ C/A,/B,/G,/ Kuva 1: C-duuri-inventio, t. 1 2 laajennetussa ABC-muodossa Inventio J. S. Bach Kuva 2: C-duuri-inventio, t. 1 2 abcm2ps:n kaivertamana merkitään isoilla kirjaimilla ja kaksiviivainen pienillä. Pilkku laskee ja heittomerkki nostaa säveltä oktaavilla, ja tahtiviiva merkitään pystyviivalla ( ). Ellei muutoin merkitä, nuotin aika-arvo on kahdeksasosa. 26 Kuudestoistaosat merkitään kauttaviivalla nuotin nimen perässä ja pidemmät nuotit luvulla, joka osoittaa keston kahdeksasosina. Palkeilla yhdistettävät nuotit kirjoitetaan yhteen, ja välilyönneillä erotetuille nuoteille tulee palkin sijasta lippu. 2.3.2 Schumannin lied ABC-kuvauskielellä Schumannin laulu Die Blume der Ergebung on kuvissa 3 5 kirjoitettu ABC-muodossa ja kaiverrettu abcm2ps:llä. Käyn seuraavassa läpi joitakin ABC:n merkintätapoja, jotka eivät esiintyneet Bach-esimerkissä. Kuvan 3 rivillä 7 määritellään moniäänisen satsin äänet ja niiden sijoittuminen kolmelle eri viivastolle sekä pianoviivastojen yhdistäminen aaltosulkeella. Pianon yläviivastolle olen käytännön syistä lisännyt varsinaisten nuottiäänien lisäksi crescendot, diminuendot 26 Tahtilajeissa, joissa tahdin pituus on vähemmän kuin 3/4, oletusaika-arvo on kuudestoistaosa. Sen voi myös määrätä itse L:-käskyllä. 12

1 X: 1 2 T: Die Blume der Ergebung 3 C: Robert Schumann 4 M: 3/4 5 K: A 6 %%barsperstaff 3 7 %%staves sopr {(cres yla1 yla2 dyna) (ala1 ala2)} 8 %%deco fp 6 pf 18 5 11 fp 9 V: sopr dyn=up 10 V: cres dyn=up 11 V: yla1 merge clef=treble 12 V: yla2 merge clef=treble 13 V: dyna dyn=down merge 14 V: ala1 clef=bass 15 V: ala2 merge clef=bass 16 % 17 [V: sopr] 18 z2 19!accent!f2 B B c d 20 w: hin ü- ber mich im 21 d2 c2 z!p!=c 22 w: Win- de, so 23 B2 > B2 e ^c 24 w: werd ich dir mich 25 B2 F z z2 26 w: nei- gen, 27!<(!B2 B!<)!B (3(!>(!fe)!>)!c 28 w: spre- chend: ich bin_ dein 29 c2 B2 30 w: ei- gen. Kuva 3: Schumann: Die Blume der Ergebung, katkelma, laajennetussa ABC-muodossa, rivit 1 30 ja muut dynaamiset merkit kahteen erilliseen ääneen. Yhdellä prosenttimerkillä alkavat kommenttirivit ovat tässä erottamassa tahteja ja muistuttamassa alkavan tahdin sanoista. Riveillä 8 15 määritellään abcm2ps:stä puuttuva dynaaminen merkintä fp 27 sekä luetellään moniäänisen partituurin äänten asetukset: kummalla puolen viivastoa dynaamiset merkit ovat, mitä avainta käytetään ja mitkä kaikki äänet liitetään samalle viivastolle. Olen kirjoittanut koko laulustemman sanoineen riveillä 17 30. Jokaisella rivillä on yksi tahti ja rivin alla laulun sanat w:-rivillä. Nuotteihin liitetään symboleja kirjoittamalla ne nuotin eteen: Cis on c^, palautettu c =c, crescendon alku ja loppu!<(! ja!>)! sekä trioli (3. Rivillä 23 on pisteellisen rytmin lyhennysmerkintä: > -merkki pidentää edeltävää ja lyhentää seuraavaa nuottia puolella. Kuvassa 4 riviltä 32 alkaa pianostemman määrittely siten, että kaikki äänet on kirjoitet- 27 Erilaisia esitysmerkintöjä on siis periaatteessa mahdollista luoda itse, jos tuntee abcm2ps:n toimintaperiaatteen. 13

31 % 32 [V: cres] x2 33 [V: yla1] ([fdb]2-34 [V: yla2] x2 35 [V: dyna]!fp!x2 36 [V: ala1] x2 37 [V: ala2] [FDB,G,]2-38 % hin über mich im 39 [V: cres] x6 40 [V: yla1] [fdb]/d/b/f/) (D/F/B/d/) (D/=E/B/d/) 41 [V: yla2] x6 42 [V: dyna] x6 43 [V: ala1] x2 B,4 44 [V: ala2] [FDB,G,]2 (A,2 G,2) 45 % Winde, so 46 [V: cres] x6 47 [V: yla1] (,D/E/G/d/) (,C/E/A/c/) x2 48 [V: yla2] x4 ( =c/a/e/[i:staff 3]=C/) 49 [V: dyna] x4!p!x2 50 [V: ala1] (B,2 A,2) x2 51 [V: ala2] A,4 A,2 52 % werd ich dir mich 53 [V: cres] x2 x/!<(!x/ x!<)!!>(!x >!>)!x 54 [V: yla1] B4 e2 55 [V: yla2] ([I:staff 2]B/A/E/[I:staff 3]B,/ ) 56 [I:staff 2]z/(A/^D/[I:staff 3]B,/ ) 57 (,^C/[I:staff 2]E/A/^c/ ) 58 [V: dyna] x6 59 [V: ala1] x6 60 [V: ala2] B,,4 (A,,2 61 % neigen, 62 [V: cres]!<(!x x x >!<)!x!>(!x >!>)!x 63 [V: yla1] B4 (^d>c) 64 [V: yla2] (B/A/E/[I:staff 3]B,/ ) 65 ([I:staff 2]B/A/^D/[I:staff 3]B,/ ) 66 (,C/[I:staff 2]E/A/c/ ) 67 [V: dyna] x6 68 [V: ala1] x6 69 [V: ala2] B,,4) (A,,2 70 % sprechend: ich bin dein 71 [V: cres]!<(!x x x >!<)!x!>(!x >!>)!x 72 [V: yla1] (B4 (3fec 73 [V: yla2] (B/A/E/[I:staff 3]B,/ ) 74 ([I:staff 2]B/A/^D/[I:staff 3]B,/ ) 75 [I:staff 2]^DE 76 [V: dyna] x6 77 [V: ala1] x4 ^B,C 78 [V: ala2] B,,4) A,,2 79 % eigen 80 [V: yla1] c2 B2) 81 [V: yla2] c/f/^d/[i:staff 3]C/ [I:staff 2] B/=F/=D/[I:staff 3]=B,/ 82 [V: dyna]!fp!x4 83 [V: ala1] x4 84 [V: ala2] A,4 Kuva 4: Schumann: Die Blume der Ergebung, katkelma, laajennetussa ABC-muodossa, rivit 32 84 14

3 4 Die Blume der Ergebung Robert Schumann p hin ü ber mich im Win de, so werd ich dir mich 3 4 3 4 fp p 3 nei gen, spre chend: ich bin dein ei gen. 3 fp Kuva 5: Schumann: Die Blume der Ergebung, katkelma, abcm2ps:n kaivertamana tu allekkain tahti kerrallaan. Dynamiikkaäänissä on vain x -merkillä kirjoitettuja näkymättömiä taukoja, joihin on liitetty dynaamisia merkkejä. Rivillä 33 näkyy, kuinka sointu kirjoitetaan hakasulkeiden sisään ja sen kesto vasta hakasulkujen jälkeen. Miinusmerkki tarkoittaa sidekaarta. Vasen sulkumerkki aloittaa kaaren, joka päättyy seuraavassa tahdissa rivillä 40. Kaaren voi pakottaa ylös- tai alaspäin kirjoittamalla avaavan sulun perään heittomerkin tai pilkun (ks. rivi 47). Rivillä 48 on jouduttu [I:staff 3]-ohjauskoodilla siirtymään alemmalle viivastolle ja rivilla 55 takaisin, kun palautettu keski-c on piirretty. Viereisellä viivastolla käyminen toimii abcm2ps:n kaivertamana muuten hyvin, mutta kaaret, jotka päättyvät eri viivastolle kuin mistä alkavat, eivät tulostu oikein. 15

2.3.3 ABC:n puutteita Nykyään tekstitiedostoissa käytetään yleisesti Unicode-merkistöä ja esimerkiksi sen UTF-8 -enkoodausta, jotta eri kielten aksentilliset kirjaimet ja kirjoitusmerkit toimisivat mahdollisimman hyvin. abcm2ps kuitenkin ymmärtää edelleen vain ISO-8859-1 - merkistöä, 28 joten ABC-tiedostot pitää muistaa kirjoittaa käyttäen tätä merkistöä, jos niissä käytetään esim. suomalaisia ä- ja ö-kirjaimia tai saksalaista ü-kirjainta kuten Schumann-esimerkissä yllä. ABC:ssä ei ole juurikaan mahdollista säätää symbolien sijaintia. Jos siis kaaret törmäävät muihin symboleihin tai crescendo/diminuendokiilat ovat väärällä korkeudella kuten Schumann-esimerkissäni, mitään ei ole tehtävissä. 2.3.4 Arvio ABC-kuvauskielestä ja abcm2ps-ohjelmasta ABC-kuvauskieli on ytimekästä ja suhteellisen helppoa oppia. Esitysmerkinnät, nuotteihin liitettävät merkit sekä eritoten erikoistoiminnot, kuten toiselle viivastolle siirtyminen, tekevät tekstistä hieman sekavaa. Mahdollisuus pitää stemmat lähekkäin kirjoittamalla esim. tahti kerrallaan auttaa pitämään kokonaisuuden hallinnassa. Schumann-esimerkin vaativista yksityiskohdista abcm2ps selvisi erittäin hyvin lukuunottamatta kaarten ja dynaamisten merkkien sijoittelua ja äänten välisiä priimejä. Ohjelma ei ymmärrä toiselle viivastolle päättyvien kaarten oikeaa kaiverrustapaa, ja yksi kaari myös törmäsi triolin numerosymboliin. Kun saman viivaston kahdessa äänessä on sama sävel, abcm2ps nuotintaa ne päällekkäin kun niiden pitäisi olla vierekkäin. 29 Koska tällaisten törmäysten kiertämiseen ei ole ohjauskoodeja, ABC on useisiin tarpeisiin käyttökelvoton. abcm2ps on erittäin nopea. Siinä missä LilyPond kaiversi 500-tahtista kolmen viivaston partituuria lähes kaksi minuuttia, abcm2ps selvisi työstä alle 0,5 sekunnissa! 30 ABC on laajentunut alkuperäisestä suppeasta käyttötarkoituksestaan yleiskäyttöiseksi musiikin kuvauskieleksi. Kaksi eri ohjelmien tulosteita arvioineista kollegoistani valitsi jopa ABC:llä nuotinnetun Schumann-esimerkin miellyttävämmäksi lukea kuin Petersin 28 ISO-8859-1 -merkistö tunnetaan myös nimellä Latin-1 29 Priimien päällekkäisyys on erikoinen ongelma, sillä sekunnit kyllä tulostuvat siten, että nuotit on siirretty hieman erilleen vaakasuunnassa. 30 Kopioin Schumann-esimerkin täydelliset tahdit 100 kertaa peräkkäin ja kaiversin partituurin kummallakin ohjelmalla PostScript-tiedostoksi. 16

originaali ja LilyPondin kaivertama versio, vaikka ABC-tulosteessa oli ilmeisiä nuotinnusteknisiä virheitä. 2.4 LilyPond: kuvauskieli ja nuotinkaiverrusohjelma LilyPond on hollantilaisten Han-Wen Nienhuysin ja Jan Nieuwenhuizenin kehittämä nuotinkaiverrusohjelma sekä samanniminen musiikin kuvauskieli. Tekijöiden tavoitteena on päästä eroon tietokoneen avulla kirjoitettujen partituurien mekaanisesta vaikutelmasta ja virheistä. LilyPond-ohjelman on tarkoitus noudattaa samantyyppisiä sääntöjä ja kirjasintyyppejä joita nuotinkirjoituksen käsityöläiset käyttivät 1970-luvulle asti. LilyPondin 2.10.33-versio on julkaistu 19.7.2007 ja se löytyy ainakin Ubuntu 8.04:n, Open- SUSE 10.3:n, Fedora 8:n ohjelmavalikoimasta. Versiot Windowsille (ME, NT, 2000, XP ja Vista) sekä Mac OS X:n versioille 10.3, 10.4 ja 10.5 ovat myös saatavilla. Ohjelman 2.11- versio on kehitteillä. LilyPond-kuvauskieltä käyttävät tiedostot on tarkoitettu kirjoitettaviksi käsin. LilyPond ei ole niin tiivistä ja yksinkertaista kuin ABC, joten oppimiskynnys on korkeampi. Yksinkertaisessakin nuotinnuksessa käytetään monimutkaisempia ohjauskoodeja kuin ABC:ssä, mutta toisaalta myös LilyPondin mahdollisuudet ovat paljon suuremmat. Koska LilyPond on rakennettu L A TEX-sivuntaittojärjestelmän päälle, se seuraa L A TEX:in konventioita ja pystyy käyttämään L A TEX-järjestelmän tehokkaita mahdollisuuksia tekstin ja grafiikan tuottamiseen. Koska valmis lopputulos ei ole koko ajan näkyvissä kuten nuotinnusohjelmissa, kuuluvat korjaaminen ja nuottikirjoituksen säätäminen työn kulkuun. Käytännössä kannattaa kaivertaa partituuri LilyPondilla ja tarkistaa se aina sopivan mittaisen jakson kirjoittamisen jälkeen, sillä varsinkin oktaavi- ja aika-arvovirheet kertautuvat virheen jälkeen tulevassa musiikissa. 2.4.1 Johdatus LilyPond-kuvauskieleen esimerkkien avulla Kuvassa 6 on J. S. Bachin C-duuri-invention kaksi ensimmäistä tahtia kirjoitettuina LilyPond-kuvauskielellä ja kuvassa 7 lopputulos LilyPond-ohjelman kaivertamana. Riveillä 1 7 asetetaan LilyPond-ohjelman versio, jolle tämä nuottiesimerkki on tarkoitet- 17

1 \version "2.10.0" 2 \include "suomi.ly" 3 #(set-global-staff-size 14) 4 \header { 5 title = "Inventio" 6 composer = "J. S. Bach" 7 } 8 oikea = \relative c { 9 r16 c d e f d e c g 8 c h c 10 d16 g, a h c a h g d 8 g f g 11 } 12 vasen = \relative c { 13 r2 r16 c d e f d e c 14 g 8 g, r4 r16 g a h c a h g 15 } 16 piano = \new PianoStaff { 17 \time 4/4 18 << \context Staff = "o.k." { 19 \clef treble 20 \key c \major 21 \oikea 22 } 23 \context Staff = "v.k." { 24 \clef bass 25 \key c \major 26 \vasen 27 } 28 >> 29 } 30 \score { << \piano >> } Kuva 6: C-duuri-inventio, t. 1 2 LilyPond-muodossa Inventio J. S. Bach Kuva 7: C-duuri-inventio, t. 1 2 LilyPondin kaivertamana 18

tu, otetaan käyttöön suomalaiset nuottinimet, pienennetään viivastoa oletusasetuksesta ja asetetaan teoksen nimi ja säveltäjä. Riveillä 8 11 luetellaan oikean ja 12 15 vasemman käden nuotit, ja talletetaan ne muistiin nimillä oikea ja vasen. Riveillä 16 29 luodaan kaksi viivastoa, asetetaan tahtilaji, avaimet ja sävellaji ja syötetään nuotit muistista viivastoille. Viimeisellä rivillä määritellään, että partituurissa on yksi viivastopari, joka aiemmin tallennettiin nimellä piano. LilyPondissa sävelkorkeuden oktaavi määräytyy edeltävän nuotin mukaan siten, että kahden peräkkäisen nuotin intervalli on enintään kvartti. Jos halutaan hypätä kvintti tai enemmän ylöspäin, pitää nuotin nimen perään lisätä heittomerkki. Vastaavasti alaspäin hypätään lisäämällä pilkku. Sävelen kesto on sama kuin edellisen nuotin kesto, ellei nuottinimen perässä olevalla luvulla toisin määrätä. Kestot ilmaistaan osina kokonuotista, eli esim. 2=puolinuotti ja 4=neljäsosa. LilyPond piirtää tahtiviivat automaattisesti oikeisiin paikkoihin tahtilajin perusteella, mutta tahtiviivat on silti havainnollisuuden vuoksi hyvä kirjoittaa ulos pystyviivasymbolilla ( ). Jos kuvauskielellä kirjoitettu pystyviiva ei osu tahtilajin mukaisen tahtiviivan kohdalle, LilyPond antaa partituuria kaiverrettaessa varoituksen. Pystyviivat toimivat siis eräänlaisina tarkistuspisteinä. 2.4.2 LilyPondin edistyneempiä ominaisuuksia: Schumann-esimerkki Kuvissa 8 11 on katkelma Schumannin laulusta Die Blume der Ergebung kirjoitettuna LilyPond-kuvauskielellä sekä kaiverrettuna LilyPondilla. Kaikki alkuperäisessä Petersin painoksessa olleet merkinnät onnistuivat LilyPondilla, mutta kuvauskielen kirjoittaminen oli vaativaa. Poimin seuraavassa joitakin kuvauskielen ohjausmerkkejä, jotka eivät tulleet esiin Bach-esimerkissä. Kuvan 8 rivillä 10 määritellään, ettei laulustemmassa käytetä palkkeja ja että dynaamiset merkit ja triolien hakaset halutaan viivaston yläpuolelle. Lopuksi partial-käskyllä tehdään neljäsosakohotahti (r4 on neljäsosatauko). Riveillä 12 15 fis-nuotin -> on aksenttimerkki. C-sävelen \p liittää nuotin päälle p- merkinnän. Esimerkki pisteellisestä aika-arvosta on h4.. Crescendon alku on merkitty h-neljäsosanuotille ( h4\< ) ja päättyminen toiselle kahdeksasosa-h:lle ( h\! ). Trioli 19