Skip to content

Releases: SAMDestroy/AVRControl

Release v1.6.0.0

08 Jun 20:16

Choose a tag to compare

πŸ“¦ Which version should I download?
To make it easy for everyone, I provide three different versions of AVRControl. Choose the one that fits your system:

  1. Standalone:
    File: AVRControl-v1.6.0.0-Win-x64-Standalone.zip
    Who is it for? Everyone who wants to "just run it".
    Pros: No need to install any .NET runtimes. It contains everything needed to run out of the box.
    Cons: Larger download size (~60 MB).

  2. Small / Lightweight:
    File: AVRControl-v1.6.0.0-Win-x64-Dependent.zip
    Who is it for? Users who already have .NET 10 installed or want a tiny download.
    Requirement:
    You must have the .NET 10 Desktop Runtime installed on your PC.
    Pros: Ultra-small file size (< 1 MB).

  3. ARM64 Native (For modern Tablets & Mobile PCs):
    File: AVRControl-v1.6.0.0-Win-Arm64-Standalone.zip
    Who is it for? Users with ARM-based Windows devices (e.g., Surface Pro 11, Snapdragon X Elite laptops).
    Pros: Runs natively on ARM hardware for best performance and battery life. No emulation needed.


Changelog

πŸš€ AVRControl v1.6.0.0 – The Advanced Audio Matrix Release

  • This release introduces a completely redesigned Audio Modes Matrix, giving you full, real-time command over 16 distinct sound formats of your Denon/Marantz AVR.
  • The entire system has been heavily refined to ensure absolute, instant synchronization between what you see on your monitor and what your receiver is actually doing.

✨ New Features

  • Advanced Audio Modes Matrix: A beautiful, newly integrated tab page splitting 16 dedicated audio modes into clean, logical categories (Standard/Upmixers, Purist Modes, and DSP Environments).
  • Real-Time Format Synchronization: The active selection snaps into place instantly, reflecting the AVR's true state. If you switch inputs or formats, the app follows immediately.
  • Flicker-Free UI Rendering: Re-engineered how the user interface redraws itself. Changing modes or receiving heavy background status updates now happens completely silently and without visual flickering.
  • Expanded Audio Format Coverage: Full native UI support for cinema and streaming audio formats, including Dolby TrueHD + DSur, Dolby Atmos, DTS-HD Master Audio, native DTS:X, and streaming-centric Dolby Digital Plus (DD+DSUR).

πŸ› οΈ Technical Improvements

  • Modernized Network Stack: Fully overhauled the background update-check and XML parsing engines to run completely non-blocking, ensuring a lighter network footprint and smoother app performance.
  • High-DPI Display Precision: Enabled advanced screen scaling, ensuring that the interface and fonts remain sharp on high-resolution displays.
  • Small Repository: Completely purged obsolete legacy dependencies and old configuration files from the backend, leaving a significantly lighter and cleaner application footprint.

πŸ› Bugfixes

  • Fixed: Resolved a synchronization bug where forcing incompatible audio modes could leave the app out of sync with the physical receiver.
  • Fixed: Extended the text normalization engine to prevent complex audio stream names from dropping selection points.
  • Fixed: Eliminated redundant interface redraws to keep background resource usage near zero percent during long movie or music sessions.

Developer Note:

  • v1.6.0.0, focused heavily on bridging the real-time feedback of the AVR with the Windows Forms interface. While optimizing for the cutting-edge .NET 10 SDK, intentionally chose to halt automatic Roslyn code refactoring beyond essential cleanups. Modern compiler suggestions frequently advocate for highly abstracted, compressed syntax rules (such as range indices data[2..] or advanced inline shortcuts) that heavily degrade immediate human code readability.
  • Initially attempted to clear every single code analysis message, but ultimately drew the line to protect the project's clarity. To preserve AVRControl as a deeply transparent, easily maintainable, and community-friendly open-source project, explicit readability was prioritized over purely academic compiler micro-optimizations. Code should be clean, but above all, it must remain human-readable.

License

This project is licensed under the GPL V3 License. See the LICENSE file for details.
This means you are free to use, modify, and distribute the software, provided that the original copyright notice is included.

Created for personal needs – I hope you find it useful!
cya
SAMDestroy

Release v1.5.3

31 May 21:02

Choose a tag to compare

πŸ“¦ Which version should I download?
To make it easy for everyone, I provide three different versions of AVRControl. Choose the one that fits your system:

  1. Standalone:
    File: AVRControl-v1.5.3-Win-x64-Standalone.zip
    Who is it for? Everyone who wants to "just run it".
    Pros: No need to install any .NET runtimes. It contains everything needed to run out of the box.
    Cons: Larger download size (~60 MB).

  2. Small / Lightweight:
    File: AVRControl-v1.5.3-Win-x64-Dependent.zip
    Who is it for? Users who already have .NET 10 installed or want a tiny download.
    Requirement:
    You must have the .NET 10 Desktop Runtime installed on your PC.
    Pros: Ultra-small file size (< 1 MB).

  3. ARM64 Native (For modern Tablets & Mobile PCs):
    File: AVRControl-v1.5.3-Win-Arm64-Standalone.zip
    Who is it for? Users with ARM-based Windows devices (e.g., Surface Pro 11, Snapdragon X Elite laptops).
    Pros: Runs natively on ARM hardware for best performance and battery life. No emulation needed.


Changelog

πŸš€ AVRControl v1.5.2.0 – The .NET 10 Upgrade

  • This major update marks the transition to .NET 10, bringing significant performance gains and a completely overhauled deployment system.
  • Beyond the "Self-Healing UI," modernized app’s DNA to ensure it runs natively and flawlessly on the latest Windows hardware.

✨ New Features

  • Native ARM64 Support: AVRControl now runs natively on ARM-based Windows devices (like the new Surface Pro or Snapdragon X Elite PCs).
    No more emulation – just pure, efficient performance.
  • Universal Deployment Options: Two ways to run AVRControl:
  • Standalone (Zero-Install): Everything included. Runs even if .NET is not installed on your PC.
  • Lightweight (Framework-Dependent): A tiny, ultra-optimized executable for users who already have the .NET 10 Runtime.
  • Self-Healing UI Architecture: The playback interface now features "Instant-Recovery" logic. If the app wakes up from standby, it actively heals the timeline and metadata within milliseconds of reconnection.
    Persistent Service Guardian: Correctly maintains source metadata (Spotify/TuneIn) instead of allowing the AVR to overwrite them with a generic "HEOS" label.

πŸ› οΈ Technical Improvements

.NET 10 SDK Migration:

  • Fully migrated to the modern SDK-style project system.
  • Removed legacy AssemblyInfo.cs dependencies and centralized all metadata, resulting in a cleaner, faster-compiling codebase.

Robust Metadata Engine:

  • Re-engineered the versioning system. Update checks now use direct Assembly metadata instead of fragile string parsing, making the update process "bulletproof" against modern Git-revisioning.

Optimized Single-File Packaging:

  • Implemented advanced compression for our standalone releases, reducing the footprint of the "all-inclusive" EXE by over 50% while maintaining lightning-fast start times.
  • Asynchronous Telnet Core 2.0: Optimized with SemaphoreSlim and StringBuilder buffering to handle high-traffic TCP fragmentation without losing commands.

πŸ› Bugfixes

  • Fixed: Resolved a critical crash in the update-check engine caused by modern Git-commit metadata in the version string.
  • Fixed: Eliminated the "Suicidal Timer" glitch where the engine would stop during network watchdog resets.
  • Fixed: Improved TCP Framing to prevent misinterpreted HEOS JSON strings caused by fragmented network packets.
  • Fixed: Cleaned up obsolete COM-references and legacy GUIDs for a more secure and modern application footprint.

Developer Note:

  • v1.5.2.0 is not just an update; it's a foundation for the future. By moving to .NET 10 and adopting a native 64-bit/ARM64 architecture,
  • AVRControl is now faster and more reliable than ever. Whether you're on a high-end workstation or a mobile ARM tablet, your AVR control remains rock solid.

License

This project is licensed under the GPL V3 License. See the LICENSE file for details.
This means you are free to use, modify, and distribute the software, provided that the original copyright notice is included.

Created for personal needs – I hope you find it useful!
cya
SAMDestroy

AVRControl V1.5.1.0

26 May 19:33

Choose a tag to compare

πŸ“¦ Which version should I download?
To make it easy for everyone, I provide three different versions of AVRControl. Choose the one that fits your system:

