Update

parent 8a1321a5
......@@ -282,7 +282,54 @@
</table>
</div>
</p>
<h4>Configuring VA</h4>
<p>
If you want to use VA, you most likely want to change the configuration to match your hardware and activate the rendering and reproduction modules you are intereset in. You can do this by modifying the <code>*.ini</code> files in the <code>conf</code> folder. The <code>VACore.ini</code> controls the core parameters, the <code>VASetup.*.ini</code> are describing hardware devices and channel layouts. Use <code>enabled = true</code> or <code>enabled = false</code> to activate or deactivate instantiation of sections, i.e. rendering or reproductions modules and output groups.
</p>
</p>
<h4>Controlling the virtual scene in VA</h4>
<p>
The first question is: what kind of software do you usually use? There are bindings that make VA interfaces available in <b>Matlab</b>, <b>Python</b>, <b>Lua</b> and rudimentary functionality in <b>C#</b>. While many in the acoustics research area prefer Matlab, Python and especially the combination with Jupyter notebook is the open-source way to conveniently use VA. C# is your choice if you are planning to use VA for Unity environments, which is probably the lightest entry for those who are not familiar with either Matlab or Python scripting.
<br /><br />
Let's create a simple example scene for a binaural rendering. It requires a running VA server application on the same PC.<br /> Also, the two files <code>ita_demosound.wav</code> and a head-related impulse response file <code>NeumannKU100.v17.ir.daff</code> in OpenDAFF format in the data folder.
<h3>Matlab</h3>
<pre><code>va = itaVA;
va.connect()
va.reset()
X = va.createAudiofileSignalSource( 'ita_demosound.wav' );
va.setAudiofileSignalSourcePlaybackAction( X, 'play' )
va.setAudiofileSignalSourceIsLooping( X, true );
S = va.createSoundSource( 'itaVA_Source' );
va.setSoundSourcePosition( S, [-2 1.7 -2] )
va.setSoundSourceSignalSource( S, X )
H = va.loadHRIRDataset( 'NeumannKU100.v17.ir.daff' );
L = va.createListener( 'itaVA_Listener' );
va.setListenerPosition( L, [0 1.7 0] )
va.setListenerHRIR( L, H )
va.setActiveListener( L )
va.disconnect()</code></pre>
</p>
<h3>Python</h3>
<pre><code>import va
va.connect
va.reset
...
va.disconnect
</pre></code>
<h3>C#</h3>
<pre><code>using VA
VA = new VANet()
VA.Connect()
VA.Reset()
...
VA.Disconnect()</code></pre>
</section>
</div>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment