-
Polaris
Speeding up [phasor~] made no difference whatsoever.
I have few versions of PD on my computer. The one I'm using right now is 43.4 extended.
I tried entering batch mode in two different ways. First, I tried entering and saving it as a startup flag through preferences. Then, after that failed to produce any results, I tried entering -batch in the console. Apparently, neither attempt worked, because the GUI remained intact in both cases.
I need to be able to see my patch, so batch mode does not sound appealing.
I'm not aware of any control domain replacement for [vd~]. Perhaps you or someone else could point me in the right direction.
Like I said, I'm trying to pitch shift a sample from one array and save it to a second array, both without delay.
-
Polaris
Okay, I think I may have managed to start the patch up in batch mode. But doing so broke nearly every object, turning them all into boxes with red outlines.
-
Polaris
Running Puredata with the -batch flag doesn't appear to have done anything whatsoever to speed up the playback of tabread4~.
EDIT: Actually, the problem might be that Puredata is refusing to save my startup preferences. How can I fix this?
-
Polaris
I'm trying to figure out how to perform a pitch shift on an array and get the results to another array in as instantaneous a fashion as possible. What I don't want to do is play through the input array in real time, which means that that the objects and patches included in Puredata that are designed to perform pitch shifts are largely useless to me. They play through the file too slowly. As I understand it, one way to accomplish what I'm trying to do is 1) do a FFT, 2) shift the frequencies in the resulting array by a factor, and 3) do an IFFT on the resulting array. What I'm struggling with is the second step. Attempting to reposition the spectrum results in some frequencies landing in positions between bins, because, when calculating the shift in frequencies, I'm multiplying by a decimal rather than a whole number. If someone could tell me how to shift the pitch of a sample and get the result to an array it would be greatly appreciated.
-
Polaris
Thank you for your reply. In fact, the table sizes are correct. The problem is that it takes minutes for it to calculate the cross correlation. So I'm wondering if there's some other, faster way to do it.
-
Polaris
I figured out that the problem arises when the tables exceed a certain size. The tables I was trying to correlate were rather large. So my question now is: is there some other way to efficiently perform a correlation between a pair of large tables, meaning tables with 400000 and 800000 indexes? Ideally, I would like to perform as many correlations per second as possible. I'm not sure if that's really going to be computationally feasible, though, unless I greatly reduce the size of the tables. Some help would be appreciated.
-
Polaris
Actually, I just realized it isn't working in the other patch, either. So basically, how do I make it work? It works in the help patch, but appears to do nothing outside of it.
-
Polaris
For some reason I can't use iem_tab's cross correlation object in one particular patch--it is completely unresponsive. This is in spite of the fact that the patch in question is almost identical to another patch in which cross correlation works. The one change concerning iem_tab is that a different set of tables are being used. The tables in question are the same sizes in the same order as the ones in the working patch and they are populated, so it makes no sense to me whatsoever.
-
Polaris
So all I have to to do is open the patch in a text editor and paste those codes into the right spots? That will work excellently. Thank you for coming up with that solution. (I just wish there was an easy way to format the text. As it is, I have to insert a semicolon when a line ends and hope that I've positioned it in a way that avoids the appearance of lines ending at different horizontal positions.)
-
Polaris
Here is a file illustrating my situation: Untitled-1.pd As you can see, the comma gets a slash added to it when it arrives at the canvas as a label.
The text doesn't need to have anything done to it once it arrives at the canvas or whatever object is capable of displaying it. The only thing it needs to be able to do is display a different block of text when prompted to do so.