Jump to content
  • The Computer Audiophile
    The Computer Audiophile

    Streaming & Local Content Through HQPlayer - A Nice Alternative With The sonicTransporter

     

     

    Many of us have enjoyed HQPlayer's digital signal processing over the years, but have been less than satisfied with the remote control options. Fairly recent remote options named HQPDcontrol v4 and HQPWV (HQPlayer Web Viewer) have made and continue to make great strides. I use both of these options frequently and love to see the developers interacting with the Audiophile Style community to make each product even better. Perhaps some day they'll charge for their apps, and we can all show our appreciation by throwing some money their way. 

     

    Audiophiles who only play local content from a hard drive can certainly use the aforementioned apps and call it a day. HQPlayer will scan their libraries and the remote apps will enable really nice library browsing and song selection. However, many of us also stream from Qobuz and Tidal. To date, there is no way to add a streaming service to HQPlayer or one of the remote applications. What's an audiophile to do? The answer lies in a combination of UPnP/DLNA and HQPLayer Embedded.

     

    Note: Some people will undoubtedly suggest, "just use Roon." Well, that's one option but it presumes that everyone wants to use Roon. That's an incorrect presumption, as no single product offers a solution for every listener. 

     


    Options

     

    There are many ways to accomplish almost everything in HiFi. I tried several potential solutions when researching this article and settled on one that is the easiest, offers support for any issues that may arise, and is a solution I'd actually use every day. I'll attempt to detail both the recommended solution and some of the stuff I tried over the last several weeks. This will enable readers to make their own decisions and understand why I recommend what I recommend and if they wish to tackle some of the hands-on issues with the other solutions. 

     

    Goals

    1. Streaming content from Qobuz, Tidal, and local files from NAS or hard drive through HQPlayer. 
    2. A nice looking and very usable interface for remote control.
    3. Simplicity in setup and daily use. 

     


    Recommended Solution

     

    Playing local content through HQPlayer is a simple task, but to route Qobuz and Tidal through HQP requires a little different setup. Trust me it's very easy and doesn't require jumping though unsupported hoops. The first requirement is using HQPlayer embedded because it can receive audio via UPnP/DLNA as an input. HQPlayer Desktop doesn't have this option and will not work. In order to send audio via UPnP/DLNA to HQPlayer Embedded we need a UPnP/DLNA server and a UPnP/DLNA control point. 

     

    The Small Green Computer sonicTransporter is my recommended solution because it accomplishes the above goals by combining both HQPlayer Embedded and MinimServer as the UPnP/DLNA server into a single component. Rounding out my recommendations is the forthcoming UPnP/DLNA control point application JPLAY for iOS. 

     

    The SGC sonicTransporter starts at $999 and gets reasonably more expensive as one increases processing horsepower, network isolation, and solid state storage. The specific version I used for this article is the $3,499 sonicTransporter i9 Optical with a 4TB SSD. When the Transporter arrived I and installed HQPlayer Embedded and MinimServer with a couple clicks of the mouse. Both are options, among several others, accessed via the web interface. I also copied a few terabytes of music to the internal Transporter SSD, then proceeded to setup HQPlayer and direct MinimServer to the local SSD to scan the music. 

     

     

    sonicTransporter.jpg

     

     

     

    Outputting audio to my DAC was done two different ways. I connected a USB DAC directly to the USB output of the Transporter as a test, to make sure it worked for those who wish to go this route. It worked perfectly. Most of my testing was done using the Sonore signatureRendu SE optical as an HQPlayer NAA endpoint. I connected both the Rendu and Transporter to my network switch via fiber optic cables. I'm not a fan of connecting the Rendu directly to the Transporter via fiber cable because of potential multi-homed network issues, but I know many audiophiles who set it up via direct connection and love it. No judgement here, I just prefer one way over the other. 

     

    Other than the standard HQPlayer setup, selecting filters and an output device, nothing needs to be done with respect to selecting an input. HQPlayer Embedded automatically advertises itself as a UPnP/DLNA renderer and accepts audio via UPnP/DLNA whenever it's sent. The only thing to do once HQPe and MinimServer are setup is to select a UPnP/DLNA control point. 

     

    JPLAY for iOS is easily the best control point app I've used to date. JPLAY for iOS combines Qobuz, Tidal, and local content in a single interface in addition to offering excellent features such as album info and artist bios, links within the app to other content from each artist, record label filters (think displaying only ECM content etc...), among many others I've yet to discover on my own. Searching each streaming service and local content can be done individually or combined into a single search. The user interface is beautiful and very easy to use. One of the extremely audiophile features in this app is the ability to adjust what's called polling time. This can be set to a maximum level, so once albums/tracks are selected for playback, the app is completely silent. It doesn't send any network traffic to the server or renderer. 

     

    JPLAY iOS App 01.jpg

     

    JPLAY iOS App 02.jpg JPLAY iOS App 04.jpg JPLAY iOS App 06.jpg

     

    JPLAY iOS App 07.jpg JPLAY iOS App 03.jpg JPLAY iOS App 05.jpg

     

     

     

    This combination of HQPlayer Embedded & MinimServer on the sonicTransporter and JPLAY for iOS on my iPad Pro is fantastic. There are certainly some issues to be worked out in the JPLAY control point app, but it's still in closed beta. Using the JPLAY app on iOS to send audio to other renderers in my system was flawless. For example, I set an opticalRendu into DLNA mode and used the same MinimServer install on the sonicTransporter with great success. I think the little issues revolve around HQPlayer Embedded's use of Rygel as the UPnP/DLNA rendering software and its interaction with the JPLAY for iOS app. 

     

    As a temporary solution, until JPLAY for iOS is released, listeners can use the mconnect app as a control point. I don't wish this on my worst enemy, but many people use it and are OK with it. Some people use one of the HQP apps such as HQPDcontrol v4 or HQPWV for local content, then switch to mconnect for streaming audio only. This is an option, but it seems so primitive. Like something we'd do in 1998 :~)

     


    Possible Showstopper

     

    One issue that may be a showstopper for people is inconsistency of gapless playback. No matter what people say about gapless playback and the control point being what determines whether or not gapless audio works, my research definitively indicates gapless playback depends on the interaction between the control point, server, and renderer. All three matter. This gapless issue isn't unfixable though. Simon from MinimServer asked me to send him some logs because he has an idea about hat may be causing this issue. Hopefully this can be resolved. 

     


    Bits and Bytes I Tried

     

    The gapless issue mentioned above is what caused me the most headaches. Not because I listen to a ton of music that requires gapless playback, but because I wanted to find a solution to the issue. Here are some of the solutions I tried and what I found. 

     

    I installed Ubuntu 20.04 on my CAPS Twenty computer, then installed HQPlayer Embedded and MinimSever manually. This enabled me to connect to the server and test many things via command line. No matter what I did, I couldn't get gapless working with HQPe and MinimServer on this install either. I also put HQP OS on this machine and Minim on my NAS, but the results were the same. 

     

    One benefit of running Ubuntu 20.04, with a manual install of the apps, is that I could install the NVIDIA drivers for CUDA offload within HQP. 

     

    On my Ubuntu 20.04 installation I also tried Asset UPnP and MiniDLNA as UPnP/DLNA servers. I couldn't connect to Asset via the JPLAY iOS app, but was able to get with mconnect. Gapless didn't work with Asset and HQPe whether on the same machine or split with Asset running on my NAS. Surprisingly, MiniDLNA worked every time. Yes gapless audio from MiniDLNA (version 1.3 with DSD enabled), sending the audio to HQPe and JPLAY as the control point worked great. However, MiniDLNA server was terrible on all other respects such as speed, album art, search, etc... I suggest this solution only to the most hardcore gapless fans. 

     

    Another interesting solution was using the built-in QNAP DLNA server. This surprised me even more than MiniDLNA because it was also gapless. Using JPLAY on iOS to select audio on my QNAP NAS running the built-in Multimedia Console and streaming add-on, and sending it to HQPe, worked every time. Unfortunately, I don't even recommend this as a solution for gapless freaks. The usability with any control app I tried was horrific. 

     

    Attempting to outsmart myself, I installed BubbleUPnP on the sonicTransporter (it's one of the easily installable options), because Bubble makes a UPnP/DLNA renderer into an OpenHome renderer. I thought this may be the solution to my gapless issue and be an awesome all-in-one (HQPe, MinimSever, BubbleUPnP all on the sonicTransporter). Nope. No gapless in this configuration either. One nice part about this was that I could test the Lumin and Linn Kazoo apps for control, but neither of them gave me gapless either. 

     


    Wrap Up

    Running both streaming and local content through HQPlayer using UPnP/DNA as an alternative to Roon is definitely doable. I've been doing it for weeks and really like it. The easiest and best way to do this for most audiophiles is to use a Small Green Computer sonicTransporter. The Transporter can house both MinimServer and HQPlayer Embedded on a single box, and SGC can provide support if people run into issues along the way. I've known SCG's founder Andrew Gillis for many years and can attest to his knowledge, skills, and customer service. He knows what he is doing and works hard to make sure his customers are satisfied. 

     

    I'll send back the sonicTransporter i9 Optical in the next day or so because the last thing I need around here is another server. If I didn't have CAPS Twenty, I'd buy the transporter in a heartbeat. The i9 ran HQPlayer upsampling to DSD256 using poly sync short MP filters, the ASDM7EC modulator, and 65,000 tap convolution filters without a hiccup. This little machine is much more powerful than it appears and it looks much better in person than in photos. 

     

    Given that I have CPS Twenty, I am running HQP OS on the NVMe drive, MinimServer 2 on my QNAP NAS, and the JPLAY iOS control point on my iPad Pro. This is a slick solution. I can update HQP OS by booting from the other NVMe into Windows, and using Balena Etcher to write the latest version of HQP OS to the HQP OS NVMe drive. Then I reboot and I'm all good. 

     

    I highly recommend the sonicTransporter for everyone who has no interest in installing an operating system or writing an image to a USB/SSD drive.  The transporter is just so simple and works so well. It's a no-brainer. 


     

     

     

    More info:

    sonicTransporter

    HQPlayer

    MinimServer

    JPLAY

     

     

     




    User Feedback

    Recommended Comments



    I found myself getting lost a bit while reading all this.

     

    This is my use case: I have a headless Windows 10 (now 11 beta) NUC 10i7 that has the horsepower for DSD 256 steaming but pegs 100c on CoreTemp too often for my taste when I do that, so I probably am looking at playing back with only minimal processing. (I do have lots of hires files, including DSD.) Music files are on my NAS and are streamed to a Sonore Rendu using DLNA.  There are no USB connections before the Rendu.  I presently use Audirvana Studio and JRiver as DLNA servers and their apps for control. No interest in Tidal or Qobuz.

     

    Would I be likely to improve SQ over DLNA if I dedicated the NUC to HQP Desktop, used an HQP remote or web interface as a controller, and continued to stream over DLNA to the Rendu?  Seems like a lot simpler way to run things because I don't need Tidal or Qobuz. Or would I need to work in other software like MinimServer or devices like the SGC if I just want to do this? I didn't get the impression that I do, but want to double check before I start messing around with HQP. 

    Share this comment


    Link to comment
    Share on other sites

    40 minutes ago, Mike Rubin said:

    I found myself getting lost a bit while reading all this.

     

    This is my use case: I have a headless Windows 10 (now 11 beta) NUC 10i7 that has the horsepower for DSD 256 steaming but pegs 100c on CoreTemp too often for my taste when I do that, so I probably am looking at playing back with only minimal processing. (I do have lots of hires files, including DSD.) Music files are on my NAS and are streamed to a Sonore Rendu using DLNA.  There are no USB connections before the Rendu.  I presently use Audirvana Studio and JRiver as DLNA servers and their apps for control. No interest in Tidal or Qobuz.

     

    Would I be likely to improve SQ over DLNA if I dedicated the NUC to HQP Desktop, used an HQP remote or web interface as a controller, and continued to stream over DLNA to the Rendu?  Seems like a lot simpler way to run things because I don't need Tidal or Qobuz. Or would I need to work in other software like MinimServer or devices like the SGC if I just want to do this? I didn't get the impression that I do, but want to double check before I start messing around with HQP. 

     

     

    I you use HQP desktop or Embedded and the HQP remote, you can just set the Rendu into NAA mode and send the audio directly to it, bypassing any DLNA.

    Share this comment


    Link to comment
    Share on other sites

    If you use HQP desktop and microRendu as NAA, can you use JPLAY as controller?

    Share this comment


    Link to comment
    Share on other sites

    8 hours ago, The Computer Audiophile said:

    No

    I’m trying to work out how JPlay fits in. It’s a DLNA controller right? When HQPlayer desktop runs on the server, does it not act as a DLNA renderer? 

    Share this comment


    Link to comment
    Share on other sites

    9 hours ago, The Computer Audiophile said:

     

     

    I you use HQP desktop or Embedded and the HQP remote, you can just set the Rendu into NAA mode and send the audio directly to it, bypassing any DLNA.

    Thanks, Chris.  In your view, is either version of HQP a step up in SQ from JRiver and Audirvāna Studio, especially if I don’t use its DSP capabilities because the NUC runs so much hotter when upsampling?

    Share this comment


    Link to comment
    Share on other sites

    1 hour ago, Mike Rubin said:

    Thanks, Chris.  In your view, is either version of HQP a step up in SQ from JRiver and Audirvāna Studio, especially if I don’t use its DSP capabilities because the NUC runs so much hotter when upsampling?

    Just realized that from reading on the Signalyst site that HQP can’t play mp3 or mp4 files.  I have a number of files that I downloaded from iTunes or Amazon that never were available on CD or as FLAC downloads (or that I don’t want to pay again to download in higher quality).  Don’t want to send this thread off-topic, but it sounds as though I would need to maintain another app on the computer for those files if I install HQP Desktop.  Is that correct?

    Share this comment


    Link to comment
    Share on other sites

    6 hours ago, zkeller said:

    I’m trying to work out how JPlay fits in. It’s a DLNA controller right? When HQPlayer desktop runs on the server, does it not act as a DLNA renderer? 

    Only HQP embedded can receive audio as a renderer, not desktop. 

    Share this comment


    Link to comment
    Share on other sites

    5 hours ago, Mike Rubin said:

    Just realized that from reading on the Signalyst site that HQP can’t play mp3 or mp4 files.

     

    convert them to WAV or FLAC

    Share this comment


    Link to comment
    Share on other sites

    Thanks.  I thought of that. 

     

    Easy enough to do with the batch converter that comes with dbpoweramp, although that is more storage space for no better quality. Plus, I like having the .mp3 extender on the file so that I know it is lossy.  

     

    Might just be easier to play those through JRiver, which I already use and that I assume can coexist on the same computer as HQP. 

    Share this comment


    Link to comment
    Share on other sites

    For those asking to use HQPlayer Desktop to playback Qobuz streams, apart pairing Roon, I think under Windows there is a way to use LMS 8 and Material Skin with Muso (2.7 needed as it allows to bookmark any web URL). As far as I know, he Web URL bookmark works pretty well as a workaround. Then Muso sends stream to HQP for playback.

    Share this comment


    Link to comment
    Share on other sites

    Thanks Chris.  I really appreciate alternatives to Roon, since I've never spent much time reading album covers or consuming metadata, I also don't like paying the monthly Roon tax, and have subscriptions to Deezer and Amazon Music which don't work with Roon.  Roon ties you to these two services and does not really work with internet radio or streaming services other than Qobuz and Tidal.  That said, you limited this review to integration with the same services that work with Roon.  Can this approach work with other services like Deezer, Amazon or Apple that don't work with Roon? 

     

    I'm a big fan of BlueOS since it works with virtually any service, internet radio source, and my NAS library.  I do offboard to a better DAC.

    Share this comment


    Link to comment
    Share on other sites

    I am having a devil of a time figuring out how to move downloaded music files from my PC (which I use to download Qobuz and other files) onto the hard drive of my (networked) sonicTransporter after having set up minimserver in order to stream Qobuz to HQPlayer. I used to be able to just find the sonicTransporter on my network. Now it has disappeared(?) or been replaced by a reference to minimserver. Can someone please just walk me through how to move music files that I have downloaded to my PC onto my sonicTransporter, the way I used to do before? Here is a picture of how Windows currently portrays my network. It used to show my sonicTransporter. Thanks.

     

    image.thumb.png.7a38149bd57247d52a51fa98d0634f59.png

     

    Share this comment


    Link to comment
    Share on other sites

    5 minutes ago, jiminlogansquare said:

    I am having a devil of a time figuring out how to move downloaded music files from my PC (which I use to download Qobuz and other files) onto the hard drive of my (networked) sonicTransporter after having set up minimserver in order to stream Qobuz to HQPlayer. I used to be able to just find the sonicTransporter on my network. Now it has disappeared(?) or been replaced by a reference to minimserver. Can someone please just walk me through how to move music files that I have downloaded to my PC onto my sonicTransporter, the way I used to do before? Here is a picture of how Windows currently portrays my network. It used to show my sonicTransporter. Thanks.

     

    image.thumb.png.7a38149bd57247d52a51fa98d0634f59.png

     

     

    Ah, lovely Windows. It isn't showing you the file share on the sT.

     

    Two fairly easy ways if it isn't going to show up on that network screen. 

     

    Where it says Network above Media devices, type \\sonictransporter and hit enter. If this doesn't get you there, find the IP address of the sT and type that into the box rather than the name sonictransporter, for example \\192.168.1.100 (you can get this by going to http://sonicorbiter.com

    Share this comment


    Link to comment
    Share on other sites

    @The Computer Audiophile hello Chris,

    about the paragraph on the UPNP gapless issue

    One issue that may be a showstopper for people is inconsistency of gapless playback. No matter what people say about gapless playback and the control point being what determines whether or not gapless audio works, my research definitively indicates gapless playback depends on the interaction between the control point, server, and renderer. All three matter. This gapless issue isn't unfixable though. Simon from MinimServer asked me to send him some logs because he has an idea about hat may be causing this issue. Hopefully this can be resolved.”

    .

    Do you have any news from Simon/MinimServer?

    I asked him about this issue again and here is his answer:

    In my test environment (RPi3 for server and RPi4 for renderer, 16/44 FLAC files, no transcoding), the great majority of the delay between tracks that causes these gaps is within HQPlayer (specifically, within the Rygel UPnP stack that HQPlayer uses to enable it to act as a UPnP renderer). Because HQPlayer doesn't use the UPnP gapless protocol, any significant delay during track changing breaks gapless playback.
    If HQPlayer is running on a faster machine, renderer track-changing delay will be reduced and any server delay will come into play. Increased resolution and/or server-side transcoding will increase server delay.
    The only way to make this work correctly in all cases is for HQPlayer to implement the UPnP gapless protocol. This enables the renderer to start streaming the next track before the current track has finished playing.”

     

    It clearly seems the … “ball is in Jussi hands” …

    Do you think this issue can be solved?

     

    Share this comment


    Link to comment
    Share on other sites

    5 minutes ago, The Computer Audiophile said:

    Playback doesn’t immediately stop when the app is closed

    This is the same behavior of Bubbleupnp and MConnect … isn’t it?

     

    Conversely this doesn’t happen with apps like Lumïn, Linn or Kazoo, ie if you kill/swipe off them playback does go on until the reproduction playlist is finished.

    In this case I don't understand how one of these apps / control points can affect the behavior of the gapless playback as they are exactly like a remote command.

    Share this comment


    Link to comment
    Share on other sites

    @stefano_mbp@The Computer Audiophile @Miska I am still unclear about this UPnP business...

    Miska, is it fair to say that HQPlayer is somehow at the mercy of Rygel in terms of receiving UPnP commands for rendering?

    If that is the case, there must be some miscommunication between server-controller-Rygel in some particular circumstances that cause delay.

    If, as Simon/MinimServer poited out, the delay is in the Rygel UPnP stack, is it possible to propose solutions to Rygel's main development group (Zeeshan Ali, Jens Georg, Thijs Vermeir, James Henstridge and Jussi Kukkonen) in the GNOME git repository?  (There is a "Jussi" there too ;))

       

    Share this comment


    Link to comment
    Share on other sites

    1 hour ago, The Computer Audiophile said:

    I would also love if some UPnP servers could send audio to HQPlayer natively rather than via UPnP. 
     

     

    Yes, it would mean that HQP Desktop is supported. Perhaps Simon could do something about it :cool:

    Share this comment


    Link to comment
    Share on other sites

    25 minutes ago, bibo01 said:

    Yes, it would mean that HQP Desktop is supported. Perhaps Simon could do something about it :cool:

    I asked him, but he seemed uninterested. 

    Share this comment


    Link to comment
    Share on other sites

    3 hours ago, The Computer Audiophile said:

    I would also love if some UPnP servers could send audio to HQPlayer natively rather than via UPnP.

    The problem is that an UPNP server is passive, it waits for a request from the renderer, otherwise it wouldn't be an upnp server.

    Share this comment


    Link to comment
    Share on other sites




    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...