vbapzmove

vbapzmove — Writes a multi-channel audio signal to a ZAK array with moving virtual sources.

Description

Writes a multi-channel audio signal to a ZAK array with moving virtual sources.

Syntax

vbapzmove inumchnls, istartndx, asig, idur, ispread, ifldnum, ifld1, ifld2, [...]

Initialization

inumchnls -- number of channels to write to the ZA array. Must be in the range 2 - 256.

istartndx -- first index or position in the ZA array to use

idur -- the duration over which the movement takes place.

ispread -- spreading of the virtual source (range 0 - 100). If value is zero, conventional amplitude panning is used. When ispread is increased, the number of loudspeakers used in panning increases. If value is 100, the sound is applied to all loudspeakers.

ifldnum -- number of fields (absolute value must be 2 or larger). If ifldnum is positive, the virtual source movement is a polyline specified by given directions. Each transition is performed in an equal time interval. If ifldnum is negative, specified angular velocities are applied to the virtual source during specified relative time intervals (see below).

ifld1, ifld2, ... -- azimuth angles or angular velocities, and relative durations of movement phases (see below).

Performance

asig -- audio signal to be panned

The opcode vbapzmove is the multiple channel analog of the opcodes like vbap4move, working on inumchnls and using a ZAK array for output.

Examples

Example 417. 2-D panning example with stationary virtual sources

  sr      =          4100
  kr      =           441
  ksmps   =           100
  nchnls  =             4
  vbaplsinit         2, 6,  0, 45, 90, 135, 200, 245, 290, 315 

          instr 1	           
  asig    oscil      20000, 440, 1                    
  a1,a2,a3,a4,a5,a6,a7,a8   vbap8  asig, p4, 0, 20 ;p4 = azimuth
	
  ;render twice with alternate outq statements
  ;  to obtain two 4 channel .wav files:

          outq       a1,a2,a3,a4
  ;       outq       a5,a6,a7,a8
          endin
        

Reference

Ville Pulkki: “Virtual Sound Source Positioning Using Vector Base Amplitude PanningJournal of the Audio Engineering Society, 1997 June, Vol. 45/6, p. 456.

See Also

vbap16, vbap16move, vbap4, vbap4move, vbap8, vbap8move, vbaplsinit, vbapz

Credits

John ffitch
University of Bath/Codemist Ltd.
Bath, UK
May 2000

New in Csound Version 4.07