csound-expression-0.3.3: Csound combinator library

Safe HaskellSafe-Infered

CsoundExpr.Opcodes.Siggen.Sample

Description

Sample Playback

Synopsis

Documentation

bbcutm :: [Irate] -> Arate -> Irate -> Irate -> Irate -> Irate -> Irate -> ArateSource

  • opcode : bbcutm
  • syntax :
   a1 bbcutm asource, ibps, isubdiv, ibarlength, iphrasebars, inumrepeats 
       [, istutterspeed] [, istutterchance] [, ienvchoice ]
  • description :

The BreakBeat Cutter automatically generates cut-ups of a source audio stream in the style of drum and bass/jungle breakbeat manipulations. There are two versions, for mono (bbcutm) or stereo (bbcuts) sources. Whilst originally based on breakbeat cutting, the opcode can be applied to any type of source audio.

bbcuts :: [Irate] -> Arate -> Arate -> Irate -> Irate -> Irate -> Irate -> Irate -> MultiOutSource

  • opcode : bbcuts
  • syntax :
   a1,a2 bbcuts asource1, asource2, ibps, isubdiv, ibarlength, iphrasebars, 
       inumrepeats [, istutterspeed] [, istutterchance] [, ienvchoice]
  • description :

The BreakBeat Cutter automatically generates cut-ups of a source audio stream in the style of drum and bass/jungle breakbeat manipulations. There are two versions, for mono (bbcutm) or stereo (bbcuts) sources. Whilst originally based on breakbeat cutting, the opcode can be applied to any type of source audio.

flooper :: (K k0, K k1) => k0 -> k1 -> Irate -> Irate -> Irate -> Irate -> ArateSource

  • opcode : flooper
  • syntax :
   asig flooper kamp, kpitch, istart, idur, ifad, ifn
  • description :

This opcode reads audio from a function table and plays it back in a loop with user-defined start time, duration and crossfade time. It also allows the pitch of the loop to be controlled, including reversed playback. It accepts non-power-of-two tables, such as deferred-allocation GEN01 tables.

flooper2 :: (K k0, K k1, K k2, K k3, K k4) => [Irate] -> k0 -> k1 -> k2 -> k3 -> k4 -> Irate -> ArateSource

  • opcode : flooper2
  • syntax :
   asig flooper2 kamp, kpitch, kloopstart, kloopend, kcrossfade, ifn 
       [, istart, imode, ifenv, iskip]
  • description :

This opcode implements a crossfading looper with variable loop parameters and three looping modes, optionally using a table for its crossfade shape. It accepts non-power-of-two tables for its source sounds, such as deferred-allocation GEN01 tables.

loscil :: (X x0, K k0) => [Irate] -> x0 -> k0 -> Irate -> MultiOutSource

  • opcode : loscil
  • syntax :
   ar1 [,ar2] loscil xamp, kcps, ifn [, ibas] [, imod1] [, ibeg1] [, iend1] 
       [, imod2] [, ibeg2] [, iend2]
  • description :

Read sampled sound (mono or stereo) from a table, with optional sustain and release looping.

loscil3 :: (X x0, K k0) => [Irate] -> x0 -> k0 -> Irate -> MultiOutSource

  • opcode : loscil3
  • syntax :
   ar1 [,ar2] loscil3 xamp, kcps, ifn [, ibas] [, imod1] [, ibeg1] [, iend1] 
       [, imod2] [, ibeg2] [, iend2]
  • description :

Read sampled sound (mono or stereo) from a table, with optional sustain and release looping, using cubic interpolation.

loscilx :: (X x0, K k0) => [Irate] -> x0 -> k0 -> Irate -> MultiOutSource

  • opcode : loscilx
  • syntax :
   ar1 [, ar2, ar3, ar4, ar5, ar6, ar7, ar8, ar9, ar10, ar11, ar12, ar13, ar14, 
       ar15, ar16] loscilx xamp, kcps, ifn 
       [, iwsize, ibas, istrt, imod1, ibeg1, iend1]
  • description :

This file is currently a stub, but the syntax should be correct.

lphasor :: X x0 => [Irate] -> x0 -> ArateSource

  • opcode : lphasor
  • syntax :
   ares lphasor xtrns [, ilps] [, ilpe] [, imode] [, istrt] [, istor]
  • description :

This opcode can be used to generate table index for sample playback (e.g. tablexkt).

lposcil :: (K k0, K k1, K k2, K k3) => [Irate] -> k0 -> k1 -> k2 -> k3 -> Irate -> ArateSource

  • opcode : lposcil
  • syntax :
   ares lposcil kamp, kfreqratio, kloop, kend, ifn [, iphs]
  • description :

