QNX Technical Articles
QNX Software Development Platform 7.0—Audio (Build 7.0.387.S201710021920): Release Notes
Date of this edition: October 16, 2017
This update includes fixes to existing functionality and generic audio drivers for the Audio components in the QNX Software Development Platform.
Target OS: This update is compatible with targets that are running the QNX® Neutrino® RTOS 7.0.
Host OS: To apply this update, you must have the QNX Software Development Platform 7.0 installed on one of the following development hosts:
- Microsoft Windows 10 Professional 64-bit, Windows 8.1 Professional 64-bit, or Windows 7 Professional 64-bit
- Linux Red Hat Enterprise Linux 7 64-bit, or Ubuntu Desktop 16.04 LTS 64-bit
- macOS version 10.10, 10.11, 10.12
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?
Packaging
This update includes fixes and updates to Audio core functionality and drivers in the following packages:
- Audio—Core
- Audio—Drivers PC Generic
- Audio—Drivers USB
This update includes the packaging changes and fixes from the previous Audio update. You'll find the packages under the Available tab in the QNX Software Center; however, if you have the previous update installed, you'll find them in the Updates tab. For information about the previous Audio update, see the QNX Software Development Platform 7.0—Audio BuildID 237(Build 7.0.237.S201706290957): Release Notes.
Files and binaries installed with this update
You can use the QNX Software Center on your development host to see the contents of the packages.
To see the contents of the Audio - Core package, do the following:
- On the Updates or Available tab, expand and then Audio.
- Right-click and then choose Properties.
- In the Properties for QNX SDP 7.0 Audio - Core window, click Package Contents.
To see the contents of a driver package, do the following:
- On the or Updates or Available tab, expand Target Packages and then Audio.
- Right-click the appropriate QNX SDP 7.0 Audio - Drivers package and choose Properties.
- In the Properties window, click Package Contents.
Functionality updates
This update provides the following functionality and behavior changes in these packages:
Audio—Core changes:
- Previously, the audio configuration file could only be read when io-audio starts.
If you dynamically load a driver, there was no mechanism available to use
driver settings from a configuration file.
In this update, you can pass a unit option when you use the mount command to dynamically load a driver DLL. This loads the driver settings from the audio configuration file that was specified when you started io-audio. Optionally, you can also provide a driver-specific configuration file using the config option with the mount command. For more information, see
io-audio
in the QNX Neutrino Utilities Reference guide. -
Control events are now available, which allow you to monitor audio management and
determine the active audio types that are running on the system. The following
new APIs have been added:
- snd_ctl_ducking_read()
- snd_ducking_status_t
- snd_ducking_type_status_t
-
A limiter option is now available to minimize
distortion when mixing. For more information, see
Software PCM mixing
in the Audio Architecture chapter of the Audio Developer's Guide. (Ref# J1024229)
Fixed issues
This update fixes these issues in these packages:
Audio—Core fixes:
- Queued PCM events are now properly deallocated when the client closes its connection. (Ref# J2196484)
- Now, when you call snd_pcm_link() to link a
new stream to an existing group, it no longer re-initializes existing
streams in the group to SND_PCM_LINK_MODE_SYNC that you had changed by calling
snd_pcm_link_mode()
before calling snd_pcm_link().
Previously, when you called snd_pcm_link() after you called pcm_link_mode(), the mode of the specified handles in the group were reset to SND_PCM_LINK_MODE_SYNC. For example, suppose you had linked stream #1 and stream #2, and then called snd_pcm_link_mode() on both streams to set the mode to SND_PCM_LINK_MODE_ASYNC. If you then add stream #3 to the link group by linking stream #1 and stream #3, snd_pcm_link() would re-initialize the link modes for stream #1 and #3 to SND_PCM_LINK_MODE_SYNC and stream #2 would remain set to SND_PCM_LINK_MODE_ASYNC. (Ref# J2198452)
- Audio types with the same priority level and have duck_same_prio_policy=mix must have the same values set for the duck_lower_prio_percent in audio policy configuration file. Now, the audio policy configuration is validated to ensure that this requirement is met; otherwise the configuration fails to load. (Ref# J2219655)
- Now the mixer is paired with the same card number as its PCM device. Previously, the mixer was being paired by default to card 0, regardless of the PCM device's card number. (Ref# J2218223 )
- Robustness has been added to prevent discontinuity and choppiness in an audio stream when it first starts. (Ref# J2206151)
- When you call snd_pcm_plugin_set_src_mode() and set the second argument to SND_SRC_MODE_NORMAL, it no longer disables the PLUGIN_BUFFER_PARTIAL_BLOCKS flag. As such, when you snd_pcm_plugin_write() with a size that isn't a multiple of the fragment size, it no longer fails with -EINVAL. (Ref# J2205585)
- The wave.c and waverec.c examples no longer have memory leaks. (Ref# J2179091)
- Robustness added to improve option processing and parsing of memory options. (Ref# J2165838)
- Improved the quality of volume ramping. (Ref# J1681529)
- The third argument in the snd_pcm_set_filter() function can now be passed as a const. (Ref# J1690053)
Audio—Drivers PC Generic fixes:
- Added support for Generic I2S codecs and mixer DLLs. (Ref# J2212803)
- Support added for the VT1708S codec for the Intel HDA (High-Definition Audio) driver. (Ref# J2186647)
Audio—Drivers USB fixes:
- Now the VID and DID attach on the devices that match the specified VID and DID. Previously, the VID and DID didn't filter the devices that the Audio USB driver attaches to. (Ref# J2232249)
Known issues
There are no known issues with this update.
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.