Free a sample on the synth server

sample_free  path (string)

Frees the memory and resources consumed by loading the sample on the server. Subsequent calls to sample and friends will re-load the sample on the server.

You may also specify the same set of source and filter pre-args available to sample itself. sample_free will then free all matching samples. See sample’s docs for more information.

Introduced in v2.9

Examples

# Example 1

sample :loop_amen
sleep 2
sample :loop_amen
sleep 2
sample_free :loop_amen
sample :loop_amen



# The Amen break is now loaded into memory and played
 
# The Amen break is not loaded but played from memory
 
# The Amen break is freed from memory
# the Amen break is re-loaded and played



# Example 2

puts sample_info(:loop_amen).to_i
puts sample_info(:loop_amen).to_i
                                 
sample_free :loop_amen
puts sample_info(:loop_amen).to_i



# This returns the buffer id of the sample i.e. 1
# The buffer id remains constant whilst the sample
# is loaded in memory
 
# The Amen break is re-loaded and gets a *new* id.



# Example 3

sample :loop_amen
sample :ambi_lunar_land
sleep 2
sample_free :loop_amen, :ambi_lunar_land
sample :loop_amen                       
sample :ambi_lunar_land                 



 
 
 
 
# re-loads and plays amen
# re-loads and plays lunar land



# Example 4


dir = "/path/to/sample/dir"
sample_free dir
sample_free dir, 1
sample_free dir, :foo
sample_free dir, /[Bb]ar/



# Using source and filter pre-args
 
# frees any loaded samples in "/path/to/sample/dir"
# frees sample with index 1 in "/path/to/sample/dir"
# frees sample with name "foo" in "/path/to/sample/dir"
# frees sample which matches regex /[Bb]ar/ in "/path/to/sample/dir"