Read sampled sound (mono or stereo) from a table, with optional sustain and release looping, and high precision.

lposcil3 :: (K k0, K k1, K k2, K k3) => [Irate] -> k0 -> k1 -> k2 -> k3 -> Irate -> ArateSource

  • opcode : lposcil3
  • syntax :
   ares lposcil3 kamp, kfreqratio, kloop, kend, ifn [, iphs]
  • description :

Read sampled sound (mono or stereo) from a table, with optional sustain and release looping, and high precision. lposcil3 uses cubic interpolation.

lposcila :: (K k0, K k1, K k2) => [Irate] -> Arate -> k0 -> k1 -> k2 -> Irate -> ArateSource

  • opcode : lposcila
  • syntax :
   ar lposcila aamp, kfreqratio, kloop, kend, ift [,iphs]
  • description :

lposcila reads sampled sound from a table with optional looping and high precision.

lposcilsa :: (K k0, K k1, K k2) => [Irate] -> Arate -> k0 -> k1 -> k2 -> Irate -> MultiOutSource

  • opcode : lposcilsa
  • syntax :
   ar1, ar2 lposcilsa aamp, kfreqratio, kloop, kend, ift [,iphs]
  • description :

lposcilsa reads stereo sampled sound from a table with optional looping and high precision.

lposcilsa2 :: (K k0, K k1, K k2) => [Irate] -> Arate -> k0 -> k1 -> k2 -> Irate -> MultiOutSource

  • opcode : lposcilsa2
  • syntax :
   ar1, ar2 lposcilsa2 aamp, kfreqratio, kloop, kend, ift [,iphs]
  • description :

lposcilsa2 reads stereo sampled sound from a table with optional looping and high precision.

sndloop :: (K k0, K k1) => Arate -> k0 -> k1 -> Irate -> Irate -> (Arate, Krate)Source

  • opcode : sndloop
  • syntax :
   asig, krec sndloop ain, kpitch, ktrig, idur, ifad
  • description :

This opcode records input audio and plays it back in a loop with user-defined duration and crossfade time. It also allows the pitch of the loop to be controlled, including reversed playback.

waveset :: K k0 => [Irate] -> Arate -> k0 -> ArateSource

  • opcode : waveset
  • syntax :
   ares waveset ain, krep [, ilen]
  • description :

A simple time stretch by repeating cycles.

fluidAllOut :: MultiOutSource

  • opcode : fluidAllOut
  • syntax :
   aleft, aright fluidAllOut
  • description :

Collects all audio from all Fluidsynth engines in a performance

fluidCCi :: Irate -> Irate -> Irate -> Irate -> SignalOutSource

  • opcode : fluidCCi
  • syntax :
   fluidCCi iEngineNumber, iChannelNumber, iControllerNumber, iValue
  • description :

Sends a MIDI controller data (MIDI controller number and value to use) message to a fluid engine by number on the user specified MIDI channel number.

fluidCCk :: K k0 => Irate -> Irate -> Irate -> k0 -> SignalOutSource

  • opcode : fluidCCk
  • syntax :
   fluidCCk iEngineNumber, iChannelNumber, iControllerNumber, kValue
  • description :

Sends a MIDI controller data (MIDI controller number and value to use) message to a fluid engine by number on the user specified MIDI channel number.

fluidControl :: (K k0, K k1, K k2, K k3) => Irate -> k0 -> k1 -> k2 -> k3 -> SignalOutSource

  • opcode : fluidControl
  • syntax :
   fluidControl ienginenum, kstatus, kchannel, kdata1, kdata2
  • description :

The fluid opcodes provide a simple Csound opcode wrapper around Peter Hanappe's Fluidsynth SoundFont2 synthesizer. This implementation accepts any MIDI note on, note off, controller, pitch bend, or program change message at k-rate. Maximum polyphony is 4096 simultaneously sounding voices. Any number of SoundFonts may be loaded and played simultaneously.

fluidEngine :: [Irate] -> IrateSource

  • opcode : fluidEngine
  • syntax :
   ienginenum fluidEngine [iReverbEnabled] [, iChorusEnabled] [,iNumChannels] [, iPolyphony]
  • description :

Instantiates a fluidsynth engine, and returns ienginenum to identify the engine. ienginenum is passed to other other opcodes for loading and playing SoundFonts and gathering the generated sound.

fluidLoad :: [Irate] -> String -> Irate -> IrateSource

  • opcode : fluidLoad
  • syntax :
   isfnum fluidLoad soundfont, ienginenum[, ilistpresets]
  • description :

Loads a SoundFont into an instance of a fluidEngine, optionally listing banks and presets for SoundFont.

