Nykymaailmassa musiikin tekijällä on käytössään kaikki mahdolliset soundit, rytmikoneet, AI-sävellysohjelmat ja Fiverrin kautta loputtomasti ammattilaisia. Äänitystekniikka on edullista, äänenlaatu loistava jo budjettiluokan laitteilla … mutta entä jos yksi asia puuttuu: inspiraatio. :/ Tämä on sama juttu kuin puolella teineistä: maailma on teknologisesti kehittyneempi kuin koskaan ja ”kaikki on mahdollista”, mutta mikään ei kiinnosta.
Tämä asetelma ei rajoitu pelkkään musaan. Sama ilmiö näkyy teinien elämässä: maailma on teknologisesti kehittyneempi kuin koskaan, vaihtoehtoja on enemmän kuin koskaan, mutta mikään ei oikeastaan sytytä. Loputon mahdollisuuksien buffet tekee helposti kylläiseksi jo ennen kuin aloittaa.
Olen itse tiedostanut tämän vaaran pitkään: ”koska voin tehdä kaikkea”, riski on, että en lopulta tee mitään. Siksi olen tietoisesti suojellut itseäni yltäkylläisyydeltä. Olen tiedostanut vaaran siinä, että ”voin tehdä kaikkea” ja siksi olen suojellut itseäni tältä yltäkylläisyydeltä. Viimeisenä esimerkkinä tällainen puolisatunnainen juttu: uusia syntikkasoundeja tuleviin biiseihin etsiessäni kaivoin esille legendaarisen Korg M1 -kosketinsoittimen räkkiversion ja opettelin muokkaamaan sen soundeja kuppaisen paskan käyttöliittymän yrittäessä lannistaa tekemiseni. Mutta tässä onkin homman ydin: kun soundin tekemiseksi täytyy nähdä vaivaa, sitä alkaa arvostaa enemmän. Soundi tuntuu itse tehdyltä ja siihen tulee kiinteämpi tunneside kuin 50.000 valmiiksi editoituun soundiin, jotka odottavat studioni m.2-levyillä lataamista DAW-ohjelmaan parin sekunnin odotusajalla.
Pikaohje: Korg M1 / M1R reverb pois päältä soundista 1) Paina EDIT PROG 2) Paina PAGE+ niin monta kertaa että näet efektin ON / OFF -välilehden 3) Paina PAGE+ vielä kerran niin pääset 2. efektin ON / OFF -välilehdelle.

