Use Non-Frames Version Previous Page Next Page
Signal Modifiers: Special Effects

bbcutm, bbcuts


  ar          bbcutm   asig, ibps, isubdiv, ibarlength, iphrasebars, inumrepeats[, istutterspeed, istutterchance, ienvchoice]

  ar1, ar2    bbcuts   asig1, asig2, ibps, isubdiv, ibarlength, iphrasebars, inumrepeats[, istutterspeed, istutterchance, ienvchoice]


Description

The "Breakbeat Cutter" generates cutups of the source audio stream(s) for breakbeat manipulations. Output is rendered as phrases, a sequence of cuts starting at a new bar.

Initialization

ibps – tempo of the cuts, in beats per second

isubdiv – number of subdivisions in one bar. For example, 8 would represent eight notes in a 4/4 bar.

ibarlength – number of beats in one bar. For example, 4 would represent a 4/4 bar.

iphrasebars – the output cuts are generated in phrases, each phrase is up to iphrasebars long.

inumrepeats – number of repetitions of a cut. Maximum is 1.

istutterspeed (optional) – sets the speed of stuttering. Must be an integer multiple of isubdiv. For example, if isubdiv = 8 and istutterspeed = 2, then the stutter is in sixteenth notes. The default is 1.

istutterchance (optional) – sets the probablity that the end of a phrase will be repeated as a single, one unit stutter. Must be in the range 0 - 1. The default is 0.

ienvchoice (optional) – a value of 1 causes the cut unit to be passed through an exponential gain envelope. A value of 0 turns enveloping off. Turning enveloping off will cause clicking, but may give good results, especially for percussive sources. The default is 1.

Performance

asig, asi1, asig2 - source signal to undergo breakbeat manipulation

A typical cut sequence derived from one bar with eighth note subdivisions would be:

   3+ 3R + 2

A block of three eight notes is taken from the source's start, then repeated. The cutup ends with a block consisting of the eighth notes seven and eight from the source.

Examples

Simple mono and stereo versions:


<CsoundSynthesizer>

<CsInstruments>

  sr     = 44100

  kr     = 4410

  ksmps  = 10

  nchnls = 2



          instr 1

  asource diskin     "break7.wav", 1, 0, 1    ; a source breakbeat sample

                                              ; wraparound lest it stop!

; cuts in eighth notes per 4/4 bar, up to 4 bar phrases, up to 1

; repeat in total (standard use) rare stuttering at 16 note speed,

; no enveloping  



  asig    bbcutm     asource, 2.6937, 8, 4, 4, 1, 2,0.1, 0

          outs       asig,asig

          endin



          instr 2   ;stereo version

   a1,a2  diskin    "break7stereo.wav", 1, 0, 1    ; a source breakbeat sample

                                                   ; wraparound lest it stop!

; cuts in eighth notes per 4/4 bar, up to 4 bar phrases, up to 1

; repeat in total (standard use) rare stuttering at 16 note speed,

; no enveloping  



   a3,a4  bbcuts     a1, a2, 2.6937, 8, 4, 4, 1, 2, 0.1, 0

          outs       a3, a4

          endin

</CsInstruments>



<CsScore> 

  i1 0 10 

  i2 11 10

  e

</CsScore>

</CsoundSynthesizer>

Multiple simultaneous synchronised breaks:


<CsoundSynthesizer>

<CsInstruments>

  sr     = 44100

  kr     = 4410

  ksmps  = 10

  nchnls = 1



          instr 1

   ibps  = 2.6937

   iplaybackspeed = ibps/p5



   a1     diskin    p4, iplaybackspeed, 0, 1	

   asig   bbcutm    a1, 2.6937, p6, 4, 4, p7, 2, 0.1, 1

          out       asig

          endin



</CsInstruments>



<CsScore> 

;         source       bps cut repeats

   i1 0 10 "break1.wav" 2.3 8   2	;2.3 is the source original tempo

   i1 0 10 "break2.wav" 2.4 8   3

   i1 0 10 "break3.wav" 2.5 16  4

e

</CsScore>

</CsoundSynthesizer>

Cutting up any old audio - much more interesting noises than this should be possible!


<CsoundSynthesizer>

<CsInstruments>

  sr     = 44100

  kr     = 4410

  ksmps  = 10

  nchnls = 1



          instr 1

   a1     oscil      20000, 70, 1

   asig   bbcutm     a1, 2, 32, 1, 1, 2, 4, 0.6, 1

          outs       asig

          endin

</CsInstruments>



<CsScore> 

   f1 0 256 10 1

   i1 0 10 

   e

</CsScore>

</CsoundSynthesizer>

Constant stuttering, faked. Stuttering is not possible since stuttering can occur only in the last half of the bar.


<CsoundSynthesizer>

<CsInstruments>

   sr     = 44100

   kr     = 4410

   ksmps  = 10

   nchnls = 1



          instr 1

  a1      diskin     "break7.wav", 1, 0, 1



;16th note cuts- but cut size 2 over half a beat.

;each half beat will eiather survive intact or be turned into 

;the first sixteenth played twice in succession



   asig   bbcutm     asource, 2.6937, 2, 0.5, 1, 2, 2, 1.0, 0

          outs       asig

          endin

</CsInstruments>



<CsScore> 

   i1 0 30 

   e

</CsScore>

</CsoundSynthesizer>

Author

Nick Collins
August, 2001
New in Csound 4.16


Use Non-Frames Version Previous Page Next Page
Signal Modifiers: Special Effects