The problem: Bidirectional looping seems not to work for most samples. I seem to get ordinary forward looping. It's particularly noticeable on the ride cymbal samples around C4, because they have a flanging effect applied to them and it's very obvious upon listening that the sample is being looped only in the forward direction.

linuxsampler loop size needs to be in around 32000 for bidirectional loopto kick in. You can make adjustments before compiling if you're building your own.Read here:https://www.linuxsampler.org/debian.html

while building instruments in gigedit, If my loop sizes are less than 32000 (usually percussions or hits),I'll open the sample in audacity, copy and paste making the sample twice as long then reversing the pasted part.I'll set the loop direction in gigedit to foward. You'll never hear the difference .

plusminus wrote:linuxsampler loop size needs to be in around 32000 for bidirectional loopto kick in.

OK, thanks!

When you say that it has to be around 32000 before looping kicks in, do you mean that the total sample length has to be >= 32000, or do you mean that the loop start point has to be at >= 32000 samples?

What's the rationale for having that minimum length? I've developed a few samplers in my time via tools like Pure Data and it seems rather odd that there'd be a minimum length at all...

plusminus wrote:while building instruments in gigedit, If my loop sizes are less than 32000 (usually percussions or hits),I'll open the sample in audacity, copy and paste making the sample twice as long then reversing the pasted part.I'll set the loop direction in gigedit to foward. You'll never hear the difference .

io7m wrote:I've just realized you said "loop size", as in the number of samples between the loop start and loop end points.

Sorry, i should of emphasized on that .I also meant to say the loop size samples have to be around 32000 or greater (not in or around) for loop size to kick in.Why this is?... i dont know. maybe sample caching. I halved the number in "--enable-preload-samples=65536" during compile (going back to the link in my last post) allowing for smaller loop size and bidirectional looping, but with that came stream errors. I know i can find a sweet spot but I find experimenting (in audacity) by lengthening the sample; e.g. copy,paste and reversing the later half, produces interesting results with forward or bidirectional looping.

What you want to be able to say is "for each file f that has a name ending in .wav, run loop.sh on f and put the output into a directory called samples_extended with the same filename as the original". You can translate that statement almost word for word into shell script: