• vixo

    yes that makes sense, i will try that

    but - this may save me a bit of time - is it realistic or feasible for me to be sampling at, say, 20kHz - 100kHz in Pd? I am starting to think maybe i need to simulate this with something else..

    posted in technical issues read more
  • vixo

    Hi, I'm not too familiar with Pd, but I have some experience with embedded programming and I would like to see if I can quickly simulate applications in Pd rather than go to the trouble of programming them on a chip...

    when programming fast, timing crucial patches, what are the limitations of pd? How fast can I compute a real time audio stream? Are there any ways of optimising patches etc.?

    Can you program your own objects (preferably in c)? Presumably an object in c will run quicker than a patch made out of separate objects to do the same thing?

    hints, tips, links to articles MUCH APPRECIATED :)

    posted in technical issues read more
  • vixo

    I modified the patch to sample a sin wave of 500Hz at 20kHz, to check if it was working, changing the output from the list to an audio signal using sig~, drawing that with an array and listening to it. Visually the output doesn't seem to be sampling at a high enough frequency (the original wave and the output look pretty different) and the sound sounds pretty distorted and weird. The patch works fine when banging values through it, but when you try and sample a wave in this way it seems to have problems. Anyone have an idea why?

    shift_register2.pd

    posted in technical issues read more
  • vixo

    @alexandros thanks! that is definitely in the ball park of what i want, but for the purposes of testing I modified it so the value is taken from the phasor and operated by a bang. Could you tell me how I can view all the values in the register at once? So i can see the values ripple through....

    posted in technical issues read more
  • vixo

    the thought of typing 20,000 0's sort of takes my egg off the boil

    posted in technical issues read more
  • vixo

    @seb-harmonik.ar hmm im not sure about that - the thing is, if you take a sample with samphold~ then delay it, then between the time it goes in the delay and comes out, you have no way of altering that time; the delay is fixed. I envisage a shift register, where every clock (or bang, if you like) advances the list along 1. If the list is 10 values, at every bang the 10th value appears at the output and whatever is at the input gets entered as the first value - the queue moves along 1. The difference being that you although you can read at a set frequency - resulting in a fixed delay - you could also read 10 values in at x frequency then read them out at 2x, double the pitch and in half the time.

    @alexandros yes, that sounds like it might do it, do you mean enter a list, split off the last value and append the latest value to the start? What do I have to enter in order to view the output of the append to make sure it works(i am not very experienced with pd and dont know my way around)? Also, can i enter a list of loads of 0's without doing it manually? I was thinking I could have maybe 20,000 values/stages in the list/buffer/shift register.... resulting in a 1 second delay with constant clock of 20kHz

    posted in technical issues read more
  • vixo

    Hi, it's been a while since I've used Pd and I have forgotten a lot of what I learnt, which was... not much. Hopefully someone will be able to help me make a shift register, arbitrary length, operated by a square wave (transition on rising or falling edge).

    I want to take an audio signal and at the rising edge of the square wave the current value will be recorded and latched in the register, then at the next rising edge another value will be sampled and stored, the previous value will move along one value. After x amount of steps, the value appears at the output of the shift register and is listened to as audio.... so if i get a 20KHz square wave, I will get a reasonable quality audio out + a delay (im NOT just trying to make a delay, btw!)

    any suggestions how I might achieve this? MUCH APPRECIATED

    posted in technical issues read more
  • vixo

    Does anyone have any ideas about how I can modify the pitch shifter to accept Hz? Meaning usually you would give it the amount of semitones you want to transpose, but I want to give it the number of Hz to transpose.

    I am fairly new to PD and i don't fully understand how the pitchshifter works but I do have a fairly good grasp of the tape machine it's based on being an analogue person... so be gentle, but not that gentle

    posted in technical issues read more
  • vixo

    thanks for your replies. I can see now that you do indeed need to know what frequency is going in. I do however want to preserve the harmonic content so the SSB modulator wouldn't be suitable but I'll definitely play around with it - I made a hardware one a few years back and it would be interesting to compare

    posted in technical issues read more
  • vixo

    ahh yeah I forgot it isn't included - attached is pitchshifter~.pd which is an object version of the G09.pitchshift.pd audio example

    http://www.pdpatchrepo.info/hurleur/pitchshifter~.pd

    posted in technical issues read more
  • vixo

    Hi, thanks for your reply. I am aware of these objects, however that's not really what I'm getting at...

    The pitchshifter works by reading a sections of an array at higher or lower speed than the normal sample rate. So to double the frequency (an octave) you can read the array at twice the speed. A semitone shift can easily be calculated from this as there are twelve semitones in an octave, but the actual amount of Hz in an octave isn't constant. So how might I modify the object to accept the number of Hz to shift, rather than the number of semitones to shift?

    posted in technical issues read more
  • vixo

    the pitchshifter~ object, I mean...

    posted in technical issues read more
Internal error.

Oops! Looks like something went wrong!