sfplay~ buffer-size explanations

Jan 10, 2013 at 10:22pm

sfplay~ buffer-size explanations

Dear forum,
I don’t really understand the buffer-size argument of the sfplay~ object.

1 – When do we need to change this argument?
Is it only when we want to “seek” from the hard drive at high speeds like in the sfplay~’s help?

2 – Does it make any difference when we want to sample accurately trigger cues?

3 – In the help file under the tab “more_features” it is said that the buffer size is set high so we can “playback from disk at high speeds”. This same sfplay~ in the help file has a buffer-size set to 60000. But the reference tells us that the default value is 120960 and “disk buffer sizes must be specified as multiples of 20160″.
So why 60000 would be a high value when the default is 120960? I don’t understand.
I am not very good in maths, but it sounds also 60000 is not a multiple of 20160, right?

Could someone give me more infos about that?
Thanks a lot!
Florent

#66002
Jan 10, 2013 at 11:53pm

If you aren’t having problems with sfplay~, then you can ignore this feature.

The idea is this: when you open a file in sfplay, a certain amount is buffered into memory. When you tell sfplay to play, it quickly starts playing the buffered sound from memory, and queries the hard drive to retrieve the rest of the soundfile. If it runs out of sound in memory before the hard drive returns more data, then there will be a glitch of some sort. If you have a multichannel sound file, then the default memory represents a shorter amount of time.

The helpfile is a bit confusing: that tab does set the memory to be smaller than the default and doesn’t follow the guidelines from the other tab.

#237648
Jan 11, 2013 at 12:51am

Thanks a lot for your explanation. This is definitely very useful.

I have issues with synchronizing sfplay~ and a metronome, but not with sfplay~ itself; I was wondering if changing this feature could help my timing issues. I guess not.

I agree, the helpfile is confusing.
Thanks

#237649
Jan 11, 2013 at 1:11am

Without seeing your patch, my guess is that you want to be triggering things in the signal domain.

#237650
Jan 11, 2013 at 3:00am

thanks
this is what I am trying to do

#237651

You must be logged in to reply to this topic.