HQPlayer NAA thread

Ah I see. Then set HQPlayer output to DSD256x44.1k ?

Turn off adaptive rate so it stays fixed. DSD256 is better than 128 :grinning:

Yes better than the iFi :smile:

Btw if you google iFi Neo Stream (the user manual leaked early before any announcement) it will be DSD512 NAA. Looks like it will have DAC outputs too (RCA and 4.4mm balanced), as well as digital outputs.

I wonder what SoC hardware it has inside.

1 Like

Already reverted to DSD256 :+1:t2:. The sounds is quite similar to the DAC-60 also doing DSD256 with same filters. Need to explore more. Is there a reading you recommend on DSD basics :nerd_face:. Let’s make a HQPlayer for dummies :rofl:!

Wow! DSD512 NEO streamer! Sounds quite cool!

1 Like

Go to AS Forum and read everything by Miska over there.

Starting from 2010 :smile:

A quick search and you can see posts mentioning DSD but go read everything he has posted for the best learning

Over the last 6 years I’ve searched and read most what he has posted there. The best learning for HQPlayer !

3 Likes

Many thanks @dabassgoesboomboom :pray:t2::loud_sound:.

I see also Igor is an active participant!

Will be my nite sleeping :sleeping: reading

1 Like

Filters, that do the rate conversion, is half of the story. HQPlayer offers pretty wide variety of different kind of filters to suit personal aspects as well as different musical genres.

The other half are modulators used to produce SDM (DSD) output, these algorithms vary from simpler to very complex and run at high MHz sampling rates, so can get very demanding from processing power point of view.

What they exactly do and what are the exact differences is certainly not something to explain in a short message, but it could easily take a couple of books worth of mathematical jargon. :smiley:

These algorithms are something I’ve been burning a lot of my time on since 1998.

6 Likes

Hi @jussi_laako , do you have any optical source connected to your ADI-2 Pro, that can feed DSD64 (DoP) into HQPlayer ?

My ADI-2 shows DSD & PCM 24/176k on the screen - so the source is passing DoP64 to the RME.

But then getting DoP64 from RME to HQPlayer seems to not work.

I have pack_sdm=1 and “format=auto” in both networkaudiod.xml and hqplayerd.xml

Even with Direct SDM enabled - so its not a CPU limitation (DSD64 to DSD512)

Can you test it ? There’s a couple errors below

+ 2022/10/30 14:46:39 ALSA output engine starting...
  2022/10/30 14:46:39 ALSA output set hardware parameters for requested rate: 2822400
# 2022/10/30 14:46:39 ALSA output StartOnDemand(): clALSAEngine::Start(): clALSAEngine::SetParametersHW(): snd_pcm_hw_params_set_rate(): Invalid argument
  2022/10/30 14:46:39 ALSA output starting failed, attempt to reinitialize...
  2022/10/30 14:46:39 ALSA output attempting to uninitialize...
- 2022/10/30 14:46:40 ALSA output backend uninitialized
  2022/10/30 14:46:40 ALSA output attempting to initialize...
  2022/10/30 14:46:40 Output set channels: 2 (2)
  2022/10/30 14:46:40 asoundlib version: 1.2.6.1
  2022/10/30 14:46:40 ALSA output device: hw:CARD=AUDIO,DEV=0
  2022/10/30 14:46:40 ALSA output control element: SMSL Internal Clock Validity
  2022/10/30 14:46:40 ALSA output control element: Playback Channel Map
  2022/10/30 14:46:40 ALSA output access mode: RW_INTERLEAVED
  2022/10/30 14:46:40 ALSA output PCM format: S32_LE
  2022/10/30 14:46:40 ALSA output PCM bits: 32
  2022/10/30 14:46:40 ALSA output PCM physical width: 32
  2022/10/30 14:46:40 ALSA output PCM rates: 44100 - 768000
  2022/10/30 14:46:40 ALSA output rate available: 44100
  2022/10/30 14:46:40 ALSA output rate available: 48000
  2022/10/30 14:46:40 ALSA output rate available: 88200
  2022/10/30 14:46:40 ALSA output rate available: 96000
  2022/10/30 14:46:40 ALSA output rate available: 176400
  2022/10/30 14:46:40 ALSA output rate available: 192000
  2022/10/30 14:46:40 ALSA output rate available: 352800
  2022/10/30 14:46:40 ALSA output rate available: 384000
  2022/10/30 14:46:40 ALSA output rate available: 705600
  2022/10/30 14:46:40 ALSA output rate available: 768000
  2022/10/30 14:46:40 ALSA output DSD format: DSD_U32_BE
  2022/10/30 14:46:40 ALSA output DSD bits: 32
  2022/10/30 14:46:40 ALSA output DSD physical width: 32
  2022/10/30 14:46:40 ALSA output DSD rates: 1411200 - 24576000
  2022/10/30 14:46:40 ALSA output rate available: 2822400
  2022/10/30 14:46:40 ALSA output rate available: 5644800
  2022/10/30 14:46:40 ALSA output rate available: 11289600
  2022/10/30 14:46:40 ALSA output rate available: 22579200
