Dropouts, slow, spotty performance with lots of errors

hey folks
So, today marks the end of my trial and the beginning of my paid service. It also happens to be the first day that I have a few mins to sit down and post something.

I’m getting back into hifi after some time away and I’ve been really excited about Roon. I have a big investment in Sonos, some various amps, DACs, loudspeakers, etc, But mostly over the last few years I’ve just been steaming compressed stuff - when I was listening to lossless it was on my Shure IMs.

Anyway, I got jazzed about Roon and and audio again and took the plunge.

I’m running Roon on a fairly beefy linux box:
16gb ram
i7 8 core
3tb disk
gig ethernet

My endpoints are all also connected via Ethernet.

Endpoints include:

  • roon on MacOS (including an iMac Pro - that machine isn’t bogged down)
  • Roon on iOS
  • Roon on several HiFiBerry + Pi 4 devices (all hardwired, all on gigE switches)

My problem is… it just doesnt work. Like ever. Like 9 out of 10 attempts to play result in either an unresponsive interface (macOS and iOS) or intermittent playback, or it simply stops (or never starts) playing.

Because of my new re-discovered interest, I’ve signed up for Tidal. … so now I’m mostly just steaming Tital via Airplay. I’m disappointed since I bought some Roon Ready endpoints. Mostly they don’t show up in Roon (same subnet, wired ethernet). And when they do show up, there is lag, or dropout, or they just disappear mid-song and Roon stops.

Anyone have any tips? Does Roon work well for others, or is this a known thing?

Here’s a snippet of log:

02/14 04:48:46 Trace: [dbperf] flush 0 bytes, 0 ops in 556 ms (cumulative 104854586 bytes, 101261 ops in 1210518 ms)
02/14 04:48:46 Debug: [easyhttp] POST to https://metadata.roonlabs.net/1/albums/translate?c=tidal-us
02/14 04:48:47 Trace: [music/query] performing album query
02/14 04:48:47 Trace: [music/query] query returned 2 Sooloos.Broker.Api.AlbumLite(s)
02/14 04:48:47 Trace: [music/query] performing album query
02/14 04:48:47 Trace: [music/query] query returned 0 Sooloos.Broker.Api.AlbumLite(s)
02/14 04:48:47 Debug: [easyhttp] POST to https://metadata.roonlabs.net/1/albums/translate?c=tidal-us returned after 1263 ms, status code: 200
02/14 04:48:48 Info: [library/albumdetails] found 1 streaming service alternates
02/14 04:48:48 Info: [transport] creating endpoint for airplay device 23:1:1eb416be-aa52-5172-4edc-c488c39cf94d
02/14 04:48:48 Debug: [easyhttp] GET to https://discover.roonlabs.net/1/albums/121:0:MW0002416550/recommended/albums?profileId=7b036767-1b0a-4785-a12f-d1b861a86c44&count=30&c=tidal-us returned after 300 ms, status code: 200
02/14 04:48:48 Trace: [dspengine] created new dsp config {"version":3,"items":[{"type":"bs2b","enabled":false},{"type":"parametric_equalizer","enabled":false},{"type":"audeze_presets","enabled":false}]}
02/14 04:48:48 Trace: [transport/audeze] picking preset lowlatency
02/14 04:48:48 Trace: [transport/audeze] picked null preset!
02/14 04:48:52 Info: [stats] 5570mb Virtual, 1111mb Physical, 480mb Managed, 0 Handles, 101 Threads
02/14 04:48:54 Trace: [dbperf] flush 0 bytes, 0 ops in 3778 ms (cumulative 104854586 bytes, 101261 ops in 1214296 ms)
02/14 04:48:54 Trace: [music/search] starting search
02/14 04:48:55 Trace: [library] computing search results for 'Toto' for profile 63:1:7b036767-1b0a-4785-a12f-d1b861a86c44 returning up to 50 results per list
02/14 04:48:55 Debug: [library] search finished in 82ms
02/14 04:48:55 Debug: [easyhttp] GET to https://search.roonlabs.net/1/search?q=Toto&count=50&c=tidal-us returned after 526 ms, status code: 200
02/14 04:49:04 Debug: [easyhttp] GET  to https://internetradio.roonlabs.net/2/api/stations/search?query=Toto&count=50&format=msgpack returned after 8927 ms, status code: 304
02/14 04:49:06 Trace: [music/search] computing search results
02/14 04:49:07 Info: [stats] 5570mb Virtual, 1113mb Physical, 484mb Managed, 0 Handles, 100 Threads
02/14 04:49:09 Trace: [music/search] [performance] ComputeTopResult took 2734ms
02/14 04:49:09 Trace: [music/search] [performance] end-to-end search took 14276ms
02/14 04:49:11 Info: [library/performerdetails] Created performer details screen for LibraryPerformer[269406, Toto]
02/14 04:49:11 Info: [library/performerdetails] 5e0154c9b5aabeca2e43899e1c4f99757327, 7a004d4e30303030303036333230, a7003736, c900313138373730
02/14 04:49:11 Trace: [dbperf] flush 0 bytes, 0 ops in 75 ms (cumulative 104854586 bytes, 101261 ops in 1214371 ms)
02/14 04:49:11 Debug: [easyhttp] POST to https://metadata.roonlabs.net/1/performers/translate?c=tidal-us
02/14 04:49:11 Debug: [easyhttp] POST to https://metadata.roonlabs.net/1/performers/translate?c=tidal-us returned after 89 ms, status code: 200
02/14 04:49:11 Debug: [easyhttp] GET  to https://metadata.roonlabs.net/1/performers/94:1:aab5c954-cabe-432e-899e-1c4f99757327/relationships?c=tidal-us returned after 20 ms, status code: 304
02/14 04:49:12 Trace: [songkick] REQUEST http://api.songkick.com/api/3.0/artists/mbid:aab5c954-cabe-432e-899e-1c4f99757327/calendar.json
02/14 04:49:12 Debug: FULL: http://api.songkick.com/api/3.0/artists/mbid:aab5c954-cabe-432e-899e-1c4f99757327/calendar.json?apikey=vxBJyE3rDrZzN3MA&page=1
02/14 04:49:12 Trace: [music/query] performing album query
02/14 04:49:12 Trace: [music/query] query returned 8 Sooloos.Broker.Api.AlbumLite(s)
02/14 04:49:12 Trace: [music/query] performing album query
02/14 04:49:12 Trace: [music/query] query returned 0 Sooloos.Broker.Api.AlbumLite(s)
02/14 04:49:12 Trace: [music/query] performing album query
02/14 04:49:12 Trace: [music/query] query returned 0 Sooloos.Broker.Api.AlbumLite(s)
02/14 04:49:12 Trace: [music/query] performing album query
02/14 04:49:12 Trace: [music/query] query returned 0 Sooloos.Broker.Api.AlbumLite(s)
02/14 04:49:12 Debug: [easyhttp] GET  to https://metadata.roonlabs.net/1/performers/94:1:aab5c954-cabe-432e-899e-1c4f99757327/albums/nonmain?c=tidal-us returned after 331 ms, status code: 304
02/14 04:49:12 Trace: [library] endmutation in 11ms
02/14 04:49:12 Debug: [easyhttp] GET  to https://metadata.roonlabs.net/1/performers/94:1:aab5c954-cabe-432e-899e-1c4f99757327/albums/appearson?c=tidal-us returned after 342 ms, status code: 304
02/14 04:49:12 Error: System.IndexOutOfRangeException: Index was outside the bounds of the array.
  at MessagePack.Formatters.Roon_ServiceProxies_MetadataService2_AlbumsContainerFormatter42.Deserialize (System.Byte[] , System.Int32 , MessagePack.IFormatterResolver , System.Int32& ) [0x00000] in <891aab7c64f445c9aaa1ac1f0e3ca507>:0
  at MessagePack.MessagePackSerializer.Deserialize[T] (System.Byte[] bytes, MessagePack.IFormatterResolver resolver) [0x00010] in <86bb20c8249c41059dd38a7c67b71f5f>:0
  at MessagePack.MessagePackSerializer.Deserialize[T] (System.Byte[] bytes) [0x00000] in <86bb20c8249c41059dd38a7c67b71f5f>:0
  at Roon.ServiceProxies.MessagePackSerializerSafe.Deserialize[T] (System.Byte[] data) [0x00010] in <b26acddc0f314c30afed522770bd007a>:0
  at Roon.ServiceProxies.BaseProxy+<Get>d__28`1[T].MoveNext () [0x002af] in <b26acddc0f314c30afed522770bd007a>:0
02/14 04:49:12 Debug: [easyhttp] GET  to https://metadata.roonlabs.net/1/performers/94:1:aab5c954-cabe-432e-899e-1c4f99757327/albums/producedby?c=tidal-us returned after 342 ms, status code: 304
02/14 04:49:12 Error: System.IndexOutOfRangeException: Index was outside the bounds of the array.
  at MessagePack.Formatters.Roon_ServiceProxies_MetadataService2_AlbumsContainerFormatter42.Deserialize (System.Byte[] , System.Int32 , MessagePack.IFormatterResolver , System.Int32& ) [0x00000] in <891aab7c64f445c9aaa1ac1f0e3ca507>:0
  at MessagePack.MessagePackSerializer.Deserialize[T] (System.Byte[] bytes, MessagePack.IFormatterResolver resolver) [0x00010] in <86bb20c8249c41059dd38a7c67b71f5f>:0
  at MessagePack.MessagePackSerializer.Deserialize[T] (System.Byte[] bytes) [0x00000] in <86bb20c8249c41059dd38a7c67b71f5f>:0
  at Roon.ServiceProxies.MessagePackSerializerSafe.Deserialize[T] (System.Byte[] data) [0x00010] in <b26acddc0f314c30afed522770bd007a>:0
  at Roon.ServiceProxies.BaseProxy+<Get>d__28`1[T].MoveNext () [0x002af] in <b26acddc0f314c30afed522770bd007a>:0
