AmbDec User Manual. Fons Adriaensen

Similar documents
AMIQ-K2 Program for Transferring Various-Format I/Q Data to AMIQ. Products: AMIQ, SMIQ

User Manual K.M.E. Dante Module

SIDRA INTERSECTION 8.0 UPDATE HISTORY

Dirac Live for Emotiva Automatic Room Correction

December 2006 Edition /A. Getting Started Guide for the VSX Series Version 8.6 for SCCP

REMOTE SOFTWARE USER GUIDE V1.0

AcoustiSoft RPlusD ver

A few quick notes about the use of Spectran V2

XYNTHESIZR User Guide 1.5

Transmitter Interface Program

FSK Transmitter/Receiver Simulation Using AWR VSS

VTX V25-II Preset Guide

AMEK SYSTEM 9098 DUAL MIC AMPLIFIER (DMA) by RUPERT NEVE the Designer

MAutoPitch. Presets button. Left arrow button. Right arrow button. Randomize button. Save button. Panic button. Settings button

Controlling adaptive resampling

CCE900-IP-TR. User s Guide

CLA MixHub. User Guide

D-901 PC SOFTWARE Version 3

Chapter 4 Signal Paths

MODFLOW - Grid Approach

KRAMER ELECTRONICS LTD. USER MANUAL

Measuring Delays. A Step by Step instruction. (c) 2017 by Thomas Neumann

Getting Started Guide for the V Series

v. 8.0 GMS 8.0 Tutorial MODFLOW Grid Approach Build a MODFLOW model on a 3D grid Prerequisite Tutorials None Time minutes

Using the oscillator

User Instruction Manual IQSDA30/IQSDA32. Intelligent Reclocking High Performance HD-SDI/SD-SDI Distribution Amplifiers. snellgroup.

UltraPioneerAVR3 HSPI User s Guide A HomeSeer HS3 plug-in to enable control of Pioneer A/V Receivers that support the IP & RS232 control system.

CARLO GAVAZZI Automation Components

ToshibaEdit. Contents:

Getting Started Guide for the V Series

V4.7 Software Quick Start Guide

Analyze Frequency Response (Bode Plots) with R&S Oscilloscopes Application Note

POSITIONING SUBWOOFERS

TOMELLERI ENGINEERING MEASURING SYSTEMS. TUBO Version 7.2 Software Manual rev.0

invr User s Guide Rev 1.4 (Aug. 2004)

2G Video Wall Guide Just Add Power HD over IP Page1 2G VIDEO WALL GUIDE. Revised

with the Field-IQ Crop Input Control System

Reverb 8. English Manual Applies to System 6000 firmware version TC Icon version Last manual update:

Lindell 254E User Manual. Lindell 254E. User Manual

DEPARTMENT OF THE ARMY TECHNICAL BULLETIN CALIBRATION PROCEDURE FOR AUTOMATIC VIDEO CORRECTOR TEKTRONIX, MODEL 1440 (NSN )

Using different reference quantities in ArtemiS SUITE

VSX Series Getting Started Guide

Installation & Operational Manual

Installation / Set-up of Autoread Camera System to DS1000/DS1200 Inserters

HCS-4100/20 Series Application Software

EDL8 Race Dash Manual Engine Management Systems

Setup Utility Guide. SF-16M 16-Channel Digital Matrix Amplifier

DA CHANNEL AES AUDIO MIXER/ ROUTER MODULE

Embedded Signal Processing with the Micro Signal Architecture

SIGNAL PROCESSOR. Operation Manual

Software Quick Manual

USB AUDIO INTERFACE I T

Session 1 Introduction to Data Acquisition and Real-Time Control

Kramer Electronics, Ltd. USER MANUAL. Model: VS-201YC. 2x1 s-video Switcher

J.M. Stewart Corporation 2201 Cantu Ct., Suite 218 Sarasota, FL Stewartsigns.com

Operating Instructions

VISSIM Tutorial. Starting VISSIM and Opening a File CE 474 8/31/06

DH400. Digital Phone Hybrid. The most advanced Digital Hybrid with DSP echo canceller and VQR technology.

Sound Creation Tool FWCTRL Operation Manual

Performing a Sound Level Measurement

User s Guide - 64 Bit Digital Electronic Crossover

Lindell 354E User Manual. Lindell 354E. User Manual

Stream Labs, JSC. Stream Logo SDI 2.0. User Manual

Table of content. Table of content Introduction Concepts Hardware setup...4

SR-D8-M, SR-D8-S. (Ver ) SOFTWARE INSTRUCTIONS

USER MANUAL FOR DDT 2D. Introduction. Installation. Getting Started. Danley Design Tool 2d. Welcome to the Danley Design Tool 2D program.

Syntor X Flash Memory Module Revision C

