2d.wave~, why is this at a diff rate?
----------begin_max5_patcher---------- 688.3ocyVtsiZCCDF9ZVo8cvJpWlhhCXNz6ZeMVsB4PF.iB1Q1N.aW08YuN1 IP.R1lFNnUBkCy3376Ol4248mepmWjXOn7P+.8BpWu2MQ5YikGoWYfddan6m mPU1A5sATJ5RvyuHoF1qsIjhcJz2vGRvy1v3If19XgkQWH3ZNcCXejeJYzDz uDIwGdJVrMiHZ82wCqNWhLc4jgKCmR0yWw3KmIg4Z2xXPvj9A9noiyONzdMd T+.zqUEfh8aq.vAl7Ewcyu9sTvMQddnWso9yyOke1bxu0PZQhvH45QAtKnHn ATD9YnfLJe4GZORBrnXRUTjRklWuFjy.NMJwJjf+aNYVqTsmOxKhxWdMPyrx h.4sCZS6.yBGOMmSCBuuLiwuMDC1YVnW1JlthpDxOtcshi6Rmnq7iLsIT1ZZ oXK4zjqATIrsP+75KyvJeMaoxCq95xWe8WEnP5P8EIjX6IG1mXpxr.BSNo9R BJfqoZlfeFgurvC2r4keYiY8ScEIMljqELw5XVmjTzsP7LpVKYQYZ33UpBjW x7blljAhEkwOjnp7MViK+LvexfUqDRcqGcI.v0kLiyzJ8aEsrECnnX53Eco5 pwsDUftK6HV6N.3NzBRb9XXra2vA+idvv6ztgMYSMWrIhwADFsdghtIMAtMn JrKMlNTM0wH7PaWZP2Pk+8AWgw82YZE+3.sPA8y+gQMThMrCN8C592bgGL0c Zxcvq2MUFG.9EevpUQ4INCpJQlbd47V7AAnJZJFTZF+fS6KG+pypiZEKNF3m rMeLSk6.GezHo1+lastF2FcM3gKKRqvU3CWWm+OzWEdcNJZ.X3GuvveQAVPa z03qRWE9FzzzsfTULyNIYbcWKj42Ox2cOi6t2Y14IgsrxGg3BQkFyOsw4KS5 bS2OYjmIi8EZN7W.MGfc+C -----------end_max5_patcher-----------
I’m doing that right there, my buffer is on a different track in ableton. I’ve got a live.number to change the buffer to 1jfsample 2jfsample and so on, and the same on the 2d.wave~.
In this video at 4:35 he’s doing the exact same thing but it’s playing the loop back at original tempo. In mine it’s playing it back super slow. So what am I doing wrong?
I’m at work right now, so i can’t really dig in and look at your patch, but I just did an implementation of 2d.wave~ in M4L. you’ll probably have to do some extra math based on the tempo, and desired playback speed, to set the rate at which you are driving 2d.wave~.
Will have a look at this later.
I think I’ve gathered that I was getting different results with his settings because my loop is different length than his, depending on the length of your buffer the settings for rows and the phasor rate will give you original playback rate with different settings.
I guess I’m sorta missing something here about all the sampling objects I’ve used so far. I’ve used groove~, which has selectors for start and end and if you move those around you can get a scrubbing effect, then I tried play~ which can also give me scrubbing but requires a far more complicated patch to make it work.
Now I’m trying 2d.wave~ which seems to be exactly the same as play~ but just requires different patching to do what play~ is doing.
I followed the directions of the device in this video http://www.youtube.com/watch?v=9tYNPzVD8Hg which seems to give the same scrubbing sound as 2d.wave~ in the first video but just takes a lot more patching. Is that really the fundamental difference of the playback objects is that they do basically the same thing but need vastly different patches to make them do it?
Well they all do one thing, play back audio that is stored in buffers. They jsut do it differently, and depending on what exactly you’re trying to do, you would use different playback objects. I guess the real question I have, is what is the aim of your patch? what are you trying to accomplish?
2d.wave, as it’s name implies, is kind of a two dimensional playback object. (see wave~ for a one dimensional equivalent). These two objects were originally intended to be variable sized wavetables, not really intended for simple playback. It can be made to do that, but you will be have to be conscious of the length of your buffer, and the rate at which you need to read through it to achieve ‘normal’ playback.
for example, your buffer is 1 bar, recorded at 120 bpm. which at normal speed would play back in 2 seconds. so the phasor would have to read from 0-1 in 2 seconds. so the speed of the phasor would have to be .5 Hz. You can set this stuff up with max messages to dynacmically set the phasor speed to match the buffer length/tempo setting.
Well at the moment I’ve just been learning how objects work so I can then set my imagination loose to figure out what I want to do with them. I guess my problem with the buffer playback objects I’ve been looking into is that I look at the documentation and it gives me a tiny patch that doesn’t do a lot, and when I try to make it do something interesting I usually just get an audio mess of noises. So I go on youtube and find a video of a guy saying "This object can do amazing things!" and 10 minutes later they have used either groove~/play~/2d.wave~ in hugely different patches to basically get the audio to time stretch and choose playback position and pitch. The video posted above he even says something like "the other playback objects suck, 2d.wave~ is amazing." and then he does pitch/timestretching/playback position and I’m thinking "uh… cool, but I did that yesterday with play~"
Like.. okay.. they all do playback position, pitch, and granular stretching.. I kinda feel like I’m missing the point of even having the different objects.
This is probably just because I don’t have enough working knowledge to see the potential each one has and why their differences are a huge opportunity, at the moment I just see their differences as being an obstacle to get the same results with different patches.
Well if you’re just exploring max right now, I’d say I wouldn’t worry too much about it.
For what its worth, I look at the devices as this.
Play~ Plays a buffer back when I tell it to.
Groove~ Plays and loops a buffer when I tell it to, and at the speed I tell it to.
wave~ a simple wavetable playback device (wavetable synthesis is rad)
2d.wave~ a more advanced wavetable playback device, with more flexibility, and possibilities.
I’d say just keep messing around, and it’ll all click eventually.
Forums > MaxMSP