summaryrefslogtreecommitdiff
path: root/opcodes/vbapgmove.xml
diff options
context:
space:
mode:
Diffstat (limited to 'opcodes/vbapgmove.xml')
-rw-r--r--opcodes/vbapgmove.xml131
1 files changed, 131 insertions, 0 deletions
diff --git a/opcodes/vbapgmove.xml b/opcodes/vbapgmove.xml
new file mode 100644
index 0000000..e7ba7d0
--- /dev/null
+++ b/opcodes/vbapgmove.xml
@@ -0,0 +1,131 @@
+
+<refentry id="vbapgmove">
+<indexterm id="IndexVbapgmove"><primary>vbapgmove</primary></indexterm>
+ <refentryinfo><title>Signal Modifiers:Panning and Spatialization</title></refentryinfo>
+ <refmeta>
+ <refentrytitle>vbapgmove</refentrytitle>
+ </refmeta>
+
+ <refnamediv>
+ <refname>vbapgmove</refname>
+ <refpurpose>
+ Calculates the gains for a sound location between multiple
+ channels with moving virtual sources.
+ </refpurpose>
+ </refnamediv>
+
+ <refsect1>
+ <title>Description</title>
+ <para>
+ Calculates the gains for a sound location between multiple
+ channels with moving virtual sources.
+ </para>
+ </refsect1>
+
+ <refsect1>
+ <title>Syntax</title>
+ <synopsis>kr1[, kr2...] <command>vbapgmove</command> idur, ispread, ifldnum, ifld1 \
+ [, ifld2] [...]</synopsis>
+ <synopsis>karray[] <command>vbapgmove</command> idur, ispread, ifldnum, ifld1 \
+ [, ifld2] [...]</synopsis>
+ </refsect1>
+
+ <refsect1>
+ <title>Initialization</title>
+ <para>
+ <emphasis>idur</emphasis> -- the duration over which the
+ movement takes place.
+ </para>
+ <para>
+ <emphasis>ispread</emphasis> -- spreading of the virtual source
+ (range 0 - 100). If value is zero, conventional amplitude panning
+ is used. When <emphasis>ispread</emphasis> is increased, the
+ number of loudspeakers used in panning increases. If value is 100,
+ the sound is applied to all loudspeakers.
+ </para>
+
+ <para>
+ <emphasis>ifldnum</emphasis> -- number of fields (absolute value must be 2 or larger). If <emphasis>ifldnum</emphasis> is positive, the virtual source movement is a polyline specified by given directions. Each transition is performed in an equal time interval. If <emphasis>ifldnum</emphasis> is negative, specified angular velocities are applied to the virtual source during specified relative time intervals (see below).
+ </para>
+
+ <para>
+ <emphasis>ifld1, ifld2, ...</emphasis> -- azimuth angles or angular velocities, and relative durations of movement phases (see below).
+ </para>
+ </refsect1>
+
+ <refsect1>
+ <title>Performance</title>
+
+ <para>
+ <emphasis>vbapgmove</emphasis> allows the use of moving virtual sources. If <emphasis>ifldnum</emphasis> is positive, the fields represent directions of virtual sources and equal times, <emphasis>iazi1</emphasis>, [<emphasis>iele1</emphasis>,] <emphasis>iazi2</emphasis>, [<emphasis>iele2</emphasis>,], etc. The position of the virtual source is interpolated between directions starting from the first direction and ending at the last. Each interval is interpolated in time that is fraction total_time / number_of_intervals of the duration of the sound event.
+ </para>
+
+ <para>
+ If <emphasis>ifldnum</emphasis> is negative, the fields represent angular velocities and equal times. The first field is, however, the starting direction, <emphasis>iazi1</emphasis>, [<emphasis>iele1</emphasis>,] <emphasis>iazi_vel1</emphasis>, [<emphasis>iele_vel1</emphasis>,] <emphasis>iazi_vel2</emphasis>, [<emphasis>iele_vel2</emphasis>,] .... Each velocity is applied to the note that is fraction total_time / number_of_velocities of the duration of the sound event. If the elevation of the virtual source becomes greater than 90 degrees or less than 0 degrees, the polarity of angular velocity is changed. Thus the elevational angular velocity produces a virtual source that moves up and down between 0 and 90 degrees.
+ </para>
+ <warning>
+ <para>Please note that all <emphasis>vbap</emphasis> panning opcodes require the <emphasis>vbap</emphasis> system to be initialized using <link linkend="vbaplsinit"><citetitle>vbaplsinit</citetitle></link>.</para>
+ </warning>
+ </refsect1>
+
+ <refsect1>
+ <title>Examples</title>
+ <para>
+ Here is an example of the vbapgmove opcode. It uses the file
+ <ulink
+ url="examples/vbapgmove.csd"><citetitle>vbapgmove.csd</citetitle></ulink>.
+ <example>
+ <title>Example of the vbapg opcode.</title>
+ <para>See the sections <link
+ linkend="UsingRealTime"><citetitle>Real-time
+ Audio</citetitle></link> and <link
+ linkend="CommandFlags"><citetitle>Command Line
+ Flags</citetitle></link> for more information on using command
+ line flags.
+ </para>
+ <xi:include href="examples-xml/vbapgmove.csd.xml" xmlns:xi="http://www.w3.org/2001/XInclude"/>
+ </example>
+ </para>
+ </refsect1>
+ <refsect1>
+ <title>Reference</title>
+ <para>
+ Ville Pulkki: <quote>Virtual Sound Source Positioning Using Vector Base Amplitude Panning</quote> <emphasis>Journal of the Audio Engineering Society</emphasis>, 1997 June, Vol. 45/6, p. 456.
+ </para>
+ </refsect1>
+
+ <refsect1>
+ <title>See Also</title>
+ <para>
+ <link linkend="vbap"><citetitle>vbap</citetitle></link>,
+ <link linkend="vbap16"><citetitle>vbap16</citetitle></link>,
+ <link linkend="vbap16move"><citetitle>vbap16move</citetitle></link>,
+ <link linkend="vbap4"><citetitle>vbap4</citetitle></link>,
+ <link linkend="vbap4move"><citetitle>vbap4move</citetitle></link>,
+ <link linkend="vbap8"><citetitle>vbap8</citetitle></link>,
+ <link linkend="vbap8move"><citetitle>vbap8move</citetitle></link>,
+ <link linkend="vbaplsinit"><citetitle>vbaplsinit</citetitle></link>,
+ <link linkend="vbapz"><citetitle>vbapz</citetitle></link>,
+ <link linkend="vbapzmove"><citetitle>vbapzmove</citetitle></link>
+ </para>
+ </refsect1>
+
+ <refsect1>
+ <title>Credits</title>
+ <para>
+ <simplelist>
+ <member>Author: Ville Pulkki</member>
+ <member>Sibelius Academy Computer Music Studio</member>
+ <member>Laboratory of Acoustics and Audio Signal Processing</member>
+ <member>Helsinki University of Technology</member>
+ <member>Helsinki, Finland</member>
+ <member>May 2000</member>
+ <member>Author: &namejohn;</member>
+ <member>July 2012, Sept 2013</member>
+ </simplelist>
+ </para>
+
+ <para>New in Csound Version 5.17.13</para>
+ <para>Array outputs new in Csound Version 6.01</para>
+ </refsect1>
+</refentry>