It is not easy for me to explain why I need maximum precision, either because of the complexity that would be explained to me and because my English is not entirely good. Although if I can try to explain a simple example (although it is far from the real purpose)
Suppose I have 2 audio samples. The first sample lasts exactly 1000ms (44100 samples) and I loop it every 1000ms.
If I had another exactly 125ms sample and looped it back at its exact time (125ms) alongside the first 1000ms sample, the beat would be perfectly in sync since it's the exact eighth part of 1000.
On the other hand, if I can only get a sample of 5512 samples (124.988..ms) and I loop it along with the 1000ms sample, as time progresses and the 124.988 sample is repeated more times ... ms, the desynchronization of time will increase ... (rhythm)
I know you can tell me that I can solve the "desynchronization" by repeating the sample every exact 125ms, but I have already said that this is just a simple example to try to explain and does not address the real problem.
As I have understood from your explanations, that sometimes it will be impossible for me to record samples to the exact duration that you want, but I can reproduce them within Pd exactly with the desired duration using the examples that you have given me. What invites me to think about the idea of not using any other means than Pd to get closer to my purpose, even if it takes more time and effort at first; But it is what I will do ..
t was impossible for me to record with [writesf ~] respecting the actual duration. (I can't even get to record 44100 fair samples)
I don't know if I use [block ~] incorrectly, but at the moment I have only got a real precision, using soundfiler (although this limits me since the table only accepts whole samples as we have already spoken ..) So, until I get that [writesf ~] record correctly, it is useless for me to use [tabread4 ~] or [tabplay ~] ...
By changing the frequency to 88200, (both Pd's and my interface's) and trying to draw waves on a table with [tabwrite ~], for some unknown reason, Pd crashes me ..
So I will leave it for the moment and I will return to the problem again later.
Thank you!! Greetings!!
I still have the same problem recording. I cannot achieve maximum precision with PD.
If I record the contents of a table containing a 1Hz sine wave, with a table size of 44100 samples, [soundfiler] records the 44100 samples perfectly (1000ms).
But if I want to record an 8Hz wave (5512.5 samples) (125ms), the table will only accept 5512 samples, (124.988..ms)
This time difference may seem insignificant, but for my work it is becoming a horror.
You have advised me to use [writesf ~] in an subpatch with [block ~ 1] but I don't know exactly how to do it. (Sometimes I learn better with an image than in writing) and I have not seen clear examples of [block ~] in the help file.
Any ideas? Thank you!!
When I use [writesf ~] and I send "stop" with a low delay time (as in the photo) it doesn't record me respecting the indicated time. (about 3.6 ms ahead) If the sample should last 35.19274376, the end result is 34.82993197 ...
This becomes a serious problem for me because I cannot work the way I would like.
If I record the contents of a table with [soundfiler], the problem disappears, but I have not been able to record at 24bit (as with [writesf ~])
I would like them to tell me what I am doing wrong and how I could solve it.