New Firmware, New Features--

Hey! So here's the list of features we discussed that I never got around to programming into WTPA v1.
Let me know what you like and don't like, and feel free to add new feature requests as well.
Probably not all of the stuff discussed here will end up happening, but some of it definitely will.

Da List:
-- New Summing (subtractive, maybe ABS?)
-- "Copy" samples from bank to bank
-- Parameter control adjusts parameter as long as keys are held
-- Level triggered sampling -- threshold adjustable, level indicator?
-- "Finish playing MIDI note regardless of NOTE_OFF". MIDI Play mode adjustment -- IE this would play an entire sample even if a user tapped a pad on a drum trigger.
-- Allow granulated playback to go backwards and also trigger once.
-- Fix granularizing to allow use on trimmed samples
-- Add the ability to MIDI trigger analog clock.
-- Allow individual grains to be played back via MIDI
-- Allow replacement in overdubbing
-- Allow for grains to be random sizes
-- Save edited sample over OG sample, or bounce to the other bank


  • summing is good! level triggered sampling = titties!
  • The summing would be much cooler if all of the options worked with only 1 sample in the bank. I know there's nothing to sum with, but I never bother with the feature because of that. Maybe if there's only one sample, it sums with whitenoise etc..

    Copying samples? Doesn't seem too useful/interesting unless you can route the output of one bank into the input of the other bank. THAT could be cool. As you can capture shorter bits and let them phase against each other and other such bits and bobs.

    Parameter control. As much live control as possible is good. 100%, all the way, A-OK.

    Level triggered sampling is awesome. Threshold control, yup. Maybe something where if there is no loop playing, crossing the threshold CREATES a new loop, but if a loop is playing, it triggers overdub instead, which could be set to replace. Or maybe have the threshold mappable to other things, like FX on/off, speed? etc...

    MIDI, what's that?

    Granular stuff. Yes, all of it, forward, backwards, once, trimmed, trounced, all of it.

    MIDI grains seem cool, if I knew what MIDI was that is.

    Replacement, yum.

    Random grains, yes yes.

    Being able to write edited samples into the 2nd bank, with audio routing from one to the other, would be bitchin. Maybe it could be a user definable mode thing at startup, or a jumper, or something. Wether the 2 banks are parallel (how it is) or series. So you can go with whichever way you want.
  • Good, good. Keep them coming.
    I was out riding my bike and I thought of a couple more things:

    Whatever instrument that's out there that lets you selectively control which bits are on, inverted, or off is cool. I'm copping that.
    It would be cool to be able to impose an envelope (in software) on a sample. You could make your own "drums" with this out of samples. Some sort of ADSR, and maybe automated pitch change at a programmable rate.
    I've also been thinking about the way WTPA handles audio processing and am thinking about changing it such that no processing at all gets done in the ISR, just spitting out bytes from a buffer.
    This might allow more time for complicated calculations, as well as better behavior with two banks running.

    More RAM would also allow deeper granularizing (to 256 divisions, say, with the same kind of WIDE vs RESOLUTE idea as the editing).
  • @Rodrigo--
    Copying samples could be cool I think, since you can independently adjust the pitch. You could totally make Piano Phase. Also, multiplying the two together would mean you were squaring, which does weird pitch stuff that might sound awesome.

    W/r/t summing, there will be some new audio output stuff that only depends on one bank, like ABS.
  • That bit thing seemed cool. It did have an analog filter though....

    That seems like a cool idea, but in a waveshapery sense. Not sure how practical it is being able to access each individual 'bit' like that on the fly. Maybe it's totally awesome when you use it, but to me it seems like one of those super convoluted max/MSP instruments that are amazing, but don't actually DO much/anything.

    An envelope would be amazing if you could apply them to grain slices. Or some rudimentary shapes. If you add the random grain size thing, maybe that could have some pulsewidth control over the time between grains, then maybe some basic square/triangle/ramp envelopes for the individual slices.

    More slices would be awesome. If there's processing power, it would great if you could have the amount of slices be on a log scale, so you could do 2 through 1052 slices from the sweep of the knob. The higher the value gets, the bigger the jumps get. So you can still dial in specific amounts in the low end, but it really opens up towards the top into tiny tiny bits. Though I have to imagine there's a point where the slices turn into straight noise.

    Automated/random/LFO/control stuff would be another angle. Threshold control could be one of several ways you can have things happen based on things that are happening, or left on autopilot. With all these effects/modes/features, there isn't enough fingers/toes/noses to control them all.
    That does open a can o worms as theres lots of ways things can interact and be controlled.

    Maybe having the idea from the hardware post where its more hackable, and having a "control hub" area of the PCB that has a couple different range/shape LFOs including random stuff all coming out of one side, the "send" side, and having a "receive" side that controls start/end/window/speed/direction/etc... stuff. So people can patch whatever into whatever, and it means you only have to create the highway, and not the traffic rules.
  • Yeah that does seem cool with copying. I hadn't considered that. Still seems a bit subtle (and nearly achievable by having the banks in series, with threshold controlled start).
  • Here's my list of desired stuff from the list - in order of importance, highest to lowest!

    -- Parameter control adjusts parameter as long as keys are held
    -- Level triggered sampling -- threshold adjustable, level indicator?
    -- "Copy" samples from bank to bank
    -- New Summing (subtractive, maybe ABS?)
    -- Allow individual grains to be played back via MIDI
    -- Fix granularizing to allow use on trimmed samples
    -- "Finish playing MIDI note regardless of NOTE_OFF". MIDI Play mode adjustment -- IE this would play an entire sample even if a user tapped a pad on a drum trigger.

    Thanks Todd!
  • yeah the software ADSR feature you just mentioned is VERY cool Todd, perhaps it could even have a cyclic mode? and maybe also affect other things besides volume, e.g. bit depth, or ...delay?
  • Thanks again all.

    I really like the idea of having input levels trigger something BESIDES sampling. This seems both do-able and useful. For instance, as the sample gets greater in amplitude, the effective number of bits are reduced. This seems handy for the realtime (bitcrush) mode also.
    Good call.
  • Thinking about the ADSR and currently "dead" bitmath modes.

    What if you could use the 2nd bank, or have some sort of non-sample bank that would just be a waveform generator. This could be a tri wave with adjustable parameters for ringmod type bitmath, it could be an ADSR envelope which, if multiplied with a sample, would give you an enveloped sample, etc. etc.

    Thresholds for realtime mode sound really useful. I think the effects are great currently but if they suffer from anything it's from being able to demolish stuff so completely that the input is effectively lost in the process. If there were a way to use the dynamics of the original sound to modify the effects, I think it would make the sound a lot more responsive/reactive.

    Enveloped grains! Overlapping grains! We're already almost all the way to a "traditional" granular synthesis style sampler!

    This conversation is becoming very interesting. I'm a little surprised how far these suggestions are taking the WTPA from an intuitive & obvious device to a much more complicated and unique instrument. I am all for it, but it either requires of the user a real knowledge of what's going on under the hood or fearless experimentation. People usually like devices like these to be pretty straightforward, and it's going to be a crazy task IMHO to keep these things accessible, as well as keeping the user informed of where the sampler's at. But please, run with this. Make it do what the hardware's capable of, rather than just doing what everyone else expects a sampler to do!
  • Crap, man. I just lost a whole paragraph of stuff. Ah well, here we go again:

    -- Accept MIDI clock IN (and/or voltage trigger IN and/or "tap tempo" IN) to allow for BPM-synced effects
    -->The granulizer effect would benefit most from this (tempo-synced re-arranging of sample slices). The effect would have two parameters: "amount" and "clock division".
    -->"Map slices to keyboard" could be be based on the "clock division".
    -->"Random grain length" could also refer to the MIDI clock source to make random, yet quantized lengths.

    -- Realtime manipulation of the 8 bits. (This has been discussed before.)
    -->Separate midi CCs could control each bit's state.

    -- A basic, non-resonant, high- and low-pass filter (on the input and/or output?) This is nothing like what we're discussing in the other thread; this is just a "rounding off" type of thing. The ol' SP-12/1200 had a separate, statically-filtered outputs, which many of the old school hiphop producers abused to create the sound of the "golden age" of hiphop. (Yes, those were SM2044 analog filters, but it's the static filtering I'm getting at.) I don't know how complex the code would be. Maybe this should be hardware-based.
  • I've been thinking about this a little bit, because I really want the ability to mess with granular slices more. But I was also thinking, if you go to the trouble of making the individual slices midi addressable, why not have the same ability without randomly moving the slices around? Maybe make it simpler, where you split the sample into 8/16/32/64/128 different parts and then being able to play each individual part. In this way, it could be a "fake" way to resample a beat and make it feel like there are more than 2 banks (which, tangentially, reminds me that it would be cool to use the copy part of the new firmware to resample stuff that has been twisted from Bank A into Bank B). I was also thinking that this would be a lot like the max/msp/monome MLR application. It would obviously be monophonic, but possibly duophonic if the same sample was in Bank 2 and Bank 2 was set up the same way.

    Hopefully that makes some type of sense?

    Also, anyone hooked up a monome to control WTPA yet? I've been meaning too, but I keep getting distracted by other things.
  • @glitched --
    All kickass ideas.

    It totally makes sense! And it's not hard to implement, since the granular divisions are already extant.
    And I could totally see how it's useful. It's sort of like an arpeggiator, except based on time and not pitch.
  • Totally like glitched's ideas around accepting and using MIDI clock to do a variety of things.... And also didel's ideas about slicing at standard clock divisions...
  • didel! yes i have a very close to finished monome application to rock the wtpa.

    it's got:

    a top row of buttons for record/overdub/bank select etc functions

    a couple of sliders for fx with some lfo action.

    2 independent step sequencers that you can automagically assign and scramble scales to. basically a scale of your choice is set and you turn on and off the steps as you desire. sounds melodiously good on Microshaft's GS Wavetable Synth.

    all i need to do is hook up the midi shizz and it should be done.

    I also need to figure out what can be used from the new rev 3 firmware additions. i reckon an lfo controlled sample start/end wide cc will be the bomb.

    i haven't had a chance to finish it yet. soon!
  • So this monomome business. Can you do all of what you said with just monome+WTPA, no computer?
  • Rodrigo: Unlikely. A Monome is basically a midi controller that works over USB.
  • It has no standalone mode?
  • nope. computer. it's just a pretty bunch of buttons controlled via usb...
  • Aw shucks.

    Anyone have experience with an Arduinome?
  • yep. easy build. a pain in the ass trying to find someone to make you a plate/nice box for it though..
  • I am building a Max-based app for the WTPA - should be ready soon... Lot's of conveniences !
  • edited April 2010
    i know, just having ideas/wishes is easy...
    ...but how about a time stretching feature, always accessible for every channel separately by just turning of a dedicated pot??
    edit: language
  • Time stretch would be cool. I'm guessing that might be too DSP heavy, as the rest of the stuff the WTPA is more math based.

    But it would be nice.

    is it just a MIDI out tuned to what the WTPA wants to hear?
  • @Rodrigo - yes, basically it facilitates all the cc stuff. And also visualizing where the sample start/end/window are. But it also makes transferring samples into the wtpa easier. You drag and drop a sample onto the app, and then just before it plays it, it sends the cc to start recording. As soon as the sample is done playing, it stops the recording.

    I'm sure there will be other ideas, I just through the existing things together very quickly the other night...

    I'll try to finish it up this weekend.
  • Seems cool indeed. It's been a while since I mess with max/MSP. I used to really love it, but listening to shitty/boring laptop-icians put me off it in a big way. It's not the laptops fault, but damn, I hate seeing it.
  • dnigrin, that sounds amazing re: the sample drop idea...
  • that sample drop idea is so good! i might try and do something similar for my monome app...
  • dnigrin, that sounds like a way to store a sample, generally.
    but what does the application actually do:
    sample again the audio that comes from the WTPA and store it so it will be sampled again by the source or receiving sample data via midi (does the current wtpa firmware provide sending these?).
  • edited April 2010
    - 4 pots to individually adjust the ADSR Envelope

    - An instant 'U-Turn' feature, much like the Yamaha VSS sampling keyboards, which plays the sample forwards right to the end and then plays it in reverse in real time. This can be much more interesting at times than plain reverse. Perhaps make the mid-point of the u-turn adjustable so that the sample can be u-turned at any point and perhaps even have multiple u-turn points within the sample length itself. This would make it more like a tape-reverse feature.

    - A set of traditional cassette-player style operations: Play, Rewind, Fast-Forward, Cue/Review, Slow Motion, Frame-By-Frame... which could be performed with a granulation and pitch/speed control method. Rewind and Fast-Forward would play the sample in either direction at high-speed, Frame-By-Frame would play the sample grain-by-grain, Slow-Motion would be pitch-controlled, Cue/Review could be a feature whereby the user can place 'markers' in the sample to remember loop and u-turn points so that the Cue/Review can take them straight to those points by way of jumping from marker to marker. This would require a Delete button as well as a Create button to add and remove markers.

    - As an alternative to the cassette-player controls, how about a jog/shuttle dial that would allow the user to spin through the sample in a rewind/fast-forward motion, allowing for a real-time 'search' feature to cue up a section in the sample to perform operations on? This would also provide a sort of 'menu-driven' search feature that would allow one to skim through all the samples in memory and find the one needed. This would work well in a live situation.

    - The ability to wiggle, warp, scratch and jitter the sample with a miniature joystick! Mattel have a $30 toy sampler that records up to fourteen 5-second samples and has 8 built-in FX, looping functions, full recording, layering and compositing of loops, etc... (it's set to become the next SK-1). The Mattel sampler has a glowing, flattened ball that you can wiggle, jiggle and turn to jitter and manipulate the currently selected sound loop. Having this ability in WTPA to 'wiggle' a sample in the same fashion with a little joystick would be an awesome feature!

    - A way to load single VST (non-UI) dll files into memory and render them in real time over the effect before, during or after output. I don't know if this is even remotely possible, but I have over a hundred VST effects that do not use an interface or menu driven UI and could be loaded by the firmware to render an effect over the currently playing sample. If it would be possible to load them up with the current sample, then this would effectively turn the WTPA into an acoustic synthesizer... especially when combined with an ADSR Envelope Generator. The ability to use VST effects would also take the load off the system that would normally be used for the rendering of DSP based effects, (Or would it put more load ON? I'm not much of an expert on hardware, sorry!) :)

    - For the quick setting of loop points in a live situation, there could be a tap-tempo button that would allow a user to use a foot-switch or finger-pad to tap the tempo of the loop and the WTPA would count the taps and set the loop point on the fifth silent tap. So the user could tap his foot to the rhythm and follow the tempo... then, when he was ready to record the sample, he could start tapping the switch which would begin recording from the first tap. Then, assuming the DJ was sampling a typical 4/4 beat, the WTPA sampler would follow the 2nd, 3rd and 4th tap and then predict the 5th tap at which point it cuts the sample and sets a loop point. To record longer loops or loops with other tempos would then require a Mode button that would be given the '2/4, 4/4, 4/8, etc' values so that the DJ can select the correct loop tempo in advance and then WTPA would follow the taps and cut/set the loop point on the fifth tap, or ninth tap, etc.

    - An 'Auto Next' sample function where the WTPA could have a series of 4, 8 or 16 buttons that the user can press in sequence, while tapping the tempo, and WTPA will sample the loop across all 8 buttons. So in effect, it is slicing the loop according to each tap the user performs. So the DJ would listen to the tempo, then while following the tempo he will tap all 8 buttons, one after the other in linear sequence and the WTPA will trigger a new sample for each tap into 4, 8 or 16 memory slots. Effectively creating a series of slices, which can then be processed further. The DJ can then press any of the 8 buttons and each button will instantly play back the loop slice that the DJ had recorded between each tap. This Auto Next feature can be played back instantly in real-time and virtually uninterrupted from the original music score.

    - BPM sampling? Perhaps the user can 'dial-in' the BPM of the current music by using a 10-digit numeric keypad which would set a tempo within WTPA. Then, by pressing the record button manually at the beginning of the loop, the WTPA sampler can then count the BPM internally and then stop the sampling when it reaches a certain number of beats. This would work much like gate-sampling, where the unit samples until the user released the record button. In this case, WTPA would count the beats to a certain length and then gate the sample, thus creating a semi-automatic loop. Perhaps this could be extended to programming WTPA to count several BPMs by pressing several different buttons. This could be useful for some applications.

    *Edit: I may not be familiar with all the features of the original WTPA, as I am yet to build one of my own... so forgive me if I have regurgitated any existing features or ideas without having read through the entire forum yet :P
Sign In or Register to comment.