Two problems help please
As the title implies I have two problems. Firstly my "round" object is not being recognised any more. I dont have any other object thats named the same and have even tried deleting the object from the externals folder and pasting a new one in…. I think i have to reset max(by deleting .plist and something else but i cant quite remember what you have to do….) any help would be greatly appreciated.
Secondly I have been trying to create a number of sample accurate patches. The problem here is that when using a buffer~ to store patterns-as per the "mod squad" or "phasor step sequencer examples"-I get clicks and pops each time I change the pattern (I’m using a hanning window at the start and end of each division so its not that). The pops go away if I change the signal vector size or the I/O vector size after I’ve changed the pattern but that seems to just be resetting something because there is no particular setting of either that fixes the problem (the poppin only stops if one of them is changed after the pattern has been).
Thanks in advance
If you’re sure there aren’t any badly-named abstractions in your search path, I dunno what’s up with [round]…
Are you changing the pattern by changing the buffer~ that you reference with index~ or whatever? And what are you windowing exactly? It sounds unneccessary.
If you’re not doing so already, stick all your patterns in one long buffer, and jump between them by offsetting the ‘read/write heads’ of your sequencer.
If you want to change patterns live, and keep it all nice and tight, you can do something like this:
[number] < - pattern # | [* nsteps] <- * ptnlength | [sig~] | | +----------------------< send a click here at the desired | | pattern change quantise resolution [sah~] | | +------------< | | [+~ currentstep]
Yea i’m changing the buffer directly. Not sure I fully follow your explanation but i’ll check it out. The only problem I see is that i’ll always be limited to a certain number of patterns this way. Not the biggest problem in the world i know but I like the thought of being able too have as many as I like.
As for the windowing I’m applying it to the beginning and end of each division of the sample, without it there are definite clicks that have nothing to do with the problem I mentioned-they’re just a result of dividing the sample into ‘x’ number of pieces without worrying about zero crossings. I’ll attach the patch that I was havin the problem with if that would make any difference. I ended up just implementing a similar(obviously not sample accurate) thing using Max objects but I’d like to solve the problem because I dont think it really has to do with the patch itself-as I said after i have changed the pattern and then changed one of the DSP settings the clicks stop so it seems to be something within Max…
Anyway thanks alot for your help man
PS If you do look at the patch all of the scripting stuff is pretty obsolete (I just wanted to see if it was easier but ended up going back to just sending things presentation 1/0 messages) so you dont need to worry about it.
No Max at work, but I’ll check it out this evening.
I see what you mean about windowing now; I thought you had a general-purpose click sequencer, rather than a sample slicer-type deal.
But you’re going to have to switch to one giant buffer to switch patterns cleanly. The message you send to change buffers doesn’t happen at audio rate, so the switch won’t happen at exactly the moment when your window is at zero. Also, depending on how you use your pattern data further down the line it could cause you more problems.
You may think you have "infinite patterns" but you’ll run out of memory at some point anyway. I have a sequencer patch with 64 steps per pattern, 64 tracks, and 8 parameters per track.
64 steps * 64 tracks * 8 params * 4 bytes = 128kB per pattern.
I wanted 4096 patterns, but realised this would consume 512 megabytes, so I had to cut that requirement down!
But if you just have one track and, say, 4 channels, 4096 patterns would only take 4 megs. Do you really need more than 4096 patterns, even for an entire album? Or are you making some sort of ADHD hyper-edited hand-sequenced glitchcore? ;)
Na I was fully aware that an infinite number of patterns is impossible. I suppose my concern is more to do with the clicking itself rather than the number of patterns which are possible, also I want to be able to alter patterns on the fly so thats another reason why I’d like to sort the clicking out. I’ll check out the suggestions you made though cos the reason I started making it in the first place was to try get away from doing roundabout solutions in Max rather than sample accurate MSP patches.
PS dont mind glitchcore…. bit too lazy to make it though….
I must confess, I haven’t a bloody clue what’s going on in your patch!
It must make sense to you, but it seems like a very unintuitive sequencer to me. Perhaps someone else could shed some light on this one?
Ha! Well i actually intended for there to be multiple instances of the same patch I loaded up along with a number of different sections. It is basically my attempt to create something similar to a kaoss pad… although i’ve never actually used one so its just from watching youtube videos n reading a couple of reviews(not the best way of going about things I know).
Basically the pattern will always play left to right. The number in the top left corner is the number of divisions of the sample which you load and each toggle represents one of these divisions. If a toggle is checked it will be played, if not it wont. I havent given any other options of rearranging the sample yet so its kind of basic in that sense. I didnt get any further cos i pretty much instantly arrived at this problem
Sorry should have made that a bit clearer.
Ive attached another version with a few more comments-its basically just the "mod squad" example file though with a couple of extras so as you arent always stuck with 16 divisions and 16 steps. Again though I’m not convinced it has anything to do with the patch itself-I’ve checked quite a few different things and it seems to be something with MSP, otherwise I dont understand why changing the either of the vector sizes would fix the problem but then it would return once the pattern was changed again.
I have a hard time understanding it, rhythymically. Every time you switch a toggle on/off, the number of "steps" changes… seems odd to me.
There’s an awful lot of complexity in that patch. You obviously know your way around Max, but it looks awfully inefficient. Can you describe in words what you want your sequencer to do? I’ll try and knock up something simpler.
Hey, here’s a patch that uses mxj buf.Op and polybuffer~ to create an arbitrary number of empty buffers which you can write into and then switch between.
This works with your patch by just opening it alongside because the buf.Op object references your #0-steps buffer.
You should be able see the waveform~ in your presentation mode changing when you change the second umenu.
Here’s a patch a bit like "mod squad". It uses a slightly more elaborate step counter, which seems like overkill at first, but it’s a flexible system to build upon.
For example, by [bitand~]ing the per-step clicks with the gate output, you can extract click triggers for each active step. You can also use [< ~] on the per-step phasor for variable gate times. Add a few more tracks or [multislider]-style parameters for added fun.
N.B. I only have the Max 6 beta on my work machine, and no speakers, so who knows if Max 5 will open this, or if it even works at all! I’ll be home to make sure it actually works in a half hour!!!
----------begin_max5_patcher---------- 5212.3oc4cs0jihik94r9UnvyrQ1WxJazEt0wzOL6yytOMarOTUEUfMxNoKL PykLqrlXpe6qDRXCoMfLFISG6zwjt.rAoOcNGcty+5c2sZc5WoEq.+J3Cf6t 6e8t6tq9T7Sbm736VsO3qahCJp+Zq1jteOMob0ChqUR+ZY84u+uX89hRZV1S AEo42C1Dj.VSAUEzPPYJHiluMMeOnLXcLEDml9kpLPZBH.7RTRXJ6O6.aqR1 TFwN4OjlCdMsp9d76UEk76BnLOHi9sznver4YGGkP2jVkTO.vxStMMorH5aT 94fnGsjmNoZeTRLsrdR.Odxzpxly17UyBJ27Da774b5lRAz3aYwtS.e65OPn 5OHdOZA9j7GEEViBoq+82ifjUsFLIA6qGLq964QAwq3W3e+t2w+yCWIjGmFD x.vhf8YwzG.gQOGERAQkEfXZxtxm.qeET9DEvllqo4fzs.9BTwC7Sl.1WEWF kEy+JQEMe0MU44rGE3iq3eUfXw7iq.YwUE0egh3nMT1sZaAsz7qCPrXEvyUr PfGYgvxLKD4zr3.FrTijuDwP9yRVGsslptHEDRKhxo0z4pReizKtBEHoj.Gh 4efI8fqVtyKtlPegceOAVynzu7c.Sth.KWcAH.9rH.bHDPPR4Pp+.ZQpABq9 P.6AP.4UDO3xWynhGwpsLFV1i6SyGBsd0USUfFmpvFIwD+gwDxDvj0AI6V8f 7yIAM6oEEA6nmfM+UH.93kfOnISyHfIraMJ0mvHK7DfmYkZgueg.uuVhFnBh R7EXi0vzLVSklYNAlpuEAfNXOBv55IXvJvP4U+g6f7SPe+qkeh8YTR47xVwA knDtNGEBLSurXDglW1hMlfhMl5iGC56dq4wVWscKMeh6Zc4RnafGOUjPC8m9 tVOnA1te56Zk1wqATDaoiQOZOD1.m.1TDsKgc4Yk.B.0p7YrfhAKDOibGjfw yeIHdtDrFrUu7QPAMhuX6JLdPREOuqPv77qDHaZPidlVKy4nE3ZkHpwdXwGP ryvTQtKCVqBZR3riRCYUkUGdMHhLLL4XFqUElvWPiYCTMi.R6zsErUdVCO+s M47+9bZPH3I1etWyDAv1tr.ZMBHPLho0LUSneslWHqLQnyB.Yhciafgw3EvK CQFZVEEGrTsVIUgi2va7fLLpzqydeIOpjZ.tGhzRIg.D2Q3clY280mIPBueB 9qPsRaPPx4rTD5fF935eyctPTQ41pjDZrdUeUXHnKVZ2yfDDtSQwC9DYVQlC twbhhZwSEibjhZgCCRNKBWYlkSyX5mwzKordEPmDQN1x3FH1RZXilcsu0rVF m.RhORuUMJADZQP.8sXvt7zpLlg9WubYz3DO1prkj6T7p.2LwY2wu7My.V.H .Av.BvF3.bAd.elFoL8OXvCyLN.j.f1.nC.5x1qA.8YyL.h8aP.DFfH.jMSI E.xEf7.He.1hQjnW48RKHjx6QiHv2xX7p0gOkYJQH8fITMSdbC0CSVFaty9Y hmjjop0Xu33.4fRP4TlcpkA7HFdpLcoRA1Phvv61.w04BD4CPZp1Ye.sGZse FsWAbNrkaVPNC+Ko4ellvC5e6I4LRx2mJpsB5M2duh1DFaC1PaOA5gxsmkBB rMRcNetdkVLhjdWA26CPoUhY1cBB.s4dxtTz9p8cH2uLX7MDbVSAEUwkd39t +JAhJDSS1nrAJfSg1mGhFc3d8eg6xa8FcFXSzxkN5ZXi5cVFJJDkrMsVcp8u JRclqeCLugh4GpC2LbXeK6.ulPzHzbt0IT4eLuwGTlKLym31FAD9REANwN34 gFtwUkjSt+JImvZAE3wF5ZPXd09+QZZ1iAQiE+jQDRK8fsuutjRa06CPE321 aQEXSFGvqyrDFjBw4T5ZUn8fRgsuhnwnCvJWZYqHmEuDjx5h40k9h2QZ3+H. kyslmlGvpIiNSHI.kRBaR2qgiMrssY71ZWy4ut8RbkYp0gv7Ny6kHcVqqWe2 ekDlQLFcWeFO8OehB1mFVEmBBSoEffsaSyCAUEfhz8TveTEs4Kfj6AgQ4kux yl6r1I5JOSgSq18zC04BKanBtONsf+M34lbs5A2CdgmCx7zgMmVVkmvyQbd9 Ey.H11X4zP.CeYJPmHyk4GuEIEqfevUl+H9NCkTrParY3GPj4ievwUu7CNNy A+.xbN0oGLG5LiXNVyXNZNvb3sGymQ49R8W0Fl2jPmWGlacywbuYDxs0LjSl AHm3eyg7YTxhsl0twdNztg3dygb7L5KXMKLmLGByI12dg4yGji0rfE7rHXgb yg7YTMQhlUSjLGpIRv2bHeF0XAqYMVvygFKDzRnjlpirMjInTu00jLG8Hpjy HDq++UsdoPodwn3LZsDP+VXvlCYuoBbKVJjllDYpez72yOQcmj49Ak4QecSY 9AvHO8kNK.AUkoGVBUaOR+NAy2aL21uIMtZeRQmf5doIPv.OSEDobLn0WTHT ah60zycudyz00ruRoIxzUYDpcUIshPdlIU4IZcJij0fD7vjcnorqYlxX8tJS tjorgJHDjVmx1WzT1P0.BTqSYoaUUbJantEh4xYe+1YW6XRxvlY1S+ipnmCh 481jxTvG9I1FbeRqnfTycXSgKOBL.MCLrKnzbk9jLAzUrxmPFpYs7+9DMg9L MuS+toIXSQEfMOwz4jF9.XSP7lpXNfw+l4bJHdbojU+QTRSDqj+TQBX7.HHI DDJtz1z335d.yu9wjOl.eD7+jE1b+ZsH.xX50wUJ5iIntemVrrs9R3teoVZn z5KQdDb++I+J2yH0k8HnBv17z8mYTKlMe3nNne5rgay0.k5SSwZKZlFV3dnV f9lgZoAmngQFpXIkJPORwRBc0Q1cNopcaeZHs8wEQ6pmoOZcwYCTSsRhaUyS 8CANWUhrbEIVXeDKMRS30WrlKpT21.0XzJ1FolR+YiTqjdMdbe3RkDRVHkJo LQoeS5L.9sZox71w1GS9K7rTWd8B1UfVHxGapzGNNJ91+T8Ep+2tNdMhzuEM gMYcAg6zD176ak.aFpOsR7cncYHctwvzdSw6eStQ8baviNEAEzmLDfLoFYzb iGUIYAa9BHh+eWurY73PSSj6FRzru2DQlG57wrl6pbTpVAWf0kgTjIRD0Ttp C5RcOxs1i57tPigncPDYVWOHhfuhtPy0R7zWDv1DSCxmunfISEUYITHK1j4K JXM8BI69t8J3wZWuEBg4bPZRF.qjYErLfgnAU+x0ZdnM0f7Mdu9ioLkdazeR vR5.PQMqzGV4bSayepWx4P81yB7ufRN2waYzxBLNH0ouELRa2xwcQ.RLap9t dalC317Z3g40rWHVEllPAqoAkxNr82MgikPM00wvjMHiXt1e6uAr0qEJn19e GOXo9LoJ8Y5hb6qPpYl2imVJk6zVMoYuTp6n90zJjZ6KqNpstI0Q8Xt0S5hl 4ubjjUHr2L2HAj8NCRe2cUV2LTQdwclEeojGHBuG.saxv0d6Ry8waXqPUB8s GpUaYiWPU56QEOr.HizK3gJ0xOsgKp5w8bc6PnQbVsRc6vIU3G5Pqj+6zR5u xc9SIuX8ZGlPoWqeNJnot.2DTUPK5DD05WYHkofeuZeFnnJLjlD+5if+4Szb JHf8+eIM+KA4oUIgELF8mSiel+bnQraRN+EYR8TB7bceI89B9Wm8LS2BBowA uB9gJ15QQQcQCxegY7gczju+I1MB7eE7UfyO9H3uGyGrL4YOSie83aViOTD7 D6KxFYorADn5XrSeyzKMgGV1hxf7x6OeAGZq2n5f6TvgV0FA41SdFR7MhhZZ W+8lDqE5nfB7jERqDtD.A58kugemzmAOnq.mTAdnq1NCOESzaj.kPCT1TJFA aVJABLiKv7W1vFDQIUz4uP6jJQ5N2ciJqNrmm49qfZjjYNFfko61crqZzGvf aCLnIYUjBTgN8c6UAWPqlpkNyqomSrGdIa8HXc0Cuj4ChzNooY5oJ0hwMuEd MV5GIUP4GpyX.tJOxK7iymbD+NkxnzJnYUPhS6Eyy8.TX0DaFsd9O99rzFQG W7ga6RJou8vlToyni8vB1roZOOmHSy4pS+TZb3oV.7bP7w82LX65vRHCtoXc vVC0tNvFpbB9vZddCxr9XevWXlKUTwMChB1QKYF7rIl2GUp6DJry8TT4QyO. AL6enww2fz6wB29E3ETnPdeuiEwNFgeTfhlfgrI60GL.T3kRbDdgJrvkgOes lLiwUVTllA9vO+aripoXZrkWRZIn5tczUM8M0geIphMTUQrilPy4tCPxM9cv VlrMZvlm5jEmlTLFoc9CIiVSuhwvlh86qFh+SRdPFr4igQKC2.vXxLAlzzxf F7MXFFtPjIIzQMilWGgy4WAUeYGib10OUZeQu2eUTO0ZY2zkaLXyWWFrY0FC mlAaH++71ykY1Mn4W5r9cL4lfF70qp6R4snDfXDPQE4jHmkRkAz7BXmWwXuj GjIBIQcBgv0i69njM4zfBwqz8hLJM7dQPLX5xErOqVDaA8OpnIa3+q9TWwHZ 0Igdn6vuQ1MSkn7a+12Au2L7gxLfmL7qF6ExayrLI0064BgKMA7fDvi2fYAO 5pzlq8XfsUo.TjnB6NFEyK1yhta2b2pfrrVm9tV+DNT96o02HmGNbpnDworN bpb5yQM+dKwIYKPuq4hG.Bjsnuh6HxECAR34dDJXKl6hS27EZX6GvpzLZRTx a2u7vkCoaCXBP974W85d8F8tN6EOKde2pc4QgoI7AQmeI+zMONN2uvFk1Sl5 uQRP1Y9wL6OKqJVGjyQN4VznlKVllF28RGVrXD6Ar86YloUFIFrHqC2zn8Y4 QBIcGNmPCfmJ1jmFG24VItxym4Jgr0yMzWhBKepS4KxuB6qGk0rDr5.FEFsi VT18bkA6J5dF1nmVHvq65Pn0lKty4GbCjtrzOk9BeOgZFZlMrxcO38cW11Jf fpvnz2Waeaaq960j1AjGz6dE8uew.ufSDw2V3eI62Zf6IxGV8lQ2Y133tFgj R9vIB0cDb1upcWDNg5EmfCiSj1AX5TM8N8kPvH3TqqN7tM5GL+4aEXJ0VwaT vz9OOf46+9s.IsZPR6QPRxedPRdhBYTrr860zSyigSasXKLnrFAV0GpXccTX x752t4u8hJ9pMua8kZ1Qsde5kOd3cQ3wgFoxsGODO7UytFDj1I.jBHBb0ELY OpJKWEodzbqdPwu94Qghzp7MMHdylyftCPlZkkQIGzr+CGGqu4K9TDOUJeKr DFUvUkMrk8GirlcoiYNgjRiYtbI.bQLl4BCTeLa8mrwLY4LlsUcL6rbFyDUG y1KmwL9RnMlCdvih+BqeiLSS175m2Dr4I4vRp.QiuNX5L8LM7yrg.S57mCJK yiVWUJDa11QL6hSWGDK8RyA0VNXj7YcSwz7swYLJWA+cLvkFyUKmZx+IdL3c GA44wUdhtTldyL6FWbJKqrgecP4sLbwoHH95Mg0kueVaZHzi71wdYfK+B2TC M+x.05sId0.vhkYKN49hAiLmXl+VkOpuvBLOYiMouauBwWclyfRlz9xzjQxE ahsIxEaxUjJ1tZnGj2GU25r8yHEm0o8Hk4jhqoClZ028WkxHcdI4XBBXi+q5 MZptpU5CRAsthLf.eYEK8iSpbo03q+zKumFL43KhZ8V6s2MaL7VvJ2bjl+8f 6z93wtCUHyPr4d+llEjPObOYHaJaHWGOptrXmx2sNMOTDT2gEbsd2lzXQDZ+ .igvg++benm+kU2fF+1BcVJnizt6FV+wYicsk2w2WCULqkNZWkDip+Ucckj. xdqofRf6DS.c63FldL+yoiODN0zuSM66jkPUGO0OJzHiGOrwFOXEfGnkwFNb M9Gc7vS4giVqelwy9nvrznjxhC1b3WGnEb8GPKauCGd7QMeyAUmBFBR8TY7X NJNUVgI1Fa3T+nfiwA3Z1wyn3i4HedyipmwCwbjypHPmXv0KhJRPM2vwU0kK 3xQfN1dZBzItRA5P3gC0f.cDV04fg1yVEQDXzxZSa7D2z1lzrF6d3PMrFiUQ LGFtvvT3zvTGnDSspKOw5C0.lZqhnQaGyo4gJZB4L134MXJV.oX2ZcJw1GOR CHpGVAkU7LmzcOUjL5YNkC7H5XEtYM0uyJrd3Ydyf67y.eOign9pvy3aN6ms UAebMmAq0OJ7XTb1lc7fTY8xfRHFa7.gFdACpz.xLHjiJZyAgFzBKrJ771ly iAHUzEBZNYh0ughGW4LygOpHSDYNShQ9pLdbLFGFBo53wP1u4oLGObIMftP8 l78p0Tx0uw.tiGpCC3TwsqXyIjPMYDdlyQLp4nJaaCJFEMKin2ZjKVP24YUa QFDSNdnN71uRNr8xmEDjYmEX8LKbL6rvUKyBaKyNK70yrfXzYgskdlElk61F pkYgiY4ts0ijVGyxcaSzxrv0rb2J4AChAC4tiZLpFz9JaOUrQ2wfdiu9Y4L5 HBcoaOBs3zZRMkYp76e3PcP5oTrScL2BsimptOFeAtqUXuAVjrGD3wiz.jV6 dzwbuE+kIkgzx2WEUGbbMXXrTZmGWCxJqDSvaG2pR0gDe3Xe7HcvH6pjMGit N+l4fbTK01E25HsLGTRyJWCZOpiRVO35tv7UsquAYm8mEH5MDdRaccQ3VDd0 GoinRqhkt1FTfD1YNFPmDpeQ3J8wBkZgGNRK7xV5PdjLhq11j1xi3Gok4fZb +NKsvdLMuxh8HxT.43g5.UcTxlMOCZbgmZFWfLmmY8Tx86NnkUhx.8L39Ndp sui0jxcGaX6D7vVSYCEzSI9Y+KTPuuXN3Kcnj2wizB6LR44vkjWZvlj7SLK7 E4kl3PsrTfmkkh4zpD0jShuPM5EFA6Y2l3n9HcnXkRJA3gVXfpsAc0luZh.L nMO9pTORHKClLCVpPFgrHFbDoDuoASBNwHZTcX7MXJeXgUZUyjT1pE4FC5KL aWkEPZJMOUZ6brAwnKXDAu38AgPg9ENN1GObzcBAe5c+628+AHBujIA -----------end_max5_patcher-----------
I understand the purpose of your patch now! It’s pretty cool; especially for remangling things into strange new time signatures. A whole bank of these would make for fun polyrhythmic remixing :)
I reckon it ought to be do-able with far fewer objects – scripting the creation/deletion of those toggles is definitely overkill; you could use a [matrixctrl] and just change the number of columns, for starters. I’ll try and re-build it without clicks (probably quicker for me than reverse-engineering your patch). Might not get round to it tonight tho.
@davidsmith Cheers man i’ll have a look. I generally try and stay away from externals though… I’ve had a bit of trouble with them crashing on me… also just havin a quick look at it now it seems that it will solve the problem of getting clicks etc while changing the pattern but not sure if it will solve the issue of the clicks that i’m getting while the pattern is actually playing. As I said changing either of the vector sizes(or even just reselecting the current setting) eliminates the clicks and the only return if i change the pattern again.
@christripledot Yea I got rid of the scripting in the second version i uploaded. If you look at that one i’m just sending presentation messages to each of the toggles. As i said I have actually implemented the same thing using metro’s etc. I created a similar patch to the "mod squad" example using multisliders recently and basically did exactly what you were sayin about just changing the length depending on the number of steps. I know doin that would save havin to send all the presentation messages to the toggles but because they’re only on/off I just figured toggles would make a neater user interface. As for the actual section which makes the pattern if you can come up with a more concise way of doing it that’d be great. Bar combining some of the maths objects into "expr" objects I dunno how you’d be able to do it while still retaining the ability to change the length of the pattern so easily.
As i said though-considering the fact that the clicks disappear once i alter either of the vector sizes (actually just creating/deleting any MSP object does the same thing) I dont see how it could be something to do with my patch. I’m more than happy to be proved wrong but it just doesnt seem to make any sense if its not an issue i’m having with MSP itself….
PS thanks for takin the time to try help me with this guys!
Hey – no problem re. the time… sorry I can’t help with the clicks. I couldn’t detect any clicks when I opened your patch… other than audio clicks due to the waveform being sliced.
Not sure what you meant exactly by avoiding externals, but both the mxj buf.Op and polybuffer~ are a part of the standard cycling74 distribution. Although polybuffer~ seems to be a new addition.
Yea thats what i thought man, dunno what the deal with the clicks is so…. might have to try reinstall everythin n see if that solves it. Otherwise i’m just gonna have to stick with the Max scheduler…
As for the externals I was referring to polybuffer… I definitely dont have it so I figured that it was an external. I am still on Max 5.1.0 though so maybe its been added since then.