Home
Developer Resources
Technical Articles

QNX Technical Articles

QNX® Acoustics Management Platform 3.0 Product Update (Build ID 5909): Release Notes

Date of this edition: October 2, 2020

To install this product, you must have installed QNX SDP 7.0 on one of the following development hosts:

  • Microsoft Windows 10 Pro 64-bit, Windows 8.1 Pro 64-bit, or Windows 7 Professional 64-bit
  • Linux Red Hat Enterprise Linux 7 64-bit, or Ubuntu Desktop 16.04 LTS 64-bit, on x86_64 processors
  • macOS version 10.10, 10.11, 10.12

You must also have installed the update QNX SDP 7.0 Audio (Build 5821) and (to run LiveAMP) Microsoft Visual C++ Redistributable for Visual Studio 2015 (x86/32-bit edition; https://www.microsoft.com/en-us/download/details.aspx?id=48145) and the .NET Framework 4.7.2 or later (https://dotnet.microsoft.com/download).


Note:

If you already have Acoustics Management Platform (AMP) 2.0 installed, you must either uninstall it before you install AMP 3.0, or install AMP 3.0 in a separate QNX SDP 7 installation.

Make sure you install AMP 3.0 using QNX Acoustics Management Platform 3.0 - All, QNX Acoustics Management Platform 3.0 - All Documentation, and QNX Acoustics Management Platform 3.0 – LiveAMP on Windows hosts. AMP 3.0 modules might be visible as individual items in the QNX Software Center to allow you to view their properties.

For the most up-to-date version of these release notes, launch the QNX Software Center, right-click on QNX® Acoustics Management Platform 3.0, and then select Properties. (The update appears in the Available tab, the Updates tab, or the Installed tab.)


Contents

Throughout this document, you may see reference numbers associated with particular issues, changes, etc. When corresponding with our Technical Support staff about a given issue, please quote the relevant reference number. You might also find the reference numbers useful for tracking issues as they become fixed.

What's in this update?

The AMP 3.0 Product Update contains:

  • QNX Acoustics for Voice (QAV) 4.1
  • QNX In-Car Communication (ICC) 2.1
  • QNX Active Sound Design (ASD) 2.2
  • QNX Chimes and Safety Alerts Monitor (CSA) 1.1
  • QNX Software Audio Management (SAM) 1.2
  • Acoustics Control Server (ACS) 1.1.11
  • Remote Control Server (RCS) 4.1
  • LiveAMP 3.1

QNX Acoustics for Voice (QAV) 4.1 enhancements

In addition to general QAV audio quality and library performance improvements, this product update provides the following new features:

  • QAV now supports multi-microphone adaptive beamforming, with up to eight microphones per beam and up to eight beams in total. Unless the beamformer mode (qwaBFMode) is set explicitly, all beamformers now default to being adaptive (QWA_BF_ADAPTIVE), whereas prior to this release, beamformers were fixed (QWA_BF_FIXED).
  • If the external receive volume is provided to QAV, the dynamic level control (DLC) algorithm uses the information to taper off the gain at high user volumes. Additionally, the user can now select which microphone to use for DLC adjustments.
  • QAV now supports a fixed delta gain for both the send and receive path, where the total fixed gain is the sum of the existing fixed gain and the new delta gain.
  • The default values for qwaNCParams have been updated. The precompensation is now 0 dB, the minimum and maximum gain compensation are now 0 dB and 6 dB respectively, and the slope is now 40%.
  • QAV now supports parameter information for external endpointers.

This product update adds the following parameters:

  • qwaBFArrayFailure
  • qwaBFCaliBeamIndex
  • qwaBFCaliData
  • qwaBFCaliId
  • qwaBFCaliMode
  • qwaBFCaliModeTrigger
  • qwaBFMicRMSDiffThresh
  • qwaBFMode
  • qwaDLCNoiseSource
  • qwaEPInfo
  • qwaMicInRMSRange
  • qwaNCExtVolumeTunePt
  • qwaRecvDeltaGain
  • qwaSendDeltaGain

The following parameters have limited handling in QAV 4.1 and should no longer be used:

  • qwaMicMuteThreshold
  • qwaMicInAvgAmp

AMP 3.0 no longer supports the following parameters:

  • qwaMixFiltSwitch
  • qwaMixFiltAtten

QNX In-Car Communications (ICC) 2.1

This product update updates ICC to improve audio quality and library performance. There are no new features for ICC 2.1.

QNX Active Sound Design (ASD) 2.2 enhancements

In addition to general ASD audio quality and library performance improvements, this product update provides the following new features:

  • Many ESE modules now support multichannel (up to 8-channel) processing.
  • A two-way mixer module has been added to ESE to sum two multichannel input streams.
  • You can now configure up to 1023 VINs and up to 1024 ESE modules.
  • ASD now supports fixed and variable low-frequency oscillator (LFO) VINs.
  • ESE now supports a waveform generator for sine, triangular, square and Shepard tones.
  • New flanger and distortion modules have been added to ESE.
  • Up to 128 granular synthesis binaries and 128 sample player binaries can now be set.
  • Frame sizes up to 32 ms are now supported for ASD.
  • Most source modules in ESE now include a fixed gain parameter.
  • The exceptions level can now be disabled, fully enabled, or enabled with control output limiting only.

This product update adds the following parameters to ASD 2.2:

  • qwaAsdEse2WayMixerSetup
  • qwaAsdEseDrainedFlag
  • qwaAsdEseEffDelayRange
  • qwaAsdEseEffFeedbackPc
  • qwaAsdEseEffModFreq
  • qwaAsdEseEffModFreqId
  • qwaAsdEseEffPostGain
  • qwaAsdEseEffPreGain
  • qwaAsdEseEffSaturation
  • qwaAsdEseEffWetPc
  • qwaAsdEseShepardFreqRange
  • qwaAsdEseShepardSpeedFixed
  • qwaAsdEseShepardSpeedNodes
  • qwaAsdEseShepardSpeedType
  • qwaAsdEseShepardType
  • qwaAsdEseSizeCfg
  • qwaAsdEseWaveGenDutyCycle
  • qwaAsdEseWaveGenSetup
  • qwaAsdEseWaveGenType
  • qwaAsdVinFreqFixed

ASD 2.2 interprets the following parameters differently:

  • qwaAsdEorExceptionEnable

QNX Software Audio Management (SAM) 1.2 enhancements

This product update provides the following new features:

  • You can now use input and output channel label strings in SFO and SPM.
  • The peak limiter delay in SPM is now adjustable.
  • You can now specify up to 20 nodes for the parametric EQ, user EQ and dynamic EQ in SFO.

This product update adds the following parameters to SAM 1.2:

  • qwaSfoChanLabel
  • qwaSpmLimiterPeakDelay
  • qwaSpmInChanLabel
  • qwaSpmOutChanLabel

The following parameters now have read/write access before and after initialization:

  • qwaSfoExtVolume
  • qwaSfoSdgSpeed
  • qwaSfoToneEnable
  • qwaSfoToneFreqs
  • qwaSfoToneGains
  • qwaSfoUeqEnable
  • qwaSfoUeqNodes

QNX Chimes and Safety Alerts (CSA) 1.1 enhancements

This product update provides the following new features:

  • The high noise, chime detect, and failure rates can now be retrieved.
  • The smoothing time constant for the high noise, chime detect, and failure rate statistics are now adjustable.

This product update adds the following parameters to CSA 1.1:

  • qwaCsaAvgFailureRate
  • qwaCsaAvgHighNoiseRate
  • qwaCsaAvgChimeDetectRate
  • qwaCsaStatisticsTC

This product update deprecates the following parameter:

  • qwaCsaStatisticsFailure (superseded by qwaCsaAvgFailureRate)

Acoustic Processing Extension (APX) enhancements

  • The SPM and SFO APX’s now support custom channel labels. If no custom label has been set, the channel labels in SPM and SFO match the names from the PCM device channel map by default.
  • SPM and SFO now support parameter changes using LiveAMP or libasound before the PCM software mixer has been started.
  • APX io-audio configuration file keys can now be targeted to a specific device using the _index suffix.
  • The CSA mix is now routed into the audio stream after SFO is applied, so that any nonlinearities that SFO introduces do not affect the CSA reference.
  • Automatic user volume and external volume settings that are applied to SFO and SPM are now ramped as they would be by Audio Concurrency Management, so that the volume supplied matches the current ramp position.

AMP Function Module (AFM) enhancements

  • AFMs now support notification callbacks through the control device. Events that generate notifications include state changes, audio mode changes, dataset changes, and detection state changes (for CSA and QAV).
    • The CSA AFM supports notifications for when the detection state changes.
    • The QAV AFM supports notifications at the endpoints of when speech is detected.
  • The TAADIS AFM has been added to provide a buffered capture device, which is useful for buffering the captured PCM audio from the QAV AFM in voice recognition applications.
  • The sample rate requested when opening AFM reference devices can now be explicity set using the io-audio configuration file keys ref_rate_default and ref_rate_mode.
  • The use information for each AFM has been updated to include a description as well as a list of required and specialized io-audio configuration file keys.
  • AFM datasets can now be cleared when the AFM is not running.
  • AFM configuration and status information are now available through new libasound APIs.
  • More status information is now available when 'cat'ing the state of an AFM device.
  • Both 16-bit and 32-bit acoustic processing parameters can now be accessed using afm_ctl and apx_ctl.

LiveAMP 3.1 enhancements

  • A new Terminal feature has been added.
  • A new Target Explorer feature has been added.
  • Automation has an expanded feature set and reorganized layout.
  • Support for the new runtime library features included in the AMP 3.0 Product Update has been added.
  • The .qcf and .asdproj files that are launched from the Windows shell can now be associated with LiveAMP.
  • There is now a better ASD project file experience when moving a project and its associated .bin files from one computer to another.
  • A new “pin” feature in the frequency spectrum graph has been added.
  • CPU performance has been improved.

Acoustic Control Server (ACS) 1.1.11 enhancements

  • ACS now supports sending parameters with channels identifiers greater than 254.
  • The ACS default network packet size has been increased to support sending QAV beamformer calibration data.
  • ACS shutdown sequencing is now more robust to timing changes, and connection error logging has been improved.

Remote Control Server (RCS) 4.1 enhancements

  • RCS now supports sending parameters with channels identifiers greater than 254.
  • RCS now supports sending channelized QAV beamformer calibration files.

libasound changes

This product update adds the following functions to support reading and writing AFM-specific information:

  • snd_afm_info()
  • snd_afm_status()
  • snd_afm_get_param())
  • snd_afm_set_param()