+ 2022/10/30 14:46:40 ALSA output backend initialized
  2022/10/30 14:46:40 ALSA output set sampling rate: 2822400 (2822400)
+ 2022/10/30 14:46:40 ALSA output engine starting...
  2022/10/30 14:46:40 ALSA output set hardware parameters for requested rate: 2822400
  2022/10/30 14:46:40 ALSA output channels: 2 - 2
  2022/10/30 14:46:40 ALSA output active channels: 2
  2022/10/30 14:46:40 ALSA output number of periods: 2 - 1024
  2022/10/30 14:46:40 ALSA output period times: 136 - 1000000
  2022/10/30 14:46:40 ALSA output period sizes: 12 - 88200
  2022/10/30 14:46:40 ALSA output period time: 100000
  2022/10/30 14:46:40 ALSA output periods: 8820 (100) / 2
+ 2022/10/30 14:46:40 ALSA output engine started at: 2822400 (2822400)
+ 2022/10/30 14:46:40 ALSA output engine running...
+ 2022/10/30 14:46:40 NAA input network engine starting...
  2022/10/30 14:46:40 NAA input network format: 176400/32/2 [pcm]
  2022/10/30 14:46:40 NAA input network SDM streaming
  2022/10/30 14:46:40 NAA input sampling rate: 176400 (176400)
  2022/10/30 14:46:40 NAA input channels: 2 (2)
+ 2022/10/30 14:46:40 NAA input network engine started at: 176400
! 2022/10/30 14:46:40 NAA input clNetEngine::PullSDM(): clNetEngine::RecvStreamSDM(): clSocket::Recv()
  2022/10/30 14:46:40 End of track at 0/0/0
& 2022/10/30 14:46:40 Next  (0)
  2022/10/30 14:46:40 Audio transport: rate=44100 channels=2 format=auto buffer=0 (normal)
  2022/10/30 14:46:40 NAA input rate set unknown or empty, setting virtual rate
  2022/10/30 14:46:40 NAA input set sampling rate: 44100 (44100)
* 2022/10/30 14:46:40 Idle for tail
  2022/10/30 14:46:41 NAA input network Audio IPv6 support enabled
  2022/10/30 14:46:41 NAA input discovery from 0.0.0.0
& 2022/10/30 14:46:41 NAA input discovered network audio: name='rpi4-poeplus-naa' version='Signalyst Network Audio Daemon 4.2.5'  @192.168.2.244:43210
& 2022/10/30 14:46:41 NAA input discovered network audio: name='rpi4-poeplus-naa' version='Signalyst Network Audio Daemon 4.2.5'  @192.168.2.244:43210
  2022/10/30 14:46:42 NAA input discovery from ::
