KoKoMYS
Tervetuloa, Vieras. Ole hyvä ja kirjaudu tai rekisteröidy.
09.09.10 - klo:13:39

Kirjaudu käyttäjätunnuksen, salasanan ja istunnonpituuden mukaan
Haku:     Tarkempi haku
Näyttäisi että täällä alkaa vierailla botteja, rekisteröitymistä voisi vaikeuttaa, jos roskaviestien määrä alkaa kasvaa. Botit huomaa siitä koska loggautumattomien vierailijoiden määrä kasvaa.
809 viestiä 190 aihetta kirjoittanut 56 jäsentä
Uusin jäsen: helenaprincesss
* Etusivu Ohjeet Haku Kalenteri Kirjaudu Rekisteröidy
+  KoKoMYS
|-+  Yleinen kategoria
| |-+  Ohjelmointi
| | |-+  Modulaarinen steppisekvensseri maxmsp:llä.
« edellinen seuraava »
Sivuja: [1] Tulostusversio
Kirjoittaja Aihe: Modulaarinen steppisekvensseri maxmsp:llä.  (Luettu 244 kertaa)
jukhau
Ylläpitäjä
Konkari
*****
Viestejä: 295


Profiili
« : 16.09.09 - klo:13:26 »

Ollin analogisten dippisekujen innoittamana ajattelin ohjelmoida maxmsp:llä  modulaarisen steppisekvensserin, joka perustuu samoihin ideoihin mitä Ollin laitteissa on. Ainoa ero on että toteutus tehdään softamaailmaan, kun Ollin laitteet toimivat fyysisessä analogiympäristössä.


Ideointia:

Yksi perusidea olisi että sekvensserin syklien aloitus- ja lopetuspaikkaa voisi vaihtaa lennosta ja samoin syklin sisäistä pyörimisjärjestystä (eli onko se 1,2,3... vai 1,3,5 vai 1,5,9 jne.) voisi vaihdella lennosta esim. portaittaisen valitsimen alulla. Esiohjelmoituja steppijärjestyksiä voisi olla vaikka 16 kpl tai ad infinitum... Nämä voi kirjoittaa maxmsp:ssä erilliseen lista-objektiin.

Samoin syklin aloitus- ja lopetuspaikan voisi esiohjelmoida listaksi, vähän samaan tapaan kuin trakkerissa kasaisi biisiä. Aloituspaikka voisi muuttua esimerkiksi näin: 3x1, 2x3, 3x5 jne.  samalla myös syklin lopetuspaikka muuttuisi. Ideana tässä olisi että kun tällä periaatteella toimiva steppisequ laitetaan pyörimään ja yhdistetään vielä toiseen vastaavanlaiseen steppisequun jne.   niin lopputuloksena saadaan dynaamisesti muuttuvia polyrytmiikoita, jotka voivat osaksi kuulostaa kaoottisilta, mutta osaksi ne voivat kuulostaa myös hyvin mielenkiintoisilta.

Sequn yksittäisessä syklissä voisi olla raitoja vain neljä, tuskin paljoa enempää. Ideana olisi yhdistellä eri syklejä, ei niinkään käyttää runsaasti erilaisia soundeja per sykli. Tarkoitus ei ole rakentaa ihan perinteistä rumpukone-tyylistä sekvensseriä (!) Iskee silmää


Ihannetilanne olisi tietenkin jos kaiken tämän voisi toteuttaa dynaamisesta ja "biisejä" ja/tai liveimprojen dataa voisi jopa tallentaa patchin muistiin. Maxissa on olemassa preset-objekti, mutta se tallettaa vain patchin asetukset, ei esimerkiksi ladattu sampleja ym. tietoa. Preset-objektin tallennus ei siis vastaa samaa kuin esim. Abletonissa on 'save as project' tallennus.

Steppisequ triggaisi sampleja eli ääninäytteitä. Yksittäisen samplen aloituskohtaa voi säätää lennosta, samoin sitä onko sample single shot, loop vai joku muu vaihtoehto. Periaatteessa triggauksen kohteena voi olla "mikä vaan", mutta ajattelin aluksi keskittyä pelkkien ääninäytteiden eli samplien pyöritykseen. Joku sykli voisi periaatteessa olla samplen ajoituskohdan sekvenssoimiseen, tästäkin löytyy maxmsp:n helpeistä esimerkkejä.

Samplelle voisi säätää muitakin parametreja esim. äänen korkeutta, tämä osa-alue ei oikeastaan ole ongelma eli samplien pyörittely maxmsp:lle on kohtalaisen tuttua puuhaa, enemmän pähkäiltävää on sekvensserin toteutuksessa ja ehkä myös siinä kuinka koko paketin saa kasattu visuaalisesti ja käytettävyyden kannalta järkevään muotoon ettei homma "leviä käsiin".


Toteutukseen ajattelin käyttää ehkä Matrixi Ctrl -objektia, se löytyy myös vanhemmista maxmsp/jitter versioista. En tiedä onko se dynaamisuuden suhteen paras ratkaisu, ehkä kyseinen objekti toimii paremmin staattisissa steppisekvenssereissä. Looppien aloitus- ja lopetuskohta pitäisi olla käyttäjän nähtävillä, samoin kuin mitä kohtaa kello milläkin hetkellä soittaa.