1. Standalone:
File: AVRControl_v1.5.1.0_win-x64_standalone.zip
Who is it for? Everyone who wants to "just run it".
Pros: No need to install any .NET runtimes. It contains everything needed to run out of the box.
Cons: Larger download size (~60 MB).

2. Small / Lightweight:
File: AVRControl_v1.5.1.0_win-x64_dependent.zip
Who is it for? Users who already have .NET 9 installed or want a tiny download.
Requirement:
You must have the .NET 9 Desktop Runtime installed on your PC.
Pros: Ultra-small file size (< 1 MB).

3. ARM64 Native (For modern Tablets & Mobile PCs):
File: AVRControl_v1.5.1.0_win-arm64_standalone.zip
Who is it for? Users with ARM-based Windows devices (e.g., Surface Pro 11, Snapdragon X Elite laptops).
Pros: Runs natively on ARM hardware for best performance and battery life. No emulation needed.


Changelog:

πŸš€ AVRControl v1.5.1.0 – The .NET 9 Modernization Update

  • This major update marks the transition to .NET 9, bringing significant performance gains and a completely overhauled deployment system.
  • Beyond the "Self-Healing UI," modernized app’s DNA to ensure it runs natively and flawlessly on the latest Windows hardware.

✨ New Features

  • Native ARM64 Support: AVRControl now runs natively on ARM-based Windows devices (like the new Surface Pro or Snapdragon X Elite PCs).
    No more emulation – just pure, efficient performance.
  • Universal Deployment Options: Two ways to run AVRControl:
  • Standalone (Zero-Install): Everything included. Runs even if .NET is not installed on your PC.
  • Lightweight (Framework-Dependent): A tiny, ultra-optimized executable for users who already have the .NET 9 Runtime.
  • Self-Healing UI Architecture: The playback interface now features "Instant-Recovery" logic. If the app wakes up from standby, it actively heals the timeline and metadata within milliseconds of reconnection.
    Persistent Service Guardian: Correctly maintains source metadata (Spotify/TuneIn) instead of allowing the AVR to overwrite them with a generic "HEOS" label.

πŸ› οΈ Technical Improvements

.NET 9 SDK Migration:

  • Fully migrated to the modern SDK-style project system.
  • Removed legacy AssemblyInfo.cs dependencies and centralized all metadata, resulting in a cleaner, faster-compiling codebase.

Robust Metadata Engine:

  • Re-engineered the versioning system. Update checks now use direct Assembly metadata instead of fragile string parsing, making the update process "bulletproof" against modern Git-revisioning.

Optimized Single-File Packaging:

  • Implemented advanced compression for our standalone releases, reducing the footprint of the "all-inclusive" EXE by over 50% while maintaining lightning-fast start times.
  • Asynchronous Telnet Core 2.0: Optimized with SemaphoreSlim and StringBuilder buffering to handle high-traffic TCP fragmentation without losing commands.

πŸ› Bugfixes

  • Fixed: Resolved a critical crash in the update-check engine caused by modern Git-commit metadata in the version string.
  • Fixed: Eliminated the "Suicidal Timer" glitch where the engine would stop during network watchdog resets.
  • Fixed: Improved TCP Framing to prevent misinterpreted HEOS JSON strings caused by fragmented network packets.
  • Fixed: Cleaned up obsolete COM-references and legacy GUIDs for a more secure and modern application footprint.

Developer Note:

  • v1.5.1.0 is not just an update; it's a foundation for the future. By moving to .NET 9 and adopting a native 64-bit/ARM64 architecture,
  • AVRControl is now faster and more reliable than ever. Whether you're on a high-end workstation or a mobile ARM tablet, your AVR control remains rock solid.

License

This project is licensed under the GPL V3 License. See the LICENSE file for details.
This means you are free to use, modify, and distribute the software, provided that the original copyright notice is included.

AVRControl V1.5.0

07 May 14:26

Choose a tag to compare

πŸš€ AVRControl v1.5.0 – The Resilience & Recovery Update
This major update focuses on "Bulletproof Synchronization." We’ve re-engineered the communication core to ensure the app remains perfectly synced, even after laptop sleep cycles or critical network watchdog events.

