Home
Developer Resources
Technical Articles

QNX Technical Articles

QNX® Acoustics for Voice 3.0.0 Patch (Patch ID 4600): Release Notes

Date of this edition: April 12, 2017

Target OS: This software is compatible with target systems running QNX® Neutrino® 6.5.0 SP1 or 6.6.0.

Host OS: You must have already installed the QNX Software Development Platform 6.5.0 SP1 or 6.6.0:

  • You can install the QNX Software Development Platform 6.6.0 on these development hosts:
    • Microsoft Windows 8 Professional 64-bit, 7 Professional 64-bit, or XP Professional SP3
    • Ubuntu Workstation 12.04 LTS 32- and 64-bit, or RedHat Enterprise Linux 6.4 64-bit
  • You can install the QNX Software Development Platform 6.5.0 SP1 on these development hosts:
    • Microsoft Windows 7 Professional 32- and 64-bit, or XP Professional SP3
    • Ubuntu Workstation 12.04 LTS 32- and 64-bit, or RedHat Enterprise Linux 5.4 Desktop 32- and 64-bit

    or:

    • as a self-hosted QNX Neutrino development system
    • as a virtual machine in VMware WorkStation 9.0 or VMware Player 5.0

You must also have already installed QNX Acoustics for Voice 3.0.0.


Note:
  • This patch supersedes the QNX Acoustics for Voice 3.0.0 Patch (Patch ID 660-4209). You don't need to uninstall the old patch before installing this one.
  • For the most up-to-date version of these notes, go to our website (www.qnx.com), log in to your myQNX account, and then go to the Download Center.

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 patch?

This patch updates the floating- and fixed-point libraries for QNX Acoustics for Voice. The following files are installed:

  • target/qnx6/armle-v7/CA9/lib/libqwa_prem.a
  • target/qnx6/armle-v7/CA9/lib/libqwa_premS.a
  • target/qnx6/armle-v7/CA9/lib/libqwaS.a
  • target/qnx6/armle-v7/CA9/lib/libqwa_rcs_serial.a
  • target/qnx6/armle-v7/CA9/lib/libqwa_rcs_serialS.a
  • target/qnx6/armle-v7/CA9/lib/libqwa_rcsS.a
  • target/qnx6/armle-v7/CA9/lib/libqwa.a
  • target/qnx6/armle-v7/CA9/lib/libqwa_rcs.a
  • target/qnx6/armle-v7/CA8/lib/libqwa_prem.a
  • target/qnx6/armle-v7/CA8/lib/libqwa_premS.a
  • target/qnx6/armle-v7/CA8/lib/libqwaS.a
  • target/qnx6/armle-v7/CA8/lib/libqwa_rcs_serial.a
  • target/qnx6/armle-v7/CA8/lib/libqwa_rcs_serialS.a
  • target/qnx6/armle-v7/CA8/lib/libqwa_rcsS.a
  • target/qnx6/armle-v7/CA8/lib/libqwa.a
  • target/qnx6/armle-v7/CA8/lib/libqwa_rcs.a

This patch also includes an updated version of the User's Guide in these forms:

  • HTML under target/qnx6/usr/help/product/qnx_voice
  • Eclipse plugins under target/qnx6/usr/help/eclipse

We've posted an updated PDF version of it in the Download Center on our website.

Fixed issues

  • We've fixed an issue for the case when with the microphone muted, the echo canceller can create energy in the MicOut signal. (Ref# J1651178)
  • We've fixed an issue with the residual echo attacking local speech in noisy environments. (Ref# J1675551)
  • We discovered a bug with the binutils 2.19.1 tool chain that was used as part of QNX 6.5.0 SP1 software to compile the QNX hands-free library for QNX. The binutils assembler (as) contained a bug that causes the incorrect translation of a particular VMLS.F32 ARM NEON instruction (if VMLS.F32 was used with single registers such as s0, s1 instead of d0, d1, or q0, q1) into machine code.

    As the QNX 6.5.0 SP1 tool chain doesn't create NEON-specific output that contains the VMLS.F32 instruction from C source-code, this bug could cause an issue only for hand-coded assembler code. The QNX Acoustics for Voice 3 hands-free library contains NEON-specific assembler code with VMLS.F32 instructions of the particular type, so the output of QAV 3 could be compromised for certain input signals. We created a patch to the binutils 2.19.1 that fixes this bug, and we've rebuilt QAV 3.0 using a patched QNX 6.5.0 SP1 tool chain. File-mode testing verified that the original issue is now absent. (Ref# J1258521)

  • We've updated the section on High Frequency Encoding (HFE) in the User's Guide. (Ref# J1263549)
  • Wind buffet removal no longer attacks voice as a result of incorrect speech present flags. (Ref# J730214, J918515)
  • qwaRcsProcessAudioInject() now correctly injects on RecvOut. For QNX Acoustics for Voice 3.0.0, requests from QWALive to inject on RecvOut to legacy applications that used the deprecated qwaRcsProcessAudioInject() API for injection would be refused. There are no issues if the new (recommended) qwaRcsAudioInjectInput() and qwaRcsAudioInjectOutput() APIs are used. (Ref# J885431)
  • The wind-block algorithm is no longer over-aggressive during sudden and large noise increases. (Ref# J220682)

Known issues

  • When the true system latency and the AEC latency as set by qwaRefDelay are significantly different, qwaAECEchoAlign can return values that are misleading. It can be in the wrong direction, or it can return a value close to zero when the true error is very large. (Ref# J221004)

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.