Skip to main content

join

join(
@buffers ## llll (required)
@xfade 0
@xfadecurve 0
@xfadetype 1
@fadeboundaries 0
@timeunit 0
@resamplingfiltersize 11
@resamplingmode 'sinc'
@resamplingpolicy 3
) -> llll

Generates an audio process operation for concatenating one or more buffers to the processed buffer.


Arguments

  • @buffers [llll]: Buffers to concatenate. (required)
  • @xfade [int/float]: Duration of the crossfade, in samples. (default: 0).
  • @xfadecurve [int/float]: Curve parameter for the crossfade. (default: 0).
  • @xfadetype [int]: Cross fade type. (default: 1).
    • 0: Linear
    • 1: Sine
    • 2: Curve
    • 3: S-curve
  • @fadeboundaries [int]: Fade beginning of first buffer and end of last buffer. (default: 0).
    • 0: Off
    • 1: On
  • @timeunit [int]: Time unit. (default: 0).
    • 0: Milliseconds
    • 1: Samples
    • 2: Duration ratio
    • 3: Milliseconds difference
    • 4: Samples difference
  • @resamplingfiltersize [int]: Resampling filter size. (default: 11).
  • @resamplingmode [symbol]: Resampling mode. (default: 'sinc').
    • 'sinc'
    • 'nearest neighbor'
    • 'sample and hold'
    • 'linear'
    • 'quad'
    • 'cubic'
  • @resamplingpolicy [int]: Resampling policy. (default: 3).
    • 0: Don't
    • 1: To lowest
    • 2: To highest
    • 3: To most common
    • 4: To max. current

Output

Join operation [llll]


Usage

join is meant to be used with the process function:

$buffer = importaudio('singing.wav'); ## input buffer
$op = join(
@buffers for $i in 1...10 collect cycle($i * 55, 100) ## buffers to join
); ## processing operation
$buffer = $buffer.process($op); ## apply processing
$buffer.view('after join process')