rooUPnP: Finally a Roon Extension for UPnP Streamers

Ah, so it is the Sonore Signature Rendu with the synchronous digital output before asynchronous USB. And Roon Ready integration.
What version of the operating system does it run?
What inputs does it take?

What is the configuration?

Hi Huang,
I have never tried to stream DSD with rooUPnP.

Please try to use MP3 and next FLAC to stream just tor verify if your setup works properly. Please also take a look at the Quick Installation Guide and the rooExtend-Box Manual in my Download Area on how to set up and test with your device.

rooUPnP uses FLAC streams not FLAC files to transfer audio. This means your playback device has to be able to handle FLAC data not including a file length.

Also in the Download Area there is is list of already tested devices. I update this by customer feedback.

Best DrCWO

My main question is the requirement to transfer to get sound. The device is in your list. Are the instructions to update also on the site if you notice I am on a pretty old version of rooExtend

Why didn‘t you download the latest image. Will be easier to flash it that running the update. Please let me know the release number you run. It can be found in Roon Settings/Extensions at the License Manager of rooExtend.

If it is in the list it was successfully tested by a user. Try to playback s MP3 and next as FLAC. This should work.

Hello @DrCWO,

I’m a new rooUPnP licensee on a diy rooExtend Raspberry Pi 4B (4GB), and love it! Thank you for this excellent product!

rooUPnP is working beautifully with my Naim NDS streamer except for one issue.

When playing an album, the Roon Remote app gets “stuck” when the last track is completed. The track waveform/progress-bar shows that the track is completed. However, the dancing bargraph “actively playing” icon on the last track, in the list of tracks, remains active. So Roon Remote appears to be “confused”, and thinks that the track is still playing.

Consequently, Roon Radio never kicks in to start another selection per the Roon Radio algorithm. On the other hand, the Roon app is not frozen. I can choose to play another album, for example. And then the same issue will reoccur when the album has played through to the end.

The issue occurs whether using the Roon Remote app on an iPad or an iPhone. Restarting everything (Router, switches, ROCK, rooExtend, NAS & NDS) didn’t help. The issue still occurs after freshly booting everything.

Lastly, this issue never occured with my previous Roon bridge solution - a Sonore ultraRendu running the Sonore UPnP Bridge (though it has other issues which led me to rooUPnP).

Other system notes: Everything is hard-wired ethernet (except the apple devices of course). Roon ROCK is on an i5 NUC. Albums are either rips on a Synology DS720+, or are streamed from Tidal.

Btw, I remembered your rooUPnP_tested_Devices document and reread it.

“Issue: Playing from Roon with shuffle playback sometimes
stops at the end of a title.
Solution: Enable resampling in Roon to the highest sample
rate your player allows will fix it in most cases.”

This sounds like the same issue, but for me, it occurs with regular playback, as described previously.

I like to use as little processing as possible. So turning on DSP to enable resampling is a non-starter for me. Is there any chance of finding a programmatic solution or work-around?

Some questions:

  • Do you play a complete Album or a playlist?
  • Do the items you play have different format or sample Rate?
  • If the issue happens: Can you press the “Next” button to go ahead to the next track?

In comparison to other UPnP solutions Roon send one continuous data stream and not one FLAC file per track.

So if the sample rate or the bit with changes from track to track this may cause this issue.

Best DrCWO

I play complete albums made up of consistent track formats and sample rates. Playback gets stuck at the end of the last track. (The issue also happens if I do “Play from here” on the last track of an Album. You can even manually advance playback to close to the end of the last track, and let it play from there. The issue will still happen when playback reachs the end of that last track. This shortcut is convenient for testing, as you don’t need to let the full album play every time that you attempt to reproduce the issue).

By the way, when it gets stuck, the Roon Remote track waveform/progress-bar shows either 0 seconds remaining, or sometimes 1 second remaining. For example, if the track is 2:14 in length, it will often get stuck at 2:14, but occasionally at 2:13.

Once playback is stuck, the Next button still works as expected. In other words, playback becomes “unstuck” such that Roon Radio selects and starts playing a new album.

I’ve found a work-around for FLAC albums (only), which is to enable ‘FLAC compression’ in the Roon advanced settings of Device Setup for the NDS. However, this work-around doesn’t work for other formats like MP3 and MQA.

I’ve also tried adding up to 1000ms of Resync delay in Device Setup for the NDS, but that didn’t help at all.

A clarification is that both ‘Use FLAC compression’ in Roon device settings, plus ‘Transparent’ or ‘FLAC 24 bit’ in rooUPnP device settings need to be configured in order to work-around the track stoppage issue. This combination appears to prevent the issue for all album formats that I’ve tried.

It would be preferable to use ‘PCM 24 bit’ in rooUPnP, as Naim streamers are optimized for WAV processing.

Btw, I’m not seeing any difference between configuring ‘Transparent’ vs ‘FLAC 24 bit’. In both cases the NDS always receives FLAC format data.

PCM 24 Bit often did not work as Roon send a Stream instead of single WAV files.

In transparent mode rooUPnP sends the data without touching it directly from Roon to the streamer. This means you get the FLAC stream created by Roon. In FLAC 24 Bit the incoming FLAC from Roon gets decoded by rooUPnP to PCM and re-encoded to FLAC.

After decoding in the streamer you get the same data als FLAC is lossless. But the FLAC data itself may be different als Roon probably uses a differed compression level as rooUPnP does.

If you search this tread you find a lot of posts regarding NDS.

Personally, I’m surprised that the NDS’s sound quality is worse when streaming FLAC (something that’s been reported more than once). If that’s true, I’d get a better DAC. This simply shouldn’t happen with a well-enineered device.

I personally would recommend this DAC from Topping (122dB SINAD!!). It is inexpensive and offers state of the art audio quality. If you connect it by USB to The Raspberry Pi it offers completely transparent sound which is proofed here. For me a much this looks much better as the expensive Naim Unity streamer (only 82dB SINAD!!).

Best DrCWO

Thank you for the detailed explanation, @DrCWO. It’s very helpful. And sorry, I should have searched the thread for earlier Naim discussions.

Despite the poor SINAD measurement, the Naim NDS DAC is highly euphonic, so it would be hard to give up. Not to mention the synergy and the interoperability support within an all-Naim system.

Regarding the WAV processing optimization of Naim DACs, I can’t say it better than @Trickydickie has stated. Just to add, the NDS still sounds excellent when receiving FLAC. So sending WAV to the NDS is a minor optimization.

And regarding this older post of yours, did you ever get a chance to explore your thoughts at the time further?

Btw, additional metadata would be great! It would also be nice to include the bit depth in addition to the format and sample rate.

Yes, they are

I did not say you should give it up. I just wanted to show an alternative that better fits Roon and is less euphonic :wink:

Best DrCWO

1 Like

rooUPnP allows you to use good old UPnP devices with Roon. But that’s not the future. Most companies have jumped on the Roon train offering their new devices as Roon Ready. Therefore, I currently have no plans to support UPnP more than rooUPnP does. Investing here is like riding a dead horse for me :wink:

Best DrCWO

That’s too bad, but I understand. If you ever change your mind, I would be happy to be a beta-tester for any rooUPnP improvements.

1 Like

I am running 2.20

You mean v2.2 of rooExtend?
If yes that‘s really old. Are you on an Pi Zero W or Pi2?
All others have ARMv8 so can use the latest image.
For x2.x.x there are no updates any more. Better get an Pi3 or Pi4 so you always get the latest updates over the air.

Best DrCWO