-
version-0.4.21
StableAll checks were successfulRelease / create-release (push) Successful in 10sreleased this
2026-09-20 00:45:13 +02:00 | 79 commits to main since this release-
Added previous track playback from renderer queue with dedicated API endpoint
-
Implemented
Volume,Seek, andMutecontrol commands -
Added
purgecommand to reset queue state; redefinedstopas a backend sequence ofpause+purge -
Introduced flow control with client-side back-pressure, epoch/grant signals, and explicit state management
-
Corrected playback position calculation after seek; progress bar now resets accurately based on epoch start times
-
Resolved epoch management issues ensuring unique initialization and preventing expired epochs from discarding audio frames
-
Fixed missing sample rate handling during encoder setup
-
Eliminated deadlocks and track continuation limitations in control point queue management
-
Improved underrun frame tracking and buffering to prevent startup glitches
-
Aligned client-side state enumeration with
PlaybackState::Stoppedremoval -
Refactored playback pipeline with epoch-aware transition gating for gapless playback status
-
Migrated track announcement logic to the renderer; implemented async queue management with prefetching
-
Introduced
DeviceAdaptertrait defining stop/seek/load handlers and device contracts -
Decoupled client logic into a platform-agnostic player core for WebPlayer
-
Enhanced transport layer: handles client reconnections, discards stale streams, and manages restarts via
Sessionstruct -
Renderer now handles thread-safe command dispatch and PCM chunk processing
-
Updated protocol serialization for position reporting with new
start_secfield -
Synchronized UI with actual audio playback events; refined natural vs. user-initiated track transition handling
-
Implemented broadcast pacing/cancellation via
stop_token; added intelligent backpressure to skip frames on timing failures -
Enforced interruptible auxiliary task requirements to fix pacing issues and allow direct task abortion
-
Refined position event pipeline to ignore unreliable general data;
PlayerEvent::TrackEndednow transitions state toPlaybackState::Transitioning
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-