02/14 04:49:12 Debug: [easyhttp] GET  to https://metadata.roonlabs.net/1/performers/94:1:aab5c954-cabe-432e-899e-1c4f99757327/albums/main?c=tidal-us returned after 344 ms, status code: 304
02/14 04:49:22 Info: [stats] 5570mb Virtual, 1116mb Physical, 487mb Managed, 0 Handles, 101 Threads
02/14 04:49:37 Info: [stats] 5570mb Virtual, 1116mb Physical, 487mb Managed, 0 Handles, 101 Threads
02/14 04:49:41 Trace: [zone headphones] Loading
02/14 04:49:48 Trace: [zone headphones] Suspend
02/14 04:49:48 Info: [transport] created zone headphones
02/14 04:49:48 Info: [transport]     with endpoint headphones (23:1:1eb416be-aa52-5172-4edc-c488c39cf94d) [IsAvailable=True]
02/14 04:49:48 Trace: [headphones] [HighQuality, 16/44 TIDAL FLAC => 16/44] [100% buf] [STOPPED @ 0:00]
02/14 04:49:48 Trace: [zone headphones hifi] Playing 18 Items
02/14 04:49:48 Trace: [zone headphones hifi] Selecting Source state=Stopped
02/14 04:49:48 Trace: [zone headphones hifi] Playing TransportItem
02/14 04:49:48 Trace: [zone headphones hifi] Selecting Source state=Stopped
02/14 04:49:48 Trace: [headphones hifi] [Lossless, 16/44 FLAC => 16/44] [100% buf] [LOADING @ 0:00] Hold the Line - Toto
02/14 04:49:48 Trace: [musicpowerstate] music is playing, preventing idle sleep
02/14 04:49:48 Trace: [zone headphones hifi] Playing 18 Items
02/14 04:49:48 Trace: [zone headphones hifi] Selecting Source state=Loading
02/14 04:49:48 Trace: [zone headphones hifi] Playing TransportItem
02/14 04:49:48 Trace: [zone headphones hifi] Selecting Source state=Stopped
02/14 04:49:48 Info: [transport] creating endpoint for airplay device 23:1:22acaf9f-341f-bdbc-b2b6-1ed5da2b78da
02/14 04:49:48 Debug: GET /image/mznaaaaa.1024.jpg
02/14 04:49:48 Trace: [dspengine] loaded DSP config {"version":3,"items":[{"type":"bs2b","enabled":false},{"type":"parametric_equalizer","enabled":false},{"type":"audeze_presets","enabled":false},{"type":"speaker_setup","enabled":true}],"headroom_adjustment":{"type":"headroom_adjustment"},"sample_rate_conversion":{"type":"sample_rate_conversion"}}
02/14 04:49:48 Trace: [transport/audeze] picking preset lowlatency
02/14 04:49:48 Trace: [transport/audeze] picked null preset!
02/14 04:49:49 Trace: [dbperf] flush 0 bytes, 0 ops in 600 ms (cumulative 104854586 bytes, 101261 ops in 1214971 ms)

@support I’ve added the Roon support team because that looks like a real support issues, especially those IndexOutOfRangeExceptions. Your Roon Core server is totally capable unless there’s some unusual OS/libraries issue. I run my core on an i5 NUC with 8G RAM, 120G M.2 SSD, 2TB external USB SSD, Ubuntu Server 19.04. Endpoints are a Pi 4B with a Pi2AES HAT running RopieeeXL to a DAC and then headphone amps, and a Linn Klimax speaker system, all wired with Ethernet, Netgear dumb switches, and Actiontec MoCA cable-Ethernet adapters (my house has a lot of in-wall coax). I play local music as well as Qobuz. Control points are a Macbook, Android Pixel phones, and an iPad. Zero issues with the current versions of everything Roon.

It sounds like your network, so some specific network information would be helpful to support.

What router are you using? There have been issues with Apple routers.

Any Switches in the network path and, if so, which brand and are they managed or unmanaged? If they are managed switches then I’d suggest reviewing the network FAQ.

https://kb.roonlabs.com/Networking_Best_Practices

You might try, turning off the Linux Core, and run Roon from the iMac and see if the issues persist.

Thanks Rugby, I appreciate the response.

My router is pfSense running on Netgate hardware. I have dual symmetric gig fiber.
I think you might be asking about my WiFi APs - I’m using UniFi’s Ubiquity line. I have 5 APs, all broadcasting the same networks.

My Linux core and Roon endpoints are all using Ethernet, not WiFi.

My switches are also UniFi. My Linux core sits on a managed ‘backbone’ switch and the endpoint represented in the log I posted is on another switch. The switches are connected via fiber and easily sustain gig speeds between clients on either end without any dropped packets.

I have multicast enabled on every switch and have no problems passing multicast traffic on other platforms.

I’ll try running the core on another machine and see what happens.

Hi @Nick_Dawson,

What kind of Linux flavor are you using on the Core?

I would try temporarily using the MacOS as a Roon Core to determine if this issue is specific to the Linux OS or to something else like the network. Can you let us know how the MacOS performs?