Jump to content
IGNORED

Roon / HQPlayer Integration


Recommended Posts

Miska: try content on a NAS instead of from the HDD. Might product different result.

 

I know that OS X tends to have some performance issues with NAS, I was doing quite a lot of optimization for that case in the HQPlayer file access routines. And the way how NAS is mounted also makes difference (at least for me). On newer OS X versions, mounting as "smb:" instead of "cifs:" is significantly faster to access. It used to be other way around in past...

 

USB drives also pose challenge sometimes.

 

On my test setup, I measured the data delivery jitter from Roon to HQPlayer, OS X to OS X when content is on the FW800 HDD and the delivery from network to playback was very stable with only < 0.2 ms timing variation.

 

I'll check how things change if I source content from NAS.

Signalyst - Developer of HQPlayer

Pulse & Fidelity - Software Defined Amplifiers

Link to comment
Sorry if this is a dumb question, but are you using a NAA in this test? And have you tried it with RoonServer and HQPlayer on the same Mac (playing to a separate NAA)? That's my setup. Network is CAT7 gigabit Ethernet.

 

No, just local playback over USB and Firewire... And I use just the normal Roon application.

Signalyst - Developer of HQPlayer

Pulse & Fidelity - Software Defined Amplifiers

Link to comment
But, as I wrote (PM), it does it even when App Nap is disabled globally or specifically for HQPlayer, and when App Nap is showing no activity in System Monitor.

 

I was able to reproduce the problem by running Roon in fullscreen mode on Mac Mini while HQPlayer was in background on the same machine. Switching HQPlayer window to foreground immediately removed the problem. Seems like OS X is applying AppNap regardless... If you Google around a bit, you may see many reports that people have problems getting AppNap stay out of picture (not related to HQPlayer).

 

Usually it seems to be at least required to disable it again after every reboot.

Signalyst - Developer of HQPlayer

Pulse & Fidelity - Software Defined Amplifiers

Link to comment
Jussi, is the way that HQplayer receives files from Roon more demanding than if they are placed directly in the HQplayer interface, and how about the difference between roon and HQplayer being on the same machine vs different machines?

 

There is one set of extra traffic. From HQPlayer's point of view it is not really much different than reading a file. But there's one extra transfer layer because Roon reads the file first and sends the stream to HQPlayer. This file read + stream is more than just plain file read by HQPlayer is.

Signalyst - Developer of HQPlayer

Pulse & Fidelity - Software Defined Amplifiers

Link to comment
Well I've moved things between rooms so that I could try playing Roon/HQPlayer direct from the Mac Pro via USB to the exaSound e22-II DAC. The misbehaviour is exactly the same as when I play through NAA (except that HQPlayer quits unexpectedly every time I change album, but let's ignore that, because I'm moving everything back!).

 

It seems to be an OS X bug, I'll try to make a workaround for it...

Signalyst - Developer of HQPlayer

Pulse & Fidelity - Software Defined Amplifiers

Link to comment
On my Mac Mini (2011 2.5GHz i5, 8GB RAM), it plays only a second at a time (with multisecond silence in-between each burst of sound), and the CPU is only running about 20% (earlier, with the same settings, it was ~200%). Poly-sinc-shrt-2s, ASDM7, Auto, DSD.

 

