Home made sequencer in Max

bronswerk

nog steeds lid
Lid sinds
6 september 2004
Berichten
848
Locatie
overijssel
Naar aanleiding van een discussie op het SOS forum (en later op KVR) over de Direct sequencer van Vangelis was de algemene opinie dat tegenwoordig weinig nieuws onder de zon was voor sequencers speciaal bedoeld voor live gebruik. Op een gegeven moment nam Bill Marshall, de ontwerper van de Zyklus MPS en de Direct sequencer, deel aan deze discussie. Er ware vergaande plannen om iets soortgelijks opnieuw te programmeren. Heb een paar maanden met Bill Marshall samengewerkt, maar door omstandigheden is het er niet van gekomen. Daarom besloten om iets soortgelijks in Max te programmeren. Moest natuurlijk eerst de werking van Max begrijpen en ben nog steed lerende, maar er is iets tastbaars.

Mijn sequencer heeft 8 "slots". Ieder slot kan een ingespeeld patroontje of melodietje opnemen en gelijk weergeven als je de recording stopt ZONDER de muziek te moeten stoppen. Met de loop functie kun je dus heel snel bv een baspatroontje inspelen en daarna laten loopen. Dat 8x, dus je kunt heel snel lagen over mekaar heen loopen, elk met hun eigen looplengte (in beats).

Maar het mooiste is dat er akkoordherkennig ala arrangers inzit. Dus je speelt iets in C majeur, maar in playback kun je naar elke gewenste toonsoort door simpelweg een akkoord aan te slaan. De eigen opgenomen patterns volgen dus jouw akkoorden. Dit gaat verder dan de arrangers want de aangeslagen toetsen bepalen hoe het pattern zich ontwikkelt. Dus ook omkeringen van akkoorden zijn van toepassing. Ook wijde of nauwe akkoorden zijn hoorbaar terug in de patterns.

Daarom een simpel stukje, de patterns zijn eerst opgenomen in C mineur, elke ander akkoord wat je daarna hoort doe het programma. Oordeel zelf.
 

Attachments

  • livesong-03.mp3
    2,3 MB · Bekeken: 84
En een plaatje zoals het er uit ziet. 8)
 

Attachments

  • improvisor.JPG
    improvisor.JPG
    179,1 KB · Bekeken: 91
Ach toont maar weer eens aan dat om een reisdoel te bereiken, het vaartuig van ondergeschikt belang is. Als je weet wat je wilt....

En euh....niet alleen krijg ik zin om deze sequencer uit te proberen, maar ik krijg zowaar ook zin van om met Max te gaan rotzooien. Puik werk bronswerk! :okdan:
 
dank voor de positieve reacties zover. :okdan: het heeft wel enig bloed zweet etc gekost.
als je bedenkt dat ik vorig jaar zomer Max heb aangeschaft valt het mij niet tegen.
maar het is bij lange na niet perfect hoor. er zitten nog behoorlijk wat grillen in.
het unieke hier is toch wel de akkoordherkenning
(en nog een aantal technieken op de achtergrond om het werkbaar EN muzikaal te maken)
en daar moet ik goed over nadenken of ik dit (vooralsnog) wil prijs geven.
het blijft een max patch weet je
 
En zo maak je dus muziek die je anders nooit gemaakt zou hebben!!! :P

Ik vind het echt helemaal top!
Superidee en zo te horen is de uitvoering ook prima geluk!

Chapeau! :okdan:

(Ga je nog een demootje weggeven of wordt ie freeware of watte?)
 
zit er trouwens serieus aan te denken een aangepaste versie te maken in Max for Live (M4L).
het opnemen/weergeven van sequences vervalt dan natuurlijk (dat doet Live zelf nl),
 
Wat is dat, Max?
(niet te doen om deze term te gebruiken als zoekterm eender waar)
 
ben bezig met versie 2. versie 1 was een samengeraapt zooitje zo te zeggen en eigenlijk mijn eerste kennismaking met max/msp, deze versie moet een veel duidelijker en overzichtelijker structuur hebben, achter de schermen dan...
 

Attachments

  • Improvisor2-02.JPG
    Improvisor2-02.JPG
    163,9 KB · Bekeken: 86
Dat ziet er heel netjes uit nu!

Ik zie onderaan knoppen die of de naam van een synth of 'device' tonen. Is 1 slot bedoelt voor 1 apparaat, of kun je ook per slot een midi kanaal opgeven?

Zijn de 8 slots uitbreidbaar. Ik ben zelf altijd een beetje huiverig van beperkingen en ik denk dat ik 8 slots zo vol heb :-) De demo sequence die jij in je eerste post liet horen b.v. is daar de drumloop 1 slot of meerdere?

Ik heb wel erg veel zin om met zo'n app aan de slag te gaan. Lijkt me erg handig en inspirerend.
 
Gezien de eerste screenshot denk ik het antwoord op m'n eerste vraag wel te weten. Daar zie ik dat je een midi out en kanaal op kunt geven. Neem aan dat dat in v2 gewoon op een andere plaats zit. :okdan:
 
Dat ziet er heel netjes uit nu!

Ik zie onderaan knoppen die of de naam van een synth of 'device' tonen. Is 1 slot bedoelt voor 1 apparaat, of kun je ook per slot een midi kanaal opgeven?
1 slot is 1 midikanaal, dus midipoort x, midikanaal y

Er komt een apart setup window waarin alle midi in's en out's en kanalen in te stellen zijn. Het is nl de bedoeling dat de namen van je synth bv "Triton" gewoon in het menuutje "Output" van de desbetreffende slot staat. Dat de Triton luister naar midipoort x en midikanaal y stel je in via het setupwindow. Ik denk trouwens dat ik het woord "Output" maar verander in "Instrument" voor de duidelijkheid. Het "device" veld onderaan is gewoon een text veld waar vanalles in kan staan, gewoon een geheugensteuntje voor de gebruiker, evenals het "empty" veld bovenaan. er komt ook een sectie voor "midi remote mapping" zodat zaken als run, record ed via midi aan te sturen zijn. Dit was in de oude versie "hard gecodeerd" voor mijn eigen specifieke setup.

