Welcome to %s forums

BrainModular Users Forum

Login Register

sampler module does not play sample until end pos

I need help on a Patch
Post Reply
trik
Member
Posts: 29
Contact:

Unread post by trik » 01 Apr 2013, 21:04

the sampler does not play the sample until it reaches the -end pos-. instead it stops between 0.21% and 0.23% early.
i would e.g. play a sample that goes from -start pos- 11% to -end pos- 25%. when i play the sample it stops at -pos- 24,79%.
is there any solution for that? or is there a way to calculate the precise end position so i can add it to the -end pos- value?

r.erorr
Member
Posts: 405
Location: Latvia
Contact:

Unread post by r.erorr » 02 Apr 2013, 00:50

are you using very short samples? for example if you have only few millisecond long drum kit and you want play few % very precisely, I don't think there is solution. it is extreme men, but maybe I'm wrong. . .

percuson
Member
Posts: 105
Location: Leipzig, Germany
Contact:

Unread post by percuson » 02 Apr 2013, 01:04

Hi trik!
Does it really stop before it reaches the end, or is it only the display that doesn't count until the end? The graphics in usine aren't calculated as fast as audio (for better performance). So maybe it's only the display that doesn't count until the end...
Relating your other question:
As far as I know, there is no other way to calculate the position (e.g. millisecons or samples). There is only the %-option.
Maybe Senso already implemented this into hollyhock... I sometimes also miss this option.

trik
Member
Posts: 29
Contact:

Unread post by trik » 02 Apr 2013, 19:36

the sample never plays to the -end pos-.
i worked around it by setting the -end pos- to 100% and then triggering the -stop- when -pos- is at the desired end position. at the end, however, it plays only to 99,9%, not 100%.

percuson
Member
Posts: 105
Location: Leipzig, Germany
Contact:

Unread post by percuson » 03 Apr 2013, 03:02

I've made a longer test to check it out:

- first I set the plaback to "one shot" and recorded the output with another sampler module (which means end pos = 100%)
I loaded both, the original and the recorded file into Samplitude, to compare them.
The only difference between the two wave forms was a delay of 128 samples of the recorded file. The ending was looking exactly the same.

- I tried this also with an end pos of 50 %
Here the result was almost perfect. The original sample length was 4079 samples.
The recorded sample length was 2038 samples (+ 128 samples delay)
4079 / 2 = 2039,5
Since you cannot record half samples you have to decide, when to stop playing. And in this case, Usine did stop 1 or 2 samples too early.
In milliseconds this would be 0,0227 or 0,0454 milliseconds... noone can hear this.

When I connect a fader to the sampler that plays the original (set to end pos = 100%), the fader shows 97,27872 % when the player
stopped.
4079 x 97,27872 % = 3967,9989888 o.k., let's say 3968
3968 / 128 (bloc size) = 31 ... and usine always works in blocs...
4079 / 128 = 31,8671875
The fader is triggered every 128 samples. So the last result it gets before playing ends, is 97,27872 % (after playing 31 blocs)
Usine does actuallay play untill the end, but the fader doesn't get the information about the 100%.
Playing already stopped, when the fader is "listening" for the next position (This would be at bloc 32 or at 100,42 %).
But it gets no answer, because playing already stopped at 100%.

So as a result I can say. Don't trust the display. Usine does what it is said to do!

Post Reply

Who is online

Users browsing this forum: No registered users and 63 guests