SIGNAL PROCESSOR. Operation Manual

Quick-Start for READ30

INSTALLATION AND OPERATION INSTRUCTIONS EVOLUTION VIDEO DISTRIBUTION SYSTEM

Kramer Electronics, Ltd. USER MANUAL. Models: VS-626, 6x6 Video / Audio Matrix Switcher VS-828, 8x8 Video / Audio Matrix Switcher

Setup Guide. Dolby PRM Rev. 1.1

HCS-4100/50 Series Fully Digital Congress System

SPL Analog Code Plug-in Manual

LTE-A Base Station Performance Tests According to TS Rel. 12 Application Note

De-embedding Gigaprobes Using Time Domain Gating with the LeCroy SPARQ

Installation and Users Guide Addendum. Software Mixer Reference and Application. Macintosh OSX Version

Mackie Control and Cubase SX/SL

SigPlay User s Guide

LedSet User s Manual V Official website: 1 /

Footnotes and Endnotes

Setup Guide. CalMAN Client for SCRATCH. Rev. 1.1

imso-104 Manual Revised August 5, 2011

FS3. Quick Start Guide. Overview. FS3 Control

SpikePac User s Guide

LEDBlinky Animation Editor Version 6.5 Created by Arzoo. Help Document

SC26 Magnetic Field Cancelling System

Channel calculation with a Calculation Project

Setup Guide. Teradek COLR. Rev. 1.1

AxumVideo 0 intro. Now that you have connected the different AXUM system parts, you are ready to configure the system according to your own needs.

Using the BHM binaural head microphone

Solid State Logic S O U N D V I S I O N

Vortex / VSX TM 8000 Integration

Chapter 23 Dimmer monitoring

User manual. English. Perception CSI Extension Harmonic Analysis Sheet. A en

Panaray MSA12X. Modular Steerable Array Loudspeaker. Design Guide

Kramer Electronics, Ltd. USER MANUAL. Model: 900xl. Power Amplifier

ZYLIA Studio PRO reference manual v1.0.0

The DataView PowerPad III Control Panel

Table of Contents. 2 Select camera-lens configuration Select camera and lens type Listbox: Select source image... 8

Transcription:

AmbDec - 0.4.2 User Manual Fons Adriaensen fons@kokkinizita.net

Contents 1 Introduction 3 1.1 Computing decoder matrices............................. 3 2 Installing and running AmbDec 4 2.1 Installing AmbDec from source............................ 4 2.2 Packaging and binary installation........................... 4 2.3 Running AmbDec.................................... 4 2.4 Input and output connections............................. 4 3 The main window 6 4 Configuration 7 4.1 Matrix coefficient and signal scaling......................... 7 4.2 Creating a new configuration............................. 7 4.3 Run-time configuration options............................ 8 4.4 The speaker matrix................................... 9 4.5 The decoder matrices................................. 10 4.6 Some editing hints................................... 10 4.7 Preset files........................................ 10 c Fons Adriaensen 2

1 Introduction This is the user manual for the 0.4.2 release of AmbDec. AmbDec is an Ambisonics decoder for up to 36 speakers. It can be used for both horizontal and full 3-D systems of first, second and third order. The decoding matrices are fully userconfigurable. AmbDec has some advanced feautures not found on most decoders: Dual frequency band operation. Optimal Ambisonics reproduction requires a different decoder for low and high frequencies. This is so mainly because human perception of sound direction uses different mechanisms at low and high frequencies. The crossover filters used in AmbDec are phase-aligned the two outputs are exactly in phase at all frequencies. The combined response is equivalent to a first-order all-pass network, which is very probably inaudible. Speaker distance compensation. If the speakers are not all at the same distance to the center of the listening area, this must be compensated by including the right delays and gain corrections. Near-field effect compensation. Ambisonics works by reconstructing the spherical harmonic components of a sound field at the center of the listening area, using all speakers to synthesize each of them. All non-zero order components show a near-field effect depending on the ratio wavelength/distance, and increasing for rising order. One example of this is the well known proximity effect of directional microphones ( directional is equivalent to using non-zero order components ). Except in very large installations, where the speaker distances will be large enough so the listening area is not in the near field, this effect must be compensated for in order to obtain a correct reconstruction of a sound field. All three features can be selectively enabled or disabled in the configuration. 1.1 Computing decoder matrices AmbDec provides the audio processing, but does not have any functionality for computing the required matrices. For regular speaker layouts this calculation is relatively simple. 3-D layouts are almost never regular (this would require speaker below floor level in many cases), and the calculation of an optimal decoder gets much more complicated, in particular at medium and high frequencies. A separate application is being developed to assist with the design of irregular and 3-D systems, but using this requires in-depth knowledge of the Ambisonics theory. The techniques used are interactive simulation and genetic search. If you are planning to build an Ambisonic system, please get in contact with the author who will be happy to assist with the design of a matched AmbDec configuration. The 36 outputs limit can be modified quite easily if required. c Fons Adriaensen 3

