hello,
I don't think your probem is with wrap~.

if you create a phasor at 25x120 = 3000Hz, using a 44100KHz samplerate, you 
will notice that all ramp have different amplitude.
This is because a ramp have 4100/3000 sample = 14.7 point for each ramp.
if you switch to 48KHz, you will have 16 sample per ramp, and all ramp will 
have the same amplitude.
This also create phase isue.

So, I gueess you should use a fps that is compatible with your samplerate.

cheers
c





Le 26/04/2018 à 21:23, Derek Holzer a écrit :
Dear Pd friends,

can you help me to understand [wrap~] better? My purpose is to create a "video 
raster" (using audio signals at a high sample rate) of X and Y values to read luma 
information from [pix_data].

To do this, I have one [phasor~] creating the vertical ramp, at 25 Hz (= 25 
frames per second).

Then I require another series of ramps from 0 to 1 for the horizontal lines. If 
I want 120 lines per frame, I do it like this:

[phasor~ 25]
|
[*~ 120]
|
[wrap~]

This gives me 120 ramps for every one cycle of [phasor~]. So far so good.

However, the ramps I get are not equal in amplitude, there are tiny variations 
which cause distortions in the raster, and which I can see when I plot the 
ramps to a array with [tabwrite~], and which I can see as a jagged edge if I 
plot my raster out on an XY oscilloscope or similar.

Also, the ramps have some phase issues. 25 frames with 120 lines per frame works just 
fine, but as I adjust the frame rate or the number of lines per frame, the image data 
which I get from [pix_data] seems to "rotate" out of the frame and wrap around 
to the other side. Only multiples of 25/120 give me image date which is centered in the 
frame of the video or image being analyzed by [pix_data].

I would be happy to make a video of this if you like, but I wonder if someone 
with better DSP knowledge than me might have some suggestions.

You can see the patch in question here:

https://github.com/macumbista/vectorsynthesis/blob/master/V-scanprocessor-help.pd

(Requires checking out entire Vector Synthesis library. Also requires PD >= 
0.47 and Gem if you want all of it to work. Open the [V-scanprocessor] object to 
see the [phasor~] and [wrap~] configuration.)

Andy Farnell suggested that the amplitude differences in the ramps may be a 
cumulative 32 bit precision error, but that would not explain the phase issue. 
I also tried using sample-rate [metro] and [line~] objects to create the 
horizontal lines but this was even less precise.

Thank you for your kind attention!
Derek

_______________________________________________
Pd-list@lists.iem.at mailing list
UNSUBSCRIBE and account-management -> 
https://lists.puredata.info/listinfo/pd-list

Reply via email to