Zijn de 8 slots uitbreidbaar. Ik ben zelf altijd een beetje huiverig van beperkingen en ik denk dat ik 8 slots zo vol heb :-) De demo sequence die jij in je eerste post liet horen b.v. is daar de drumloop 1 slot of meerdere?
In principe zijn er 8 slots, maar is naar verwachting makkelijk uit te breiden vanwege de modulaire opzet van het programma. Let wel, in deze nieuwe versie kan je 4 sequences per slot opnemen, althans dat is de bedoeling. Het vergt wel enige programmeer creativiteit om alles op te kunnen slaan vanwege de soms kreupele manieren waarmee max/msp met datastructuren omgaat. Ik word niet vrolijk als ik voor elk patroontje een apart bestandje zou moeten maken, dat betekent, voor 8 slots en 4 sequences per slot, 32 bestanden op de harde schijf. Daar moet aan gewerkt worden. Versie 1 kon trouwens helemaal geen sequences opslaan.

En nee, de drumloop was een Stylus dingetje vanuit Ableton Live
Live stuurde een syncsignaal (midiclock) naar max/msp en mijn programma deed de rest, behalve dan de drumloop.

Ik heb wel erg veel zin om met zo'n app aan de slag te gaan. Lijkt me erg handig en inspirerend.
Dat was ook de bedoeling :P Ik was het een beetje beu dat ik niet on the fly wat dingetjes in kon rammelen en daarmee een complete backingtrack zou kunnen maken. Maar de doorbraak was toch de akkoordherkenning, wat heb je eraan als je niet kunt moduleren naar een andere toonsoort?
 
Heel gaaf project! Dit topic zal ik met veel interesse blijven volgen :)
Heb Apparat en Modeselektor weleens zien optreden met hun home-made Max/MSP patches + midi controllers, omdat er toen simpelweg nog geen Ableton live bestond... Live blijft natuurlijk mooi, maar elk creatief initiatief is welkom, vooral die chord herkenning ben ik benieuwd naar :)
 
Aaahhhh ik krijg al visioenen van m'n twee padkontrols die Zyklus Improvisor aansturen, start/stop/switch scene/record/switch sequence etc... :)

Maareuh, ik zie ook 8 scene recalls. Geldt dat voor de hele "interface inhoud"? Dus 8 scenes x 8 slots x 4 sequences? Dat zijn iets meer bestandjes :-/

Mijn vraag van de 8 parts komt vooral omdat ik graag 1 track/slot per drum geluid gebruik. Dan zit ik nogal snel aan 8 tracks. Maar het is jouw ding en soms werkt aanpassen aan iets ook wel inspirerend :)
 
GUI?

GUI?

Bronswerk, dat ziet er strak uit!

De GUI getoond in de twee plaatjes, is dat native Max/Msp? Hoe heb je dat aangepakt?
 
Heel gaaf project! Dit topic zal ik met veel interesse blijven volgen :)
Heb Apparat en Modeselektor weleens zien optreden met hun home-made Max/MSP patches + midi controllers, omdat er toen simpelweg nog geen Ableton live bestond... Live blijft natuurlijk mooi, maar elk creatief initiatief is welkom, vooral die chord herkenning ben ik benieuwd naar :)
Ik zit er aan te denken als "Max for Live" uitkomt om een aangepaste versie te maken. Live is een ideale omgeving om je sequences in op te slaan. En met die nieuwe remote APC 40 een ideale combinatie :luv: (In feite blijft alleen de akkoordherkenning over.)

Aaahhhh ik krijg al visioenen van m'n twee padkontrols die Zyklus Improvisor aansturen, start/stop/switch scene/record/switch sequence etc... :)

Maareuh, ik zie ook 8 scene recalls. Geldt dat voor de hele "interface inhoud"? Dus 8 scenes x 8 slots x 4 sequences? Dat zijn iets meer bestandjes :-/

Mijn vraag van de 8 parts komt vooral omdat ik graag 1 track/slot per drum geluid gebruik. Dan zit ik nogal snel aan 8 tracks. Maar het is jouw ding en soms werkt aanpassen aan iets ook wel inspirerend :)
Een scene is een snapshot van de zichtbare UI controls. Alle 8 scenes worden opgeslagen in 1 "xml" bestand. Dit was het makkelijke deel en werkt al.

Het opslaan van die sequences (8x4) baart me veel meer zorgen. Absoluut belangrijk is de quantisering van je ingespeelde sequences. Als dit niet strak loopt en je hebt dan 8 rammelende patroontjes... chaos! Helaas is dit de reden dat ik niet de standaard tools van max/msp kan gebruiken die je iets laten opnemen en wegschrijven als een midifile, nl geen quantisering. =( Dus ik moet mijn eigen systeem bedenken van opnemen en weegeven van noten en heeft als nadeel de manier van opslag.

Het programma is niet zodanig bedoeld voor het maken van drumpartijen, dan loop je inderdaad al snel tegen de grens aan van het aantal slots. Ik heb er wel over nagedacht, maar dan had ik meer het idee dat 1 slot een drumpartij voor zijn rekening zou nemen. Echter dan wil je al heel snel dat er geloopt wordt *tijdens opnemen* en dit gaat niet in de huidige opzet. Je zou met "layers" moeten werken binnen een sequence, een soort van "sound on sound" techniek zeg maar. Niet zo makkelijk hoor..
 
Back
Top