fluidNote :: Irate -> Irate -> Irate -> Irate -> SignalOutSource

  • opcode : fluidNote
  • syntax :
   fluidNote ienginenum, ichannelnum, imidikey, imidivel
  • description :

Plays a note at imidikey pitch and imidivel velocity on ichannelnum channel of number ienginenum fluidEngine.

fluidOut :: Irate -> MultiOutSource

  • opcode : fluidOut
  • syntax :
   aleft, aright fluidOut ienginenum
  • description :

Outputs the sound from a fluidEngine.

fluidProgramSelect :: Irate -> Irate -> Irate -> Irate -> Irate -> SignalOutSource

  • opcode : fluidProgramSelect
  • syntax :
   fluidProgramSelect ienginenum, ichannelnum, isfnum, ibanknum, ipresetnum
  • description :

Assigns a preset from a SoundFont to a channel on a fluidEngine.

fluidSetInterpMethod :: Irate -> Irate -> Irate -> SignalOutSource

  • opcode : fluidSetInterpMethod
  • syntax :
   fluidSetInterpMethod ienginenum, ichannelnum, iInterpMethod
  • description :

Set interpolation method for channel in Fluid Engine. Lower order interpolation methods will render faster at lower fidelity while higher order interpolation methods will render slower at higher fidelity. Default interpolation for a channel is 4th order interpolation.

sfilist :: Irate -> SignalOutSource

  • opcode : sfilist
  • syntax :
   sfilist ifilhandle
  • description :

Prints a list of all instruments of a previously loaded SoundFont2 (SF2) sample file. These opcodes allow management the sample-structure of SF2 files. In order to understand the usage of these opcodes, the user must have some knowledge of the SF2 format, so a brief description of this format can be found in the SoundFont2 File Format Appendix.

sfinstr :: (X x0, X x1) => [Irate] -> Irate -> Irate -> x0 -> x1 -> Irate -> Irate -> MultiOutSource

  • opcode : sfinstr
  • syntax :
   ar1, ar2 sfinstr ivel, inotenum, xamp, xfreq, instrnum, ifilhandle 
       [, iflag] [, ioffset]
  • description :

Plays a SoundFont2 (SF2) sample instrument, generating a stereo sound. These opcodes allow management the sample-structure of SF2 files. In order to understand the usage of these opcodes, the user must have some knowledge of the SF2 format, so a brief description of this format can be found in the SoundFont2 File Format Appendix.

sfinstr3 :: (X x0, X x1) => [Irate] -> Irate -> Irate -> x0 -> x1 -> Irate -> Irate -> MultiOutSource

  • opcode : sfinstr3
  • syntax :
   ar1, ar2 sfinstr3 ivel, inotenum, xamp, xfreq, instrnum, ifilhandle 
       [, iflag] [, ioffset]
  • description :

Plays a SoundFont2 (SF2) sample instrument, generating a stereo sound with cubic interpolation. These opcodes allow management the sample-structure of SF2 files. In order to understand the usage of these opcodes, the user must have some knowledge of the SF2 format, so a brief description of this format can be found in the SoundFont2 File Format Appendix.

sfinstr3m :: (X x0, X x1) => [Irate] -> Irate -> Irate -> x0 -> x1 -> Irate -> Irate -> ArateSource

  • opcode : sfinstr3m
  • syntax :
   ares sfinstr3m ivel, inotenum, xamp, xfreq, instrnum, ifilhandle 
       [, iflag] [, ioffset]
  • description :

Plays a SoundFont2 (SF2) sample instrument, generating a mono sound with cubic interpolation. These opcodes allow management the sample-structure of SF2 files. In order to understand the usage of these opcodes, the user must have some knowledge of the SF2 format, so a brief description of this format can be found in the SoundFont2 File Format Appendix.

sfinstrm :: (X x0, X x1) => [Irate] -> Irate -> Irate -> x0 -> x1 -> Irate -> Irate -> ArateSource

  • opcode : sfinstrm
  • syntax :
   ares sfinstrm ivel, inotenum, xamp, xfreq, instrnum, ifilhandle 
       [, iflag] [, ioffset]
  • description :

Plays a SoundFont2 (SF2) sample instrument, generating a mono sound. These opcodes allow management the sample-structure of SF2 files. In order to understand the usage of these opcodes, the user must have some knowledge of the SF2 format, so a brief description of this format can be found in the SoundFont2 File Format Appendix.

sfload :: String -> IrateSource

  • opcode : sfload
  • syntax :
   ir sfload "filename"
  • description :

Loads an entire SoundFont2 (SF2) sample file into memory. These opcodes allow management the sample-structure of SF2 files. In order to understand the usage of these opcodes, the user must have some knowledge of the SF2 format, so a brief description of this format can be found in the SoundFont2 File Format Appendix.