Modulaarisuus:

Tietenkin sitten kun sequja yhdistelisi modulaarisesti eli joku ohjaa jotain toista jne. jne. + heittää sekaan filtteriä yms.   lopputuloksena voi syntyä hyvinkin monimutkaisia äänijärjestelmiä, missä todennäköisesti käyttäjän mielikuvitus ja laitteiston resurssit ovat ainoat rajoitteet. Samoin kuin mukaan heivaa vst-plugarit yms....

Samoin ainakin osia tästä paketista voisi suhteellisen näpsäkästi yhdistää käyttämääni 4-raita livepatchiin, joka perustuu enemmän livesamplaykseen eli raitojen dubbaukseen ja kerrostamiseen.



Mahdolliset ongelmat:

Kellojen synkronointi eli eri syklien samplet eivät soi samanaikaisesti johtuen ohjelman sisäisistä viiveistä, useamman millisekunnin viiveet ovat kuultavissa, etenkin kun kuormitusta syntyy enemmän. Ongelman voi parhaimmillaan/pahimmillaan ratkaista kirjoittamalla vaikka c:llä jonkin erillisen kellojen synkkaajan, luultavasti joku tällainen on jo tehtykin.



Kaupalliset softat:

Gurussa osittain voi tehdä livenä periaatteessa sekä aloitus- ja lopetuspaikan muutoksia lennosta, samoin eri mittaisia syklejä voi soittaa päällekkäin. Ehkä muutoksia voi ohjelmoida midin kautta myös biisin muotoon.

Reaktorin esimerkeissä on jokin visuaalinen stepsequ, missä aloitus- ja lopetuspaikkaa voi muutella. Modulaarisuuskin varmasti onnistuu, en ole koskaan Reaktoria opetellut käyttämään/ohjelmoimaan.

Haluaisin kuitenkin toteuttaa ohjelman/patchin itse, tällöin toimivuuden voi suunnitella juuri täsmälleen omien ideoiden mukaisesti. En tiedä onko maxmsp/jitter juuri paras ympäristö toteutukseen, mutta se on itselleni tutuin ja luulisin kapasiteetin riittävän ainakin yksinkertaiseen toteutukseen.

Voin laittaa esille myöhemmin jotain luonnoksia patcheista, tässä kuitenkin tekstin muodossa idea, joka voi ulkopuolisen korvaan ehkä kuulostaa sekavalta.. eos. Hymyilee

Kommentteja, kritiikkiä, ideoita jne.  otetaan mielellään vastaan... Hymyilee

Tämä idea on vielä aika draft-tasolla ja toteutuksen suhteen olisi mukava löytää vastaavankaltaisia toteutuksia, edes osa-alueista. Samaa pyörää kannattaa tuskin ihan nollapisteestä alkaa kasaamaan uudelleen.



Jos joku haluaa kokeilla maxmsp:tä yms.  ohjelman demoversio löytyy Cycling74 sivuilta:

 http://www.cycling74.com/
« Viimeksi muokattu: 16.09.09 - klo:13:36 kirjoittanut jukhau » tallennettu
Otto_U
Ylläpitäjä
Konkari
*****
Viestejä: 192


Profiili
« Vastaus #1 : 16.09.09 - klo:16:21 »

Hyvältä kuulostaa.

Ajattelitko tehdä myös ulostulot koneelta? Eli liipaisulla ohjattaisiin esim. rinnakaisportin nastoja. Näin päästään ohjaamaan vaikka moottoreita ja valoja.
tallennettu
jukhau
Ylläpitäjä
Konkari
*****
Viestejä: 295


Profiili
« Vastaus #2 : 17.09.09 - klo:00:32 »

Myöhemmässä vaiheessa sehän olisi ihan mahdollista tai sitten voin heittää perusyksikön jakoon, jos joku muu haluaa aikaisemmin jatkaa siltä puolelta eteenpäin. Maxissa voi lähettää dataa esim. sarjaportin kautta, johonkin valon sytytykseen ja sammutukseen riittää tietenkin pelkkä 1 ja 0. Voihan sen laittaa keskustelemaan vaikka Arduinon kanssa.

Mutta tosiaan nyt olisi ihan aluksi päämääränä saada tuosta työkalu musakäyttöön. Idea tosiaan jotenkin jäi muhimaan kun Olli esitteli niiden dippisequjen ihmeellistä maailmaa, aloin sitten myöhemmin miettimään että vastaavan kaltaista toiminnallisuutta voisi "emuloida" softan puolella.

Mitä tuohon suunnitteluun ja toteutukseen tulee, niin olennaisinta on suunnitella perusyksikkö huolella eli kun yksi 4-raitainen syklin pyörittäjä pelittää ja kaikki toiminnallisuus on saatu kondikseen, sen jälkeen ohjelman laajennus onkin kohtalaisen yksinkertaista, koska patcheja voi kopioida, yhdistellä ja varioida loputtomiin.

tallennettu
Sivuja: [1] Tulostusversio 
« edellinen seuraava »
Siirry:  

MySQL pohjainen foorumi PHP pohjainen foorumi Powered by SMF 1.1.5 | SMF © 2006-2007, Simple Machines LLC Validi XHTML 1.0! Validi CSS!