Skip to content

V1.2.1

Choose a tag to compare

@LSXPrime LSXPrime released this 14 Aug 14:06
· 3 commits to master since this release

SoundFlow v1.2.1 Release Notes

This release focuses on improving the reliability of network audio playback and introduces side performance optimization for a smoother, more resilient experience. The highlight is a new background buffering system that isolates the audio engine from network instability, preventing common playback failures and crashes.


✨ Improvements & Performance Gains

  • Optimized Audio Device Enumeration to Reduce Memory Usage: The process of enumerating audio devices (EnumerateDevices) has been updated to reuse its internal device list buffer instead of allocating a new array on every call. This significantly reduces memory allocations and garbage collector pressure, improving overall performance in applications that frequently poll for device changes.

🐛 Bug Fixes

  • Network & Streaming
    • Fixed Audio Engine Crashes from Unstable Network Streams: Resolved a critical issue where an unstable network connection or a stream that closed prematurely could throw an HttpIOException directly on the sensitive audio processing thread. This would cause an unrecoverable crash of the audio device callback, stopping all playback. The DirectStreamProvider now utilizes a new BufferedNetworkStream which downloads and caches audio in a background task. This buffering strategy decouples the audio thread from network volatility, allowing it to handle sudden connection drops gracefully by treating it as the end of the stream, rather than a fatal error. This makes all network audio playback significantly more robust and reliable.
  • Core Audio
    • Restoring Loop Points Functionality: The core audio engine now proactively checks for loop boundaries before audio generation. This addresses an issue where specific loop end points were not consistently respected, ensuring that audio loops as intended, even in scenarios with custom loop ranges.