sfpassign :: [Irate] -> Irate -> Irate -> SignalOutSource

  • opcode : sfpassign
  • syntax :
   sfpassign istartindex, ifilhandle[, imsgs]
  • description :

Assigns all presets of a previously loaded SoundFont2 (SF2) sample file to a sequence of progressive index numbers. These opcodes allow management the sample-structure of SF2 files. In order to understand the usage of these opcodes, the user must have some knowledge of the SF2 format, so a brief description of this format can be found in the SoundFont2 File Format Appendix.

sfplay :: (X x0, X x1) => [Irate] -> Irate -> Irate -> x0 -> x1 -> Irate -> MultiOutSource

  • opcode : sfplay
  • syntax :
   ar1, ar2 sfplay ivel, inotenum, xamp, xfreq, ipreindex [, iflag] [, ioffset] [, ienv]
  • description :

Plays a SoundFont2 (SF2) sample preset, generating a stereo sound. These opcodes allow management the sample-structure of SF2 files. In order to understand the usage of these opcodes, the user must have some knowledge of the SF2 format, so a brief description of this format can be found in the SoundFont2 File Format Appendix.

sfplay3 :: (X x0, X x1) => [Irate] -> Irate -> Irate -> x0 -> x1 -> Irate -> MultiOutSource

  • opcode : sfplay3
  • syntax :
   ar1, ar2 sfplay3 ivel, inotenum, xamp, xfreq, ipreindex [, iflag] [, ioffset] [, ienv]
  • description :

Plays a SoundFont2 (SF2) sample preset, generating a stereo sound with cubic interpolation. These opcodes allow management the sample-structure of SF2 files. In order to understand the usage of these opcodes, the user must have some knowledge of the SF2 format, so a brief description of this format can be found in the SoundFont2 File Format Appendix.

sfplay3m :: (X x0, X x1) => [Irate] -> Irate -> Irate -> x0 -> x1 -> Irate -> ArateSource

  • opcode : sfplay3m
  • syntax :
   ares sfplay3m ivel, inotenum, xamp, xfreq, ipreindex [, iflag] [, ioffset] [, ienv]
  • description :

Plays a SoundFont2 (SF2) sample preset, generating a mono sound with cubic interpolation. These opcodes allow management the sample-structure of SF2 files. In order to understand the usage of these opcodes, the user must have some knowledge of the SF2 format, so a brief description of this format can be found in the SoundFont2 File Format Appendix.

sfplaym :: (X x0, X x1) => [Irate] -> Irate -> Irate -> x0 -> x1 -> Irate -> ArateSource

  • opcode : sfplaym
  • syntax :
   ares sfplaym ivel, inotenum, xamp, xfreq, ipreindex [, iflag] [, ioffset] [, ienv]
  • description :

Plays a SoundFont2 (SF2) sample preset, generating a mono sound. These opcodes allow management the sample-structure of SF2 files. In order to understand the usage of these opcodes, the user must have some knowledge of the SF2 format, so a brief description of this format can be found in the SoundFont2 File Format Appendix.

sflooper :: (K k0, K k1, K k2, K k3, K k4) => [Irate] -> Irate -> Irate -> k0 -> k1 -> Irate -> k2 -> k3 -> k4 -> Irate -> MultiOutSource

  • opcode : sflooper
  • syntax :
   ar1, ar2 sflooper ivel, inotenum, kamp, kpitch, ipreindex, kloopstart, kloopend, kcrossfade, ifn 
       [, istart, imode, ifenv, iskip]
  • description :

Plays a SoundFont2 (SF2) sample preset, generating a stereo sound, similarly to sfplay. Unlike that opcode, though, it ignores the looping points set in the SF2 file and substitutes them for a user-defined crossfade loop. It is a cross between sfplay and flooper2.

sfplist :: Irate -> SignalOutSource

  • opcode : sfplist
  • syntax :
   sfplist ifilhandle
  • description :

Prints a list of all presets of a previously loaded SoundFont2 (SF2) sample file. These opcodes allow management the sample-structure of SF2 files. In order to understand the usage of these opcodes, the user must have some knowledge of the SF2 format, so a brief description of this format can be found in the SoundFont2 File Format Appendix.

sfpreset :: Irate -> Irate -> Irate -> Irate -> IrateSource

  • opcode : sfpreset
  • syntax :
   ir sfpreset iprog, ibank, ifilhandle, ipreindex
  • description :

Assigns an existing preset of a previously loaded SoundFont2 (SF2) sample file to an index number. These opcodes allow management the sample-structure of SF2 files. In order to understand the usage of these opcodes, the user must have some knowledge of the SF2 format, so a brief description of this format can be found in the SoundFont2 File Format Appendix.