This product update adds the following structure to support AFM notifications from snd_ctrl_read():

  • snd_ctrl_afm_event_t

Audio configuration file changes

Modified keys:

  • In the [AFM] section, you can specify taadis for the name key to configure an instance of the new TAADIS AFM. TAADIS AFMs require the pcm_local_capture and ms_frag_period keys, and, optionally, the pcm_cap_name and new buffer_ms keys.
  • In the [CTRL] section, the APX keys now support the _index suffix to target a specific device.

New keys:

  • [CTRL] section
    • csa_limiter
  • [AFM] section
    • ref_rate_default
    • ref_rate_mode
    • buffer_ms
    • ep_notify_default
    • ep_notify_mode
    • ep_min_voiced
    • ep_min_non_voiced

For more information about the new keys, see the io-audio section of the Utilities Reference.

Binaries

This product update adds the following binaries:

  • /lib/dll/deva-afm-taadis.so
  • /usr/bin/afm_monitor

This product update adds the following LiveAMP configuration file:

  • LiveAMP.exe.config

Fixed issues

General

  • The error strings returned by the ASD, CSA, SFO, and SPM libraries have been improved. (Ref# J2872585)
  • The capabilities of the PCM software mixer references now change when the capabilities of the PCM software mixer playback audio change. (Ref# J2749989)
  • When using multiple AFMs of the same type, the number of reference and external reference tap points exposed to LiveAMP now correctly reflect the configuration of the corresponding AFM in the io-audio .conf file. (Ref# J2764725)
  • A memory leak when using the Asynchronous Sample Rate Converter (ASRC) to compensate for different clock domains between AFM inputs and outputs has been resolved. (Ref# J2780632)
  • Artifacts present when the Bridge AFM is unsuspended by audio concurrency management have been resolved. (Ref# J2784868)

LiveAMP

  • Channel ID labels in LiveAMP now map ICC’s output channels to their corresponding destination zone IDs. (Ref# J2736213)
  • LiveAMP now restarts the CSA AFM without putting the CSA library into calibration mode. (Ref# J2757296)
  • LiveAMP now supports injection to targets running ACS 1.1.6 or older. (Ref# J2774090)
  • Recording vehicle input data to a log file no longer results in empty frame data. (Ref# J2874039)
  • Closing LiveAMP without disconnecting first no longer leaves ACS unavailable for connections until the network timeout period has elapsed. (Ref# J2758810)

QAV

  • The qwaAudioIn() function now returns QWA_ERR_INVALID_OPERATION if incorrectly called twice in a row without an intervening call to qwaAudioOut(). Previously, it returned QWA_OK which led to distortions in the output audio. (Ref# J2873981)
  • The QAV AFM status scount and count values now correctly reflect the state of the internal buffers. (Ref# J2766792)
  • When the QAV AFM is operating in passthrough mode (enable_pass_through=1), the fragment size is now 16 ms instead of the configured PCM software mixer fragment size. (Ref# J2769353)

ICC

  • The error QWA_ERR_INVALID_CHANNEL_CNT is now returned on initialization if qwaIccMediaGainSwitch is qwaOn or qwaIdle but qwaIccExtRefCnt is zero. Previously, qwaIccMediaGainSwitch was silently switched to qwaOff when qwaIccExtRefCnt was zero and QWA_OK was returned. It is also now possible to set qwaIccMediaGainSwitch to qwaOn at initialization when qwaIccAECSwitch is either qwaOn or qwaIdle. Also, it is now an error, QWA_ERR_NOT_INIT, to access qwaIccMediaGainParams when qwaIccMediaGainSwitch is qwaOff. (Ref# J2871780)
  • The qwaIccZoneActivityMask parameter is now zeroed when the ICC library is reset with qwaIccReset(). (Ref# J2788219)
  • The ICC AFM can now be used with a ms_frag_period value of greater than 2 ms. (Ref# J2759655)
  • The ICC AFM can now be used when the AFM mixer is disabled (afm_mixer_enable=0). (Ref# J2786693)
  • When using LiveAMP with an ICC AFM configured to have a loopback reference (pcm_ref_capture=loopback), audio injected on an ICC destination output is now correctly routed to the corresponding reference input. (Ref# J2790706)

ASD

  • Artifacts present when looping period samples in the sample player have been resolved. (Ref# J2754040)
  • When starting the ASD AFM, any library errors setting the data from the granular synthesis and sample player files are now reported and discarded during the initialization sequence. (Ref# J2874010)

CSA

  • The CSA AFM can now be used with Audio Concurrency Management. (Ref# J2774745)
  • The CSA AFM now uses the input splitter’s fragment period if its ms_frag_period audio configuration file key is not explicitly set. (Ref# J2780415)

SAM

  • The APXs and limiter in the PCM software mixer are now reset before priming frags are mixed to avoid any audio from a previous session leaking into a new session. (Ref# J2870925)
  • SFO tone control parameters changed when media is not playing are now applied correctly when media starts playing. (Ref# J2759360)
  • The SFO APX now responds to get and set data requests from LiveAMP, even when the number of channels is not explicitly set in the SFO configuration file. (Ref# J2767075)
  • When using the SFO APX in conjunction with the ICC AFM, the optimized audio is now correctly routed to the external reference input of ICC. (Ref# J2772117)
  • APX datasets are no longer applied when the APX is reinitialized using LiveAMP. (Ref# J2770077)

Known issues

  • The QNX Acoustics Management Platform 3.0 - All Documentation item is still available in the software center even if you install QNX Acoustics Management Platform 3.0 - All, which installs all the documentation. (Ref# J2877366)
  • The documentation for the [AFM] section of the io-audio audio configuration file is missing information about the key buffer_ms. This key specifies the maximum time to buffer audio, in milliseconds. The default value is 5000. Used for TAADIS AFM only. (Ref# J2876156)

Installing QNX Acoustics Management Platform 3.0 Product Update

To install this update onto your development host:

  1. Launch the QNX Software Center, then select the Available tab or the Update tab.
  2. Under QNX Acoustics Management Platform 3.0 - All, expand the Audio item.

    The following items are available:

    • QNX Acoustics Management Platform 3.0 - All
    • QNX Acoustics Management Platform 3.0 - LiveAMP (Build ID 50 - on Windows only)

    Then, expand the Documentation item. The following item is available:

    • QNX Acoustics Management Platform 3.0 - All Documentation (Build ID 50)

  3. Right-click the appropriate AMP item and select Install. The Install wizard opens to display your selection.
  4. Click Next, then Finish to begin the installation.

Documentation

The following documentation describes QNX Acoustics Management Platform 3.0 Product Update:

  • QNX LiveAMP User Guide
  • QNX Acoustics for Voice Developer's Guide
  • QNX Acoustics for Voice Functional Guide
  • QNX Active Sound Design Developer's Guide
  • QNX Active Sound Design Functional Guide
  • QNX In-Car Communication Developer's Guide
  • QNX In-Car Communication Functional Guide
  • QNX Chimes and Safety Alerts Developer's Guide
  • QNX Chimes and Safety Alerts Functional Guide
  • QNX Software Audio Management Developer's Guide
  • QNX Software Audio Management Functional Guide

The QNX Acoustics Management Platform 3.0 Product Update documentation is installed automatically when you install the add-on package.

If you have not installed AMP 3.0 Product Update yet, you can install all documents using the QNX Acoustics Management Platform 3.0 - All Documentation item that you can find in the Available tab or Updates tab. Documentation is installed in the folder installation_directory/QNX_AMP-3.0, where installation_directory is the installation location you selected when you installed SDP 7.0.

The QNX LiveAMP User Guide is installed with the QNX Acoustics Management Platform 3.0 - LiveAMP package in the folder installation_directory/Live_AMP. (The filename is LiveAMPHelp.pdf.)

Technical support

To obtain technical support for any QNX product, visit the Support area on our website (www.qnx.com). You'll find a wide range of support options, including community forums.

For questions about installing and using QNX SDP, see the Getting Started forum on our Foundry27 site, http://community.qnx.com. There are other forums for specific topics, including the QNX Neutrino RTOS, development tools, networking, Board Support Packages, and so on.