WARNING: a severe bug has been identified in this release that can prevent FlexASIO from working with many applications. See #231. It is strongly recommended to use FlexASIO 1.10b instead.
Significant changes
- The default DirectSound backend is now capable of transporting floating-point and 24-bit integer samples. Previously it would always downconvert to 16-bit. See PortAudio/portaudio#774.
- The MME backend is now capable of transporting floating-point and 24-bit integer samples. Previously it would always downconvert to 16-bit. See PortAudio/portaudio#796.
- Fix issue where FlexASIO could crash applications or otherwise cause erratic behavior after it is deinitialized, especially if that is done repeatedly. See #209.
- Fix issue where FlexASIO would crash some applications that already link with PortAudio directly (e.g. Mixxx, Polyphone). See #182.
- This was originally fixed in FlexASIO 1.5 (see #47), but regressed again in FlexASIO 1.8.
- Fix issue where FlexASIO would crash applications that attempt to use multiple FlexASIO instances at the same time. See #183, #230.
- This would notably affect Synchronous Audio Router (SAR) and potentially applications based on the xt-audio library.
Minor changes
- Sample rate probing is now more efficient and should return correct results even while an exclusive stream is running. See #188, #66.
- Previously, FlexASIO would report all sample rates as available while an exclusive stream is running.
- Fix issue where WDM-KS is not able to probe sample rates of WaveRT-based devices, and is not able to open them if the suggested latency is zero. See #159, PortAudio/portaudio#761.
- Fix issue where WDM-KS would produce glitchy recordings from WaveRT-based devices. See PortAudio/portaudio#752.
- Fix issue where FlexASIO may output corrupted audio if an application readies output buffers after returning from
bufferSwitch()
. See #180. - The maximum sample rate has been increased from 384 kHz to 768 kHz. See PortAudio/portaudio@ed922d9.
- Fix a potential issue where FlexASIO would reject control panel calls if they are made before initialization. See #184.
- Fix a bug in FlexASIOTest where it would always operate in "inhibit
OutputReady()
" mode even if the--inhibit-output-ready
command line option wasn't passed.