2 Installing and running AmbDec AmbDec is published under the GPL license. The full text of the license is provided in the file named COPYING which should be provided wich each copy of AmbDec. 2.1 Installing AmbDec from source The source code for AmbDec is available from <http://www.kokkinizita.net/linuxaudio>. You also need some shared libraries: libclthreads version 2.4.0 or later, and libclxclient version 3.6.0 or later. Both can be downloaded from the same site. Apart from these, compiling AmbDec requires the JACK and X11 development files to be available. Compiling and installing AmbDec should be simple enough. First ensure the two libraries are installed (compile and install libclthreads first as libclxclient depends on it). Unpack the AmbDec tarball, cd to the source directory, make and as root make install. The default install directory is /usr/local/bin. To change this, just edit the PREFIX variable in the Makefile. Copy the presets directory to some convenient place, and create an $HOME/.ambdecrc (see below). 2.2 Packaging and binary installation Binary install packages should copy the presets directory to some place used for shared configuration files, e.g. /opt/ambdec/presets, and install an /etc/ambdec.conf pointing to the the shared presets directory. See the following section for details. 2.3 Running AmbDec AmbDec reads options from /etc/ambdec.conf or $HOME/.ambdecrc. If the latter file is present (even empty) then the global one is ignored. The option syntax is the one used by the X11 resource manager (as in.xdefaults). The following can be used: Ambdec.config: Ambdec.presets: Ambdec.volume: path_to_default_configuration_file path_to_presets_directory initial volume in db The corresponding command line options are -c, -p and -V. These will override those in either file. Using -h will print version info and list the command line options. As any audio application AmbDec should be run with the privileges required to create real-time threads and to lock virtual memory. How this is done will depend on your system. Recent distros will require nothing special if the user is a member of the audio group. On others you may have to use either rlimits or sudo. 2.4 Input and output connections AmbDec is designed as a professional application. It is therefore a JACK client only and it can not be used directly with ALSA, OSS, or any desktop specific sound server. From release 0.4.1 the number and names of the input ports are fixed, and do no longer depend on the configuration. This means that not always all inputs are used. The ones required can c Fons Adriaensen 4

be seen in the configuration window. Note that you can t use e.g. a second order decoder and then only provide first order signals - the result will be a completely wrong decode. The number and names of the output ports will depend on the exact configuration. When a new preset is loaded and applied, all output ports will be removed and a new set will be created. Just modifying the current configuration will not affect the ports. Output ports can be connected automatically if their destination is specified in the preset file. Input ports are never autoconnected. As AmbDec could be used to drive systems capable of producing high sound levels, the audio code is designed so as to avoid clicks and pops when a preset is loaded or modified, by applying a short fade-out and fade-in around the change. Output ports are connected or disconnected only while silent. Also all audio controls are fully de-clicked or de-zippered. c Fons Adriaensen 5

3 The main window The main window (fig.1) provides the master volume control, output level metering, and some test facilities. Clicking the Config button opens the configuration window which is discussed in the next section. Figure 1: The main window The buttons below each output level meter will take their labels from the speaker names in the preset file. They can be used in two ways: L-click on a button to solo the corresponding speaker. An R-click will add/remove a channel to/from the solo selection. Solo state is indicated by the button lighting up in green. Shift-click will mute the corresponding channel, indicated by the button turning orange. Shift-click again to unmute it. The Int and Ext buttons will replace the output of the decoder matrices by either an internal or an external test signal. The test signals are sent only to channels selected for solo. The internal signal (a phase-modulated sine) is used mainly to verify correct connections and levels. The external test input can be used for example when performing impulse response measurements on the speakers. c Fons Adriaensen 6

