a Statement (or Advance Statement)

a — Advance score time by a specified amount.

Description

This causes score time to be advanced by a specified amount without producing sound samples.

Syntax

a p1  p2  p3

Performance


  p1    Carries no meaning. Usually zero.
  p2    Action time, in beats, at which advance is to begin.
  p3    Number of beats to advance without producing sound.
  p4    |
  p5    |    These carry no meaning.
  p6    |
  .
  .
      

Special Considerations

This statement allows the beat count within a score section to be advanced without generating intervening sound samples. This can be of use when a score section is incomplete (the beginning or middle is missing) and the user does not wish to generate and listen to a lot of silence.

p2, action time, and p3, number of beats, are treated as in i statements, with respect to sorting and modification by t statements.

An a statement will be temporarily inserted in the score by the Score Extract feature when the extracted segment begins later than the start of a Section. The purpose of this is to preserve the beat count and time count of the original score for the benefit of the peak amplitude messages which are reported on the user console.

Whenever an a statement is encountered by a performing orchestra, its presence and effect will be reported on the user's console.

Examples

Here is an example of the a statement. It uses the file a.csd.

Example 1046. Example of the a statement.

<CsoundSynthesizer>
<CsOptions>
; Select audio/midi flags here according to platform
-odac     ;;;realtime audio out
;-iadc    ;;;uncomment -iadc if RT audio input is needed too
; For Non-realtime ouput leave only the line below:
; -o a.wav -W ;;; for file output any platform
</CsOptions>
<CsInstruments>

sr = 44100
ksmps = 32
nchnls = 2
0dbfs  = 1

instr 1

aenv expseg .01, p3*0.25, 1, p3*0.75, 0.01
asig poscil3 .8*aenv, p4, 1
     outs asig, asig

endin
</CsInstruments>
<CsScore>
f1 0 16384 10 1 ;sine wave
;two sections
s
a 0 0 6		;advance score 6 seconds
i 1 0 2 110	;these first 2 notes
i 1 3 2 220	;will not sound
i 1 6 2 440
i 1 9 2 880
s
a 0 3 6		;advance score 6 seconds, but do this after 3 seconds
i 1 0 2 110	;this will sound, because action time (p2) from a statement = 3
i 1 3 2 220	;so these 2 notes
i 1 6 2 440	;will not sound
i 1 9 2 880	;and this one will
e
</CsScore>
</CsoundSynthesizer>