• version-0.5.1 f43f1b450e

    version-0.5.1
    All checks were successful
    Release / create-release (push) Successful in 12s
    Release / apk (push) Successful in 5m14s
    Stable

    eric released this 2026-09-30 18:36:42 +02:00 | 19 commits to main since this release

    • Refactored audio pipeline with a shared clock pacing strategy and new node types (Converter, DelayNode, PaceNode, FlacDelayNode, FlacPacerNode).

    • Implemented FLAC segment handling: frame discarding, conditional delay application, and sink behavior to ignore FLAC when PCM encoding is expected.

    • Enforced robust playback restarts across multiroom environments with strict session management ordering.

    • Fixed playback clock state: corrected seeking/stopping logic to properly reset the renderer's internal clock.

    • Implemented acoustic latency calibration via WebSockets: chirp generation/detection, frequency band detection, and room delay calculation for audio synchronization.

    • Introduced CalibrationHub and DelayStore trait for persistent delay management; delays remain constant within a session and adjust only between sessions.

    • Added median-based base latency calculation, persistent fine adjustments, and session termination based on measurement stability.

    • Refined multiroom playback: dynamic renderer rejoining, group management, direct FLAC sink client connections, and branch management for delay injection.

    • Added native transport volume and seek controls via JNI interface with updated event dispatch for volume changes and errors.

    • Implemented volume calibration and device lifecycle monitoring; enforces volume constraints and manages paired adjustments across unheard rooms.

    • Refined calibration logic: volume balancing, amplitude measurement, session synchronization, and inter-branch consistency.

    • Enhanced diagnostic tracking for playback position, renderer state, elapsed time (play/stop), and device online/offline status.

    • Introduced diagnostic probing mechanisms for performance monitoring and latency calculation.

    • Added instrumentation to monitor physical renderer playback position and internal clock state during transport operations.

    • Refactored stream management: reset device clocks, purge pending data, restart encoders during transitions, and clear encoder inputs on session reset.

    • Implemented comprehensive testing suites validating session failure modes, trimming functionality, measurement integrity, timing constraints, alignment status transitions, and real-time stream behavior.

    • Added new data models for session tracking, pair measurements, and final alignment reporting.

    • Updated documentation for renderer flow and sink implementation; clarified ShiftNode interruption handling.

    Downloads