& 2022/10/30 14:46:42 NAA input discovered network audio: name='rpi4-poeplus-naa' version='Signalyst Network Audio Daemon 4.2.5'  @]:43210
& 2022/10/30 14:46:42 NAA input discovered network audio: name='rpi4-poeplus-naa' version='Signalyst Network Audio Daemon 4.2.5'  @[]:43210
  2022/10/30 14:46:43 NAA input connect to [f [ipv6]
  2022/10/30 14:46:43 NAA input network endpoint: USB Audio Class 2 (USB Audio Class 2)
  2022/10/30 14:46:43 NAA input network endpoint: ADI-2-B digi coax (ADI-2-B digi coax)
  2022/10/30 14:46:43 NAA input network endpoint: ADI-2-B optical (ADI-2-B optical)
  2022/10/30 14:46:43 NAA input network endpoint: ADI-2 DAC (58580869): USB Audio (hw:CARD=DAC58580869,DEV=0)
  2022/10/30 14:46:43 NAA input discovered 1 Network Audio Adapters
+ 2022/10/30 14:46:43 NAA input connect to [[ipv6]
  2022/10/30 14:46:43 NAA input network format: 44100/32/2 [pcm]
  2022/10/30 14:46:43 NAA input network format: 48000/32/2 [pcm]
  2022/10/30 14:46:43 NAA input network format: 88200/32/2 [pcm]
  2022/10/30 14:46:43 NAA input network format: 96000/32/2 [pcm]
  2022/10/30 14:46:43 NAA input network format: 176400/32/2 [pcm]
  2022/10/30 14:46:43 NAA input network format: 192000/32/2 [pcm]
  2022/10/30 14:46:43 NAA input network format: 352800/32/2 [pcm]
  2022/10/30 14:46:43 NAA input network format: 384000/32/2 [pcm]
  2022/10/30 14:46:43 NAA input network format: 705600/32/2 [pcm]
  2022/10/30 14:46:43 NAA input network format: 768000/32/2 [pcm]

Can you try connecting ADI-2 directly? I’ve tested the DoP input mostly on macOS with CoreAudio backend since my one of my ADI-2 Pro is connected to Mac Mini. The other one is not connected anywhere at the moment, but it used to be connected to my HQPlayer Embedded server where I also tested this occasionally.

1 Like

You mean connect ADI-2 direct to HQPlayer Embedded via USB cable - removing NAA input for this test?

Still using optical source to ADI-2?

I have ADI-2 directly connected to HQPlayer Embedded.

Now with DoP64 optical source, it keeps changing from this:

To this:

With Direct SDM enabled.

No sound - but ADI-2 shows DSD on its screen. If I drop the source volume then DSD disappears from ADI-2 screen (as expected). So it looks like it is properly transferring to ADI-2. Fails to transfer to HQPlayer properly.

  2022/10/30 15:38:00 Matrix processing enabled
  2022/10/30 15:38:00 Set volume: -3.0103 +
  2022/10/30 15:38:00 Offload: resampler=disabled convolution=disabled
  2022/10/30 15:38:00 Initialization complete, starting audio engine
+ 2022/10/30 15:38:00 NAA output network engine starting...
  2022/10/30 15:38:00 NAA output network format: 2822400/1/2 [sdm]
  2022/10/30 15:38:00 NAA output network SDM streaming
  2022/10/30 15:38:00 NAA output sampling rate: 2822400 (2822400)
  2022/10/30 15:38:00 NAA output channels: 2 (2)
+ 2022/10/30 15:38:00 NAA output network engine started at: 2822400
+ 2022/10/30 15:38:00 ALSA input engine starting...
  2022/10/30 15:38:00 ALSA input set hardware parameters for requested rate: 2822400
  2022/10/30 15:38:00 ALSA input channels: 2 - 2
  2022/10/30 15:38:00 ALSA input active channels: 2
  2022/10/30 15:38:00 ALSA input number of periods: 2 - 1024
  2022/10/30 15:38:00 ALSA input period times: 130 - 1000000
  2022/10/30 15:38:00 ALSA input period sizes: 23 - 176400
  2022/10/30 15:38:00 ALSA input period time: 100000
  2022/10/30 15:38:00 ALSA input periods: 17640 (100) / 2
+ 2022/10/30 15:38:00 ALSA input engine started at: 2822400 (2822400)
+ 2022/10/30 15:38:00 ALSA input engine running...
  2022/10/30 15:38:00 ALSA input rate change detected: 2822400 -> 176400
  2022/10/30 15:38:00 ALSA input rate change detected: 2822400 -> 176400
  2022/10/30 15:38:00 ALSA input rate change detected: 2822400 -> 176400
  2022/10/30 15:38:00 Audio transport rate change to 176400 pending
  2022/10/30 15:38:00 End of track at 0.106667/0/-0.106667
& 2022/10/30 15:38:00 Next  (0)
- 2022/10/30 15:38:00 ALSA input engine stopping...
  2022/10/30 15:38:00 ALSA input rate change detected: 2822400 -> 176400
  2022/10/30 15:38:00 ALSA input rate change detected: 2822400 -> 176400
  2022/10/30 15:38:00 ALSA input rate change detected: 2822400 -> 176400
  2022/10/30 15:38:01 ALSA input rate change detected: 2822400 -> 176400
  2022/10/30 15:38:01 ALSA input rate change detected: 2822400 -> 176400
  2022/10/30 15:38:01 ALSA input rate change detected: 2822400 -> 176400
  2022/10/30 15:38:01 ALSA input rate change detected: 2822400 -> 176400
  2022/10/30 15:38:01 ALSA input rate change detected: 2822400 -> 176400

Yes, I don’t see a particular reason to use NAA, unless you need to have “cable extension” through network instead of USB.

I’ve used AES, but it shouldn’t matter if both ends of optical link can do up to 192k (not all can though).

Yep as above, ADI-2 shows DSD on its screen with DoP64.

If I drop the app source volume then DSD disappears from ADI-2 screen.
So it looks like it is properly transferring from optical to ADI-2. Fails to then transfer to HQPlayer properly.

And I repeated the same with digi coax source also feeding ADI-2

It could also have something to do with ADI-2 firmwares, because my ADI-2 Pro’s never display anything about DSD…

I don’t think my ADI-2 Pro’s have such feature. Although I stopped upgrading firmware when RME changelog indicated that they removed something I wanted to use.

I assume you are running Multichannel CC mode like I am?

DSD shows only on the “state overview” screen.

See below. 1st pic is with app volume at 100%.

2nd pick is with app volume at 98%. So this is working as expected for DoP

I don’t even know where such app volume thing is. I found that kind of screen though.

Very simple, any app - like in this case using Audirvana’s DSP volume control.

100% software volume = DoP64 decoded by ADI-2
98% software volume = DoP64 not decoded by ADI-2

That’s what you expect from DoP64 right?

So it shows the optical source is capable of transmitting DoP64 to ADI-2.

So DoP64 is failing between ADI-2 and HQPlayer.

OK, I don’t use any such apps, so I couldn’t see it. And any app doing DoP output shouldn’t have any volume control that would apply to the “PCM” output data or the application is badly broken.

If application has DSP volume control for DSD, it should perform it in DSD before the DoP packing, not once it is already packed into DoP. It would be braindead to mangle the DoP data like “PCM”, because the result is just corrupted noise.

No, I don’t expect ADI-2 to touch the DoP or do any “decoding” or anything else. Just be bit-perfect pipe through and it doesn’t need to know whether source is DoP/DSD or not.

ADI-2 cannot do any DoP decoding in first place, because it can only do DSD over DoP on USB anyway.

Ok decoding is wrong word to use. But you can see in my photo DSD showing on optical input of ADI-2.

So it shows the optical source is capable of transmitting DoP64 to ADI-2.

So DoP64 is failing between ADI-2 and HQPlayer, no?

And from manual:

DoP input should naturally work with any bit-perfect input capable of at least 176.4/24.

I find it alarming if any DSP is performed for non-DoP (PCM) digital inputs. But I guess that applies more to the monitoring outputs rather than the data feed.

So I’m correctly assuming you have ADI-2 in CC Multichannel mode instead of stereo mode?

And you have correct channel offset for the S/PDIF input? (see the example configuration included with HQPlayer Embedded) Also please note that the channel offsets in the example configuration apply to ADI-2 Pro, you may need to adjust those for ADI-2 DAC or some other product.

Yes, I’ve been using ADI-2 for SPDIF inputs for quite a while now - it is my daily way to use HQPlayer.

Only issue that has come up is feeding DoP64 via SPDIF input.

If channel offsets wasn’t setup correctly , I would struggle daily with feeding Apple Music and Amazon Music UHD into HQPlayer :grinning:

From my simple experiment I have to conclude:

  1. optical source is transmitting DoP64 to ADI-2 correctly

  2. DoP64 is failing between ADI-2 and HQPlayer

That’s the only purpose of adjusting Audirvana DSP volume - to test #1 above (only do this for a simple bit perfect tester).

Not an option with ADI-2 DAC but not sure how this would make a difference to DoP64?

Also not required for months of successfully using ADI-2 as HQP input.

The setup works fine with all PCM - only falters with DoP64 input.

there is an opportunity to buy apple mac mini 2012. Intel core i5 , 2×2.5 GHz, 4GB DD3 1600 MHz , GPU - Intel hd graphics 4000 1536MB The question is, is such a PC suitable as NAA?