Skip to content

Develop - clipboard file sync and efficiency - #180

Merged
sameerasw merged 4 commits into
mainfrom
develop
Feb 7, 2026
Merged

Develop - clipboard file sync and efficiency#180
sameerasw merged 4 commits into
mainfrom
develop

Conversation

@sameerasw

Copy link
Copy Markdown
Owner

This pull request introduces several improvements and optimizations to device discovery, music info syncing, volume control, file transfer, and general project versioning. The most significant changes include enhancements to music artwork syncing (using hashes to avoid redundant transfers), switching volume control to use CoreAudio APIs, optimizing timers for device discovery and pruning, and updating file transfer protocols to support clipboard transfers.

Device and Music Info Sync Improvements:

  • Music artwork syncing now uses SHA256 hashes to avoid sending redundant artwork, improving efficiency and reducing unnecessary data transfer. The snapshot comparison and payload logic in MacInfoSyncManager have been updated accordingly. [1] [2] [3] [4]
  • The outgoing WebSocket status message now only includes album artwork if it has changed, and the logic for music info payload is more robust.

Volume Control Enhancements:

  • Volume control in MacRemoteManager now uses CoreAudio APIs for direct system volume manipulation, replacing AppleScript for better reliability and performance. Monitoring is started/stopped based on active WebSocket sessions. [1] [2]
  • Volume monitoring is now managed based on WebSocket session count, ensuring it only runs when needed.

Device Discovery and Pruning Optimization:

  • UDP device discovery broadcast and pruning timers have been adjusted to run less frequently (every 10 seconds instead of 2–3 seconds), reducing CPU usage and improving UI responsiveness. [1] [2]

File Transfer Protocol Updates:

  • File transfer initialization now supports an isClipboard flag, allowing for clipboard-specific transfers. This is reflected in the protocol and WebSocket file sending logic. [1] [2] [3] [4]

Project Versioning and Miscellaneous:

  • Project version updated from 2.5.0 to 2.5.1 in multiple project files for both macOS and Android. [1] [2] [3] [4]
  • The notification animation now plays once instead of looping for a better user experience.
  • WebSocket activity timeout increased to 11 seconds for improved reliability.

Let me know if you have questions about any of these changes or want to dive deeper into a particular area!

@sameerasw sameerasw self-assigned this Feb 7, 2026
@sameerasw sameerasw added the enhancement New feature or request label Feb 7, 2026
@sameerasw
sameerasw merged commit 7fb36ef into main Feb 7, 2026
1 check passed
@github-project-automation github-project-automation Bot moved this from Backlog to Done in AirSync Features and Bugs Feb 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

1 participant