Roon 2.70 and ARC 1.80 are Live!

Hey Everyone,

Roon 2.70 is a significant performance-focused release. We are moving directly from 2.67 to 2.70 because it brings together several foundational changes across search, library browsing, memory management, and Roon Remote on mobile devices

Improving Roon’s performance remains one of our highest engineering priorities. A large part of our current work is focused on making Roon feel consistently fast, responsive, and dependable, so that your attention stays on discovering and enjoying music rather than dealing with slowdowns or interruptions.

This release delivers the next major group of improvements in that effort. The changes are spread across different parts of Roon, but they all serve the same goal: reducing unnecessary work, lowering memory use, and making Roon more responsive as your library and usage grow.

We believe many customers will notice a meaningful improvement, especially those with larger libraries, frequent library changes, multiple connected devices, or long-running RoonServer installations.

At the same time, this is not the end of our performance work. We know that some customers may still encounter situations where Roon becomes slower than it should be. We are continuing to investigate those cases and are actively working on the next set of improvements.

Faster library search

We have replaced Roon’s in-house library search index with Tantivy, a fast Rust-based full-text search engine.

This change is designed to make existing library search behavior faster. It is not intended to change what Roon finds or how results are ranked.

Users with larger libraries should see the biggest benefit, particularly those with more than approximately 25,000 tracks. We expect this update to:

  1. Substantially reduce very slow searches in large libraries
  2. Improve search responsiveness across the app
  3. Reduce RoonServer’s settled memory usage, especially for larger libraries

More efficient browsing and library maintenance

We have also replaced the internal system Roon uses to maintain sorted library views, including browsing by artist, album, date added, and more.

Previously, this part of Roon could gradually accumulate unnecessary memory and processing work as your library changed. The effect could become more noticeable with frequent metadata updates, Smart Playlists, extended browsing, ARC sync activity, or multiple clients connected at once.

Roon could also create separate copies of equivalent browsing data for different connected clients. This meant that activity such as syncing ARC, playing music, adding tracks, or editing album information could sometimes create more work than necessary across the system.

The new approach avoids those issues. Equivalent browsing data can now be shared between clients where appropriate, while memory and processing needs remain proportional to the size of your library instead of increasing over time.

Together with several other fixes in this area, these changes make browsing and maintaining your library more efficient and help Roon remain responsive during normal day-to-day activity.

.NET 10 on Roon Remote for Android and iOS

Roon 2.70 marks the completion of a long-term modernization effort across Roon’s client applications.

In Roon 2.65, we moved our desktop applications to .NET 10. With this release, Roon Remote for Android and iOS has also made that transition, replacing the older Mono runtime. As a result, every Roon client now runs on the same modern .NET 10 foundation.

This gives us a more consistent platform across desktop and mobile, removes the need to keep building around older mobile technology, and creates more room for us to make larger improvements to Roon in future releases.

iOS compatibility

Roon Remote for iPhone and iPad now requires iOS 12.2 or later.

Roon Radio & Recommendation Improvements

We’ve been listening to feedback about Roon Radio’s repetitive selections for a long time, and we really appreciate everyone taking the time to let us know about your experiences.

We have a number of changes and improvements planned, and the first one is now live — this round cuts down on repetition within a radio session, and we believe it does so in a way that doesn’t impact the overall quality of the selections.

Before we proceed with additional changes we are looking for feedback! Does Radio feel less repetitive? Are the picks better, worse, or about the same? In some cases, less repetition can mean the selections wander a bit, so if something feels off we want to know.

We have created a feedback thread here. When you report back, make sure to tell us what you seeded radio from — the exact album, artist, track, or genre, or what was in your queue if radio started on its own. And please confirm that “Limit Roon Radio to Library” is switched off before giving feedback (it’s in the Radio settings on the Queue screen) — that’s a different selection path we haven’t touched, so it won’t tell us anything here.

Other fixes

A couple of other fixes worth mentioning. Thanks to everyone who flagged holiday music turning up out of season — we tracked down the bug and fixed it, so holiday tracks should no longer appear on their own. You can still get them any time of year by starting Radio from holiday music.

We also fixed a bug where some home screen recommendation content could get stuck and stop changing over time. Your home screen should now refresh dynamically again.

Bug fixes

We didn’t forget to address problems reported by users on Community. We included a couple of minor bug fixes for both Roon and Roon ARC. Among those are restoring the visibility of play counts for non-library tracks in playlists, ensuring the Save and Cancel buttons are visible in the Edit Genre Mapping dialogue, a problem with synced lyrics in Roon ARC, and other minor bug fixes.

Thank you for your continued support.

The Team at Roon Labs


Build Numbers

Application Build
Roon / RoonServer 2.70 (build 1671) Production
Roon Remote (iOS / Android) 2.70 (build 1671) Production
Roon ARC 1.8 (build 421) Production

Updated versions for Android and iOS have been submitted to their respective App Stores and will be available soon.

Changes

  • Optimized behavior when duplicate caches increased memory usage when multiple remotes viewed the same sorted content
  • Switched to Tantivy, a fast, Rust-based full-text search engine library
  • Switched to using .NET10 for Roon Remote on Android and iOS
  • Addressed memory leaks which occurred after long browsing sessions, causing the Roon client to slow down
  • Fixed an issue where ARC did not display tracks filtered by tags created for entire albums or playlists
  • Fixed a bug where the composers list failed to update when toggling ‘Classical only’ in the Composers browser
  • Fixed an issue where the Lyrics button was disabled for local tracks with synced lyrics
  • Fixed an issue where genre images were cut off on both sides in Roon ARC
  • Fixed an issue where play counts for non-library tracks were not shown in playlist ‘Plays’ column
  • Fixed an issue where Save and Cancel buttons were hidden in Edit Genre Mapping on Windows
  • Fixed an issue with updating play history when a queue ran out in Roon ARC
  • Fixed Genre image display on the Genre details page in Roon ARC

Installation

Cores, remotes, and ARC installations already running Roon Production should update automatically. If you need to reinstall, the latest builds can always be found on the downloads page.

39 Likes