✨ New Features

  • Self-Healing UI Architecture: The playback interface now features "Instant-Recovery" logic. If the app wakes up from standby, it no longer waits for a song change to refresh. It actively heals the timeline, progress bar, and metadata labels within milliseconds of reconnection.
  • Persistent Service Guardian: Introduced a secondary metadata layer that prevents the AVR from overwriting specific streaming service names (like Spotify or TuneIn) with the generic "HEOS" label. Your source display now correctly maintains its "Higher Truth" metadata.
  • Dynamic Playback Synchronization: The UI now intelligently distinguishes between "System Pause" and "Network Lag," ensuring the timer only runs when the hardware actually moves, providing a 100% reliable representation of the current playback state.

πŸ› οΈ Technical Improvements

  • Asynchronous Telnet Core 2.0: Heavily optimized the underlying Telnet client with SemaphoreSlim for thread-safe command queuing and a dedicated StringBuilder buffer to handle TCP fragmentation. This ensures no command or response is lost during high-traffic updates.
  • Fail-Safe Timer Engine: Re-engineered the internal 100ms clock. The engine now enters a "Smart Idle" mode instead of self-terminating when the AVR is temporarily unreachable, allowing for a seamless resume without manual intervention.
  • Decoupled Port Logic: Fully separated the Hardware-State (Port 23) from the Content-State (Port 1255). This decoupling eliminates race conditions where one port would "choke" the other during simultaneous reconnection attempts.

πŸ› Bugfixes

  • Fixed: Resolved the "Frozen Timeline" bug where the progress bar would stop animating and the time-label would go empty after the laptop resumed from sleep.
  • Fixed: Corrected the "Source-Name Race Condition" where the AVR would repeatedly overwrite the active streaming service name with a generic "HEOS" string.
  • Fixed: Eliminated the "Suicidal Timer" glitch, where the playback engine would permanently stop if the AVR’s status response was delayed by a few milliseconds during a watchdog reset.
  • Fixed: Improved TCP Framing to prevent misinterpreted HEOS JSON strings caused by fragmented network packets.

Developer Note:
v1.5.0 is all about reliability. By moving away from a "fragile" state-machine to a "self-healing" architecture, AVRControl can now survive network jitter and system power states that would crash standard Telnet implementations. This version represents the most stable release to date.

License

This project is licensed under the GPU V3 License. See the LICENSE file for details.
This means you are free to use, modify, and distribute the software, provided that the original copyright notice is included.

AVRControl V1.3.0

31 Mar 18:38

Choose a tag to compare

πŸš€ AVRControl v1.3.0 – The Visual Precision Update
This release introduces a completely redesigned, lag-free playback engine and a surgical fix for the most persistent Windows UI bugs.

✨ New Features

  • High-Performance Progress Engine: Replaced the legacy Windows Progress Bar with a custom-engineered Dual-Panel Progress System. This provides a rock-solid, non-animated, and frame-perfect visual representation of your music playback.
  • Aesthetic: The new progress bar features a clean, high-contrast design, eliminating the distracting "Windows Green Glow" for a focused, modern interface.
  • Zero-Latency Timecode: Optimized the synchronization between the local 100ms timer and the HEOS Telnet pulse. The playback bar now glides smoothly without the typical "jumping" seen in standard OS controls.

πŸ› οΈ Technical Improvements

  • Intelligent Metadata Guard: Implemented a new State-Pending Logic for HEOS events. The app now distinguishes between a real track change and background metadata updates (like covert art refreshes), preventing accidental progress resets.
  • Smart Plausibility Filter: Introduced a "Ghost-Zero" protection that filters out invalid 0ms-timecodes often sent by the AVR during network jitter, ensuring the timeline remains stable even under unstable conditions.
  • Engineered Rendering: Switched to a manual width-calculation rendering for the playback bar. This bypasses the heavy Windows GDI+ animation engine, drastically reducing UI overhead and flickering.

πŸ› Bugfixes

  • Fixed: Resolved the "Middle-of-Song Jump" where the progress bar would occasionally reset to 0:00 during active playback due to misinterpreted HEOS change-events.
  • Fixed: The "Vanishing Icon" bug is now permanently addressed through a new Handle-Created Master Fix and Icon-Cloning. The app icon now remains anchored in the taskbar even after DPI changes or deep sleep cycles.
  • Fixed: Corrected a UI-layering issue where the time-label would occasionally become obscured by the progress background.

Developer Note:
The transition from a standard ProgressBar to a custom Panel-based system was necessary to overcome native Windows limitations. This update marks a significant step towards a professional-grade desktop controller with 100% visual reliability.

License

This project is licensed under the GPU V3 License. See the LICENSE file for details.
This means you are free to use, modify, and distribute the software, provided that the original copyright notice is included.

AVRControl V1.2

17 Mar 16:19

Choose a tag to compare

πŸš€ AVRControl v1.2.0 – The Audio Precision Update
This release introduces advanced speaker calibration tools and a high-resilience network engine for seamless control.

✨ New Features

  • Advanced Speaker Control: A dedicated new tab for real-time channel level adjustments (Channel Volume Offset), mirroring the precision of the original web interface.
  • Master Subwoofer Slider: Control both subwoofers simultaneously with the Master Slider. It features a smart Delta Protection system that preserves your custom level ratio between Sub 1 and Sub 2 while moving.
  • One-Click Speaker Reset: A new global "Reset" button that instantly returns all speaker offsets to a neutral 0.0 dB state with a synchronized hardware refresh.
  • Authentic DB Display: All speaker labels feature high-precision dB readouts, including the characteristic "+" and "-" prefixes (e.g., +1.5 dB) for a true AVR feel.

πŸ› οΈ Technical Improvements

  • Standby Resilience: Completely overhauled the TCP Watchdog. The app now survives standby and hibernate cycles, performing a silent "Self-Healing" reconnect upon wake-up.
  • Smart Command Throttling: Implemented a hardware-safe 50ms/100ms throttle for all sliders. This prevents network buffer overflows and ensures smooth, lag-free communication with the AVR.
  • Flicker-Free UI: Introduced a new state-locking mechanism (isScrolling) that prevents sliders from "jumping" or "jittering" while the user is actively making adjustments.
  • Optimized Power Management: Integrated an intelligent UI-Gate that automatically switches the app back to the Main Tab when the AVR is powered off, ensuring a clean state for the next session.

πŸ› Bugfixes

  • Fixed: Resolved the "Disappearing Icon" issue where the app icon would vanish from the taskbar after a Windows standby/resume cycle.
  • Fixed: Improved Telnet parser stability to handle fragmented multi-line responses during high-traffic status updates.
  • Fixed: Corrected the "Subwoofer EL" command syntax specifically for X-Series models to ensure 100% command acceptance.

Developer Note:
The new Speaker Control operates on the Channel Volume (CV) level. This allows for safe, temporary adjustments during playback without overwriting your permanent Audyssey room calibration.

AVRControl V1.1

07 Mar 15:11

Choose a tag to compare

πŸš€ AVRControl v1.1.0 – The Architecture Update
This release marks a major milestone in system stability, modular design, and user flexibility.

πŸ’‘ Deployment Options & Flexibility

  • Portable Mode: Run the app directly from any folder. Perfect for users who prefer to pin the app to the Taskbar or manage their own custom Autostart entries. In this mode, the Systray option can be toggled on or off freely.
  • Installation Mode: Use the built-in "Install" feature to automatically set up AVRControl in your Roaming directory with a Windows Autostart entry. Note: To ensure seamless background operation, the Systray mode is permanently enabled and locked when installed.

✨ New Features

  • Enhanced Tray Menu: New context menu featuring a direct link to the GitHub project page, a dedicated "Show/Hide" toggle, and modernized icons.
  • Smart Config System: Migrated to a key-value based configuration (AVRControl.cfg). Settings like IP and Systray status are now stored securely with specific identifiers.
  • Robust XML Parsing: Friendly name retrieval (e.g., "PlayStation") is now asynchronous. Built-in timeouts and fallbacks prevent crashes during AVR reboots or firmware updates.

πŸ› οΈ Technical Improvements

  • Modular Architecture: Fully transitioned to Partial Classes. Logic is now separated into specialized modules (Parser, Toggles, Setup, Helpers), significantly improving maintainability.
  • Zero-Dependency Release: The GitHub update system now uses native string parsing. The application requires no external DLLs and remains a clean, single EXE file.
  • Optimized State Management: Separated connection status (Port Check) from actual Power Status (Telnet feedback) to prevent false UI indications.

πŸ› Bugfixes

  • Fixed: "Connection Refused" exception handled for port 8080 during AVR boot cycles.
  • Fixed: Initializing issue where isRunningFromRoaming failed to detect the installation status in partial classes.
  • Fixed: Eliminated UI flickering and redundant config write-access through improved focus checks.

V1.0

17 Feb 20:00

Choose a tag to compare

Initial Release