Korg M1 SysEx
Lähdin tuohon Korg M1 -soundien etsimiseen itselleni tyypillisellä tavalla: katson pohjalle asti että miten syvälle hommaan voi vajota. Internet-vastaus tähän kohtaan itselleni on: kyllä. Aloin tutkia heksaeditorilla laitteen MIDI dump -tiedostoa, koska aion tehdä omaan käyttööni maailman parhaan Korg M1 -soundieditorin. Homma lähti jo liikkeelle: selvitän nyt Korgin sysex-formaattia ja aloin koodata editoria C#:llä.
Sysexin alussa on tällaiset heksakoodit: F0 42 30 19 50 00 23 1C 00 00 00 01 00.
F0 – SysEx-viestin aloitus. (MIDI-spesifikaatio)
42 – Valmistajan ID: Korg.
30 – Laitetunnus / kanava (Korgin kaava: 0x30 + MIDI-kanava/Device ID 0–15). Tässä 0x30 → ID 0 (usein käytännössä “kanava 1”).
19 – Malli-ID: M1/M1R. 0x19 = M1.
50 – Toimintokoodi: All Data Dump (Korg käyttää 0x50-koodia “kaikki data” -dumppiin; sama käytäntö myös muissa Korkeissa.
00 23 1C – Datapituus kolmella tavulla: 0x00231C = 8988.
Koodausta C#:lla
Korg on tehty aikoina, jolloin muistin määrä oli rajallista. Siksi osa vain 7 bittiä käyttävästä datasta on pakattu 8 bitin tavuihin. Näin säästyy hieman tilaa, mutta sen takia reilut 40 vuotta myöhemmin minun pitää dekoodata nuo pakatut tavut. Kas näin:
/**
--- 7 bitin purkaminen ---
Purkaa 7-in-8 -paketin; huomioi viestityypin headerin pituus ennen pakattua dataa
Idea: Koodi purkaa tiivistettyjä tavuja, joissa 8 tavua on pakattu 7 tavun tilaan käyttämällä MSB (Most Significant Bit) -tekniikkaa.
Vaihe vaiheelta:
Alustavat laskut: Määrittää kuinka monta tavua käsitellään (jättää viimeisen tavun pois, ilmeisesti F7-merkin)
8-tavun ryhmien käsittely: Käy läpi dataa 8 tavun lohkoissa:
Ensimmäinen tavu (msb) sisältää kaikkien seuraavien 7 tavun ylimmät bitit
Seuraavat 7 tavua sisältävät varsinaisen 7-bittisen datan
Bittien yhdistäminen: Jokaiselle 7:stä datatavusta:
Ottaa alkuperäisen tavun 7 alinta bittiä
Poimii MSB-tavusta oikean bitin (j:nnen bitin)
Siirtää sen ylin bitiksi (paikka 7)
Yhdistää ne OR-operaatiolla täydeksi 8-bittiseksi tavuksi
Esimerkki:
Jos MSB = 10110010 ja datatavu = 1100101, niin:
MSB:n 0. bitti (oikealta) = 0
Lopputulos = 01100101 (alkuperäinen data + MSB-bitti ylimmäksi)
**/
public static byte[] UnpackKorg7Bit(byte[] msg, byte function)
{
int skip = function switch
{
0x50 => 4, // ALL DATA: Bank(1) + MemAllocBank(1) + SeqDataSize(2)
0x4C => 1, // ALL PROGRAM: Bank(1)
0x4D => 1, // ALL COMBI: Bank(1)
0x40 => 0, // PROGRAM
0x49 => 0, // COMBI
_ => 0
};
int start = 5 + skip; // F0 42 3n 19 ff [header...] <DATA starts>
int endExclusive = msg.Length - 1; // jätä F7 pois
int count = endExclusive - start;
if (count <= 0) return Array.Empty<byte>();
var result = new List<byte>(count);
int i = 0;
while (i + 8 <= count)
{
byte msb = msg[start + i + 0];
for (int j = 0; j < 7; j++)
{
byte b = msg[start + i + 1 + j];
byte outB = (byte)(b | (((msb >> j) & 0x01) << 7));
result.Add(outB);
}
i += 8;
}
return result.ToArray();
}
}

Korg M1R:n olen kytkenyt audio interfaceni eli RME UFX II:n MIDI OUT:iin. Näin voin ohjata Korgia DAW:lla tai suoraan koskettimilla. Audio output menee RME:n line in -kanaviin 1-2. Huomasin, että roundtrip-latenssi on joku 8 millisekuntia eli kun DAW lähettää komennon soittaa nuotti, on Korgilla toimitusaika tälle 8 millisekuntia. Osa tulee äänikortin buffereista, osa MIDIn ja Korgin hitaudesta. Kun tämän tietää, on asia helppo kompensoida jos sille on tarvetta.
AI-musiikki, mitä mieltä?
Tykkäänkö AI:sta musiikin tekemisessä vai vastustanko sitä? En kumpaakaan. Työkaluna se on esimerkiksi track separationissa aivan mahtava! Olen muutaman vuoden aikana käyttänyt sitä jo satojen biisien tutkimiseen ja oppinut eriytettyjä raitoja analysoidessani paljon uutta, mitä voin hyödyntää omissa tulevissa sävellyksissäni.
Sen sijaan AI:n tekemät sävellykset eivät voisi kiinnostaa minua vähempää – enkä innostu yhtään käyttämään AI:ta sävellyksen tai sovituksen apuna. Haluan mieluummin tehdä asiat itse, vaikka vaikeamman kautta.
AI:n ongelma numero yksi on, ettei se varsinaisesti luo mitään uutta. Se yhdistelee olemassa olevaa ja laskee todennäköisyyksiä, suoltaen ulos ääntä, joka kuulostaa tavalliselle kuluttajalle ”uskottavalta”. Tämä ei kuitenkaan ole pahin ongelma. Pahempaa on se, että AI laiskistaa: ihmiset lopettavat oman pään käyttämisen. Ei tarvitse ajatella, pinnistellä tai keksiä itse, jos algoritmi tekee kaiken puolesta. Muusikko, joka ennen loi uutta, muuttuu passiiviseksi kuluttajaksi. Koko muusikkona olemisen tarkoitus kuolee muutamaan hiiren klikkaukseen.