4 Configuration The config window (fig.3, next page) is opened by clicking the Config button in the main window. Here you can create, load, modify and save AmbDec configurations. This can be done without any impact on the audio processing the displayed configuration is transferred to the audio code only when the Apply button is clicked. When the window is opened the current configuration is shown. You can revert to this by using Cancel at any time. 4.1 Matrix coefficient and signal scaling In order to correctly use some of the options discussed below, the following must be understood. Ambisonic signals are traditionally scaled in a number of different ways. For mathematical analysis it is very convenient to use the normalised form, meaning that each spherical harmonic has unity power when integrated over the sphere. This is called the N3D form of Ambisonic signals A close variation on this is the semi-normalised or SN3D form. This also has desirable mathematical properties, and is used by some existing software, for example the Ambisonic tools from IEM, Graz The alternative to both, and widely used, is the so-called Furse-Malham form. This applies some gain factors to the signals so that they all have the same maximum level over all directions. The only exception is the pressure signal W which, for historical reasons, is attenuated by 3 db. Many Ambisonic applications and audio files use the Furse-Malham representation. AmbDec allows to use all three representations, both for the input signals and for the matrix coefficients. If the two settings are different, AmbDec will automatically apply the necessary gain factors to convert between them. So you can design a decoder matrix using the normalised form (which is usually less confusing, in particular for higher orders), and then use it with signals scaled according to the Furse-Malham standard. Important note: the normalised form used is always the 3-D one, even for an horizontal-only decoder. The reason for this is that all decoders are used in 3-D space unless your speakers are infinite vertical line sources the rules of physical 3-D space apply, even when analysing a 2-D decoder. 4.2 Creating a new configuration Clicking the New button brings up the new configuration dialog (fig.2). The choices made here are fixed for any configuration can not be modified later. Matrix scaling. This determines how the matrix coefficients will be interpreted, as explained in the previous section. Horizontal order Select either 1st, 2nd or 3rd order. Vertical order. Select either a horizontal-only decoder, or 1st or 2nd order for the vertical component (third order horizontal only allows up to first order vertical in this version of AmbDec). Frequency bands. Select a single or dual band decoder. Generally much better results can be achieved with a dual band decoder. c Fons Adriaensen 7

Figure 2: The new configuration dialog Finally select the number of speakers to use, then click Create. 4.3 Run-time configuration options Apart from the matrices which will be discussed in the next section, the configuration window (fig.3) provides some options that can be modified at any time. Figure 3: The configuration window, showing decoder matrices Description. This field can be used to add a short textual comment to the configuration file. c Fons Adriaensen 8

Matrix scaling. This is shown for information only and can not be modified. Input scaling. Select the scaling of the input signals. Delay compensation. If selected, this will apply the correct delays to all outputs if your speakers are not all at the same distance to the center of the listening area. This option should be selected for all non-regular layouts, unless these delays are already included in for example an IR based speaker equalisation. Gain compensation. This will compensate for level differences resulting from unequal speaker distance. The output gains are calculated assuming the speakers are perfect point sources, which will in general not be the case. A better alternative is calibrate all speakers to the same SPL at the center using e.g. the amplifier gain controls, or to include the gain corrections in IR based equalisation. Near-field compensation. This compensates for level and phase errors on the non-zero order components resulting from the finite distance of the speakers. If all speakers are (approximately) at the same distance, you can select the On inputs option, else use On outputs which could take more CPU cycles. This option should be enabled for all but very large installations. Crossover frequency. This is shown for dual-band decoders only. The optimal value depends on the size of your setup, order, and some other factors. A value around 600 Hz will work fine in most cases. HF/LF balance This is shown for dual-band decoders only. This parameter modifies the relative gain of the two frequency bands, and be used to tune a system for the best tonal balance. 4.4 The speaker matrix The first four colums of the matrix define the speaker layout. Clicking Speakers in the lower left corner will add the JACK connections column (fig.4). If this is filled in the outputs will be automatically connected to their destination ports, usually the playback ports of a sound card. Clicking Decoder in the lower left corner will return to the decoder matrices. There may be two such buttons if a dual band decoder is too big to show both matrices at the same time. The ID column sets the names of the output channels. These can consist of up to three characters, and are used on the solo/mute buttons in the main window, and also as a suffix to the names of the JACK output ports. Dist, Azim and Elev set the loudspeaker positions in spherical coordinates as seen from the center of the listening area. Azimuth is measured in the mathematical sense, i.e. positive values are counter-clockwise. Currently the software only uses the distance, but filling in the other coordinates may be required in the future and also helps with understanding or verifying the decoder matrices. c Fons Adriaensen 9

Figure 4: The configuration window, showing JACK connections 4.5 The decoder matrices Apart from the basic matrix, there are also per-order gain factors labeled G(order). These can often be used to modify the matrices in interesting ways without having to touch all the cells. For example, for a regular layout you can design a matrix for the max rv criterion, and then turn it into a max re or in-phase one by just modifying the gains for the non-zero order components. The cube decoder shown in fig.3 is an example of this: the LF and HF matrices are identical, only the gain of the first order components has been decreased in the HF part. 4.6 Some editing hints The matrices can be navigated using Tab, Shift-Tab and the Up and Down arrows. The cells also understand some Emacs-style editing keys. To copy a value from the current cell to another, Shift-Click on the destination. To fill a column, set one cell, then use Shift-Up or Shift-Down to copy up or down. Modified cells are shown in a different color. This will be reset when you either Apply or Cancel the changes. 4.7 Preset files The configurations are stored in preset files having the.ambdec extension. The format is a textual form of OSC, and will be clear enough from reading the examples provided. c Fons Adriaensen 10