On my MacBook Pro (2011 2.7Ghz i7, 16GB RAM), it plays (though I've had dropouts vs. none with earlier betas), and CPU runs at ~100%. Poly-sinc-short, ASDM7, Auto, DSD.

 

Argh, I'm starting to hate OS X even more than before... Where do you look for the CPU load?

 

How did the previous versions work for you? The beta6 fixed precisely that kind of behavior for me, previously OS X was freezing traffic between Roon and HQPlayer for seconds (when running on the same machine). Now when it disappeared for me, it appeared for you?

 

I tested beta6 running Roon and HQPlayer both on the Mac Mini and also networking streaming between Mac Mini and iMac...

Signalyst - Developer of HQPlayer

Pulse & Fidelity - Software Defined Amplifiers

Link to comment
To find CPU load go into Applications then into Utilities then Activity Monitor.

 

On the process listing 100% means one core worth of utilization. So maximum load on a quad core would be 400%. At the bottom of the Activity monitor where the overall system graph plot is, 100% is full system load...

Signalyst - Developer of HQPlayer

Pulse & Fidelity - Software Defined Amplifiers

Link to comment

OK, I reverted part of the change I suspect causing the problem. Now it is half way between the earlier and the new behavior. I built it as beta7 available at the usual place.

 

It also has fixes for:

- fixes IceCast server error on radio.cesnet.cz

- fixes handling of files passed as command line arguments

Signalyst - Developer of HQPlayer

Pulse & Fidelity - Software Defined Amplifiers

Link to comment

With Linux-based headless server, I'd say your technically best option is to use either X11-over-ssh (simple if you have an X11 server on your other computers) or using X11 VNC server that doesn't need real display. This way you don't need to have any local graphical output enabled on your Linux server. You can just install the necessary packages for these on your Ubuntu Server.

 

X11 for Mac OS X:

https://support.apple.com/en-us/HT201341

(ssh is part of OS X already)

 

VNC:

https://help.ubuntu.com/community/VNC/Servers

TightVNC: Manual Page for vncserver(1)

Signalyst - Developer of HQPlayer

Pulse & Fidelity - Software Defined Amplifiers

Link to comment
Anyone else experiencing this and/or any suggestions on next steps to troubleshoot?

 

If you don't have a Linux computer at hand, but one alternative is to build a bit more flexible NAA and see if that behaves better on your environment. If not, it is possible to trace and monitor where things go wrong.

 

(if you do have Linux computer at hand, one possibility is to modify the microSD to allow console login, stop networkaudiod service and run it straight from console to see how things are going on, cubox-i has serial console that can be accessed using microUSB cable)

 

 

Good starting point is plain Debian Stretch installation without any package selections other than OpenSSH server installed. And then install the provided networkaudiod package on it. Depending on your Linux skills, you can find installation instructions from this forum or Roon forum.

 

Stretch installation image can be found here:

Studenten Net Twente - Index of /debian/dists/testing/main/installer-armhf/current/images/hd-media/SD-card-images/

Signalyst - Developer of HQPlayer

Pulse & Fidelity - Software Defined Amplifiers

Link to comment
Thanks, @Miska, for your thoughtful reply. I've considered running WireShark on the Mac Mini to see if I can discern what might be the issue.

 

I don't think it is very helpful in this case. Only possible network related issues that comes to my mind is DHCP lease expiring (if it is very short) and renewal failing, or TCP keepalive timeout due to packet loss (10 second interval, 3 failures cut the connection).

 

I am really busy with work, right now, so I am going to have to leave this for a while. If there is a new version coming for NAA, I will re-image and give it another go.

 

There are no changes planned for near future...

 

However, if you'd like and it will be helpful, I will offer to create a WireShark trace capture between the Mac Mini and the Cubox-i NAA and send it your way. Let me know if that's valuable and I will find some time this weekend to do that.

 

Most helpful would be log output from networkaudiod (and HQPlayer), but for that it needs to be run from console.

Signalyst - Developer of HQPlayer

Pulse & Fidelity - Software Defined Amplifiers

Link to comment
Apologies if this has been addressed previously, but if you know, how will Roon and HQPlayer work with Dirac? I know, I also hate these sort of highly specific demands for information on niche combinations of equipment and software, but I also think that I may not be so alone after all in wanting to keep the UI benefits of Roon, the undeniably great SQ effects of room correction from Dirac, and maybe, possibly, ramp up all of the above with an enhanced processor like HQPlayer. Thanks and/or apologies in advance for going OT.

 

On Mac OS X, the combination should work OK, although I have not tested. You should configure HQPlayer to output fixed rate at the actual processing rate of Dirac, which I believe at least earlier was 96k (could be 192k these days, but I'm not sure).

 

Alternatively you could look into using Acourate or Audiolense to generate filters for HQPlayer's convolution engine. Both are Windows applications, but the generated filters of course work fine on any platform where HQPlayer works. So Windows is only needed at the filter creation time.

Signalyst - Developer of HQPlayer

Pulse & Fidelity - Software Defined Amplifiers

Link to comment
So, playing around some more, I am certain that its the HQP / exaSound driver combo thats causing the issues of HQP crashing.

 

I have an iFi Micro sitting around, and decided to play around with it instead of my exaSound. Sure enough, the HQP / Roon integration worked without issue, and I was able to jump around tracks over and over without an issue. Working as designed!

 

So, Jussi, I need help in getting the HQP to play nicely with the exaSound drivers! Is anyone successful in running HQP with the exaSound drivers?

 

I have exaSound e28 on my Win10 machine that I use for testing releases. I have not seen any crashes. Some communication problems between Roon and HQPlayer, but no crashes.

 

On Mac, the 5.1.6 driver works OK on my Mac Mini. But never got e28 play nice with my iMac. I assume you are using ASIO backend with exaSound?

Signalyst - Developer of HQPlayer

Pulse & Fidelity - Software Defined Amplifiers

Link to comment
  • 3 weeks later...
One more update: I tried this again with an AQ DragonFly 1.2 I had on hand. Different issues, this time. The DAC does appear in the "device" drop-down and seems to play properly with Roon.

 

However, rewinding to the beginning of the first song throws the DAC out of sync and plays with lots of dropouts (i.e. ticks/pops). That is, start playing an album and before the end of the first song, hit the << button on the Roon control app. Rewinds to the beginning and starts playback, but with lots of dropouts.

 

I remember reading somewhere that the Wavelength's USB Audio Class firmware that is used for example in Dragonfly has a bug that makes it not work properly for example with Linux.

Signalyst - Developer of HQPlayer

Pulse & Fidelity - Software Defined Amplifiers

Link to comment
Which version of the Dragonfly? I never had problems with the original on Linux or FreeBSD.

 

It is not so much about Dragonfly, but more about the particular USB Audio Class implementation. Google found the place where I've seen it: Auralic's firmware update release notes - known issues:

"USB DACs running on Wavelength USB firmware can not use USB playback function due to a confirmed bug of Wavelength USB firmware under Linux. The known effected brands are: Ayre, Aesthetix and Berkeley Audio."

 

Auralic uses same Freescale i.MX6 SoC as CuBox-i...

Signalyst - Developer of HQPlayer

Pulse & Fidelity - Software Defined Amplifiers

Link to comment
That's interesting, thanks for sharing. I will add a data point, however: I can boot the same Cubox-i setup from a volumio image and the USB-to-DAC connection works fine, although it doesn't support hot-plugging the DAC.

 

EDIT: and I will add this: if you want me to try/test anything for you, just let me know.

 

You are using my NAA image for all the NAA testing? What could be useful and possibly helpful for your case would be to try bare bones Debian Stretch (more discussed in Networking / NAA thread here) and install networkaudiod package on it for comparison. It may help also on the DAC hot-plugging things. Reason for this is that it has a different kernel version and different hot-plug daemon...

Signalyst - Developer of HQPlayer

Pulse & Fidelity - Software Defined Amplifiers

Link to comment
Need some help, please. Roon server is set up on a NUC i7 with 16GB RAM. Music is stored on a Synology DS-1813+. DAC is Oppo HA-1 plugged into the NUC via USB. For some reason I cannot get HQPlayer to force PCM to DSD conversion. I have tried various settings but everything still comes out PCM. PCM upsampling works to the 352.8/32 limit of the HA-1. Everything is working well and sounds great; no dropouts. Just can't get DSD out.

 

I am sure I am missing something simple, but please share your ideas on what I need to do. Thanks!

 

In the main window, on the right-most drop-list, select "SDM" as output format. That should do the thing.

Signalyst - Developer of HQPlayer

Pulse & Fidelity - Software Defined Amplifiers

Link to comment
Thanks, that worked. Seems that the NUC does not have the horsepower to do SDM conversion. HQPlayer bombs out. Not surprising. I switched the Roon server to a desktop and all is working well.

 

Depends on the output rate and NUC model, but up to DSD256 should be fine with any of the -2s filter variants.

Signalyst - Developer of HQPlayer

Pulse & Fidelity - Software Defined Amplifiers

Link to comment
i'm using roon/ hq player on a 2012 mac mini ( el capitan) and i have some disfunction sometimes .

first the track don't start and i have this message on roon : roon has lost his end point simultaneously the HQ player bar is searching.

second : sometimes i get a horrible robot sound ( jitter ?) and when i restart the track it disappear .

third : less important some glitches and strange colors appears on roon interface.

 

no i am not drunken . :)

 

any idea?

 

Do you have the latest HQPlayer release? I believe I have fixed the remaining communication issues between Roon and HQPlayer in the most recent versions. I'm not sure how much patience Roon has for waiting for HQPlayer to initialize. But depending on HQPlayer settings, initializing the playback can take a while (progress bar running around) - up to about one minute.

 

The robot sound sounds like DAC side issue of DAC being out of sync. iFi iDSD Nano sometimes does it for me due to injection of the RFI/EMI through the headphone cable back to the DAC.

Signalyst - Developer of HQPlayer

Pulse & Fidelity - Software Defined Amplifiers

Link to comment
  • 5 weeks later...
+1 on what @gcoupe said, but you shouldn't have to add any artwork manually in Roon. If you're connected to the Internet, by default, Roon should go out and get all the album and artist artwork it needs.

 

It doesn't work for files that don't contain metadata. Roon doesn't seem to be able to extract artist/album/song information from the folder and file names. As a result it is really hard to even find such files from the Roon database... As a result, bunch of files also end up with Roon's default artwork.

Signalyst - Developer of HQPlayer

Pulse & Fidelity - Software Defined Amplifiers

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now



×
×
  • Create New...