ROCK not able to do convolution?

I have some convolution filters (wav + cfg in a .zip file) to do my crossover and room correction. This works fine when I have my DACs connected directly to a MacBook Pro (core is running on a mac desktop in another room), like this:

However, I have put together a NUC7i5BNH running ROCK, I can play music through it fine without convolution enabled but the moment I enable convolution (same zip file) it just tells me: “Transport: Failed to initialize the audio device”. Is ROCK incompatible with convolution?
I’m not clear if the convolution is performed on the core (mac desktop) or the closest/last Roon client (macbook or NUC)?

Convolution, like all DSP, is done in the Core, this will be either the desktop or NUC. ROCK is a Linux subset that runs the Linux version of RoonServer; there should be zero differences between different OS versions of Roon/RoonServer.

How did you generate the convolution files ?

Can you link a screenshot of the Signal Path when convolution is working on the desktop and another when music is playing through the ROCK ?

Thanks for your reply Andy, here are the screenshots and relevant log excerpt.

05/25 16:09:47 Info: [stats] 5329mb Virtual, 703mb Physical, 200mb Managed, 82 Threads,  FDs 
05/25 16:09:48 Trace: [zone NUC ADI2-Pro] Playing 62 Items
05/25 16:09:48 Trace: [zone NUC ADI2-Pro] Selecting Source state=Paused
05/25 16:09:48 Trace: [zone NUC ADI2-Pro] Playing TransportItem
05/25 16:09:48 Info: [audio/env] [zoneplayer] All streams were disposed
05/25 16:09:48 Trace: [NUC ADI2-Pro] [HighQuality, 16/44 FLAC => 32/44 8ch] [100% buf] [LOADING @ 0:00] Blackheart - 
05/25 16:09:48 Trace: [musicpowerstate] music is playing, preventing idle sleep
05/25 16:09:48 Trace: [tidal/http] GET https://api.tidalhifi.com/v1/tracks/38265632/streamurl?countryCode=US&sessionId=bcdfe3de-dd8e-4220-b31b-7067ba2919d6&soundQuality=LOSSLESS => Success
05/25 16:09:49 Trace: [tidal/http] GET https://api.tidalhifi.com/v1/tracks/29682064/streamurl?countryCode=US&sessionId=bcdfe3de-dd8e-4220-b31b-7067ba2919d6&soundQuality=LOSSLESS => Success
05/25 16:09:49 Trace: [tidal/http] GET https://api.tidalhifi.com/v1/tracks/29682064?countryCode=US&sessionId=bcdfe3de-dd8e-4220-b31b-7067ba2919d6& => Success
05/25 16:09:49 Info: [NUC ADI2-Pro] [zoneplayer] Playing: http://ab-pr-cf.audio.tidal.com/46028692/20140909112802_26.flac
05/25 16:09:49 Trace: [tidal/http] GET https://api.tidalhifi.com/v1/tracks/38265632?countryCode=US&sessionId=bcdfe3de-dd8e-4220-b31b-7067ba2919d6& => Success
05/25 16:09:49 Info: [NUC ADI2-Pro] [zoneplayer] Queueing: http://ab-pr-cf.audio.tidal.com/23656283/20141125011500_26.flac
05/25 16:09:50 Info: [NUC ADI2-Pro] [zoneplayer]     Open Result (Playing):Result[Status=Success]
05/25 16:09:50 Info: [NUC ADI2-Pro] [zoneplayer] Starting playback
05/25 16:09:50 Debug: [convolution] adjusted filter length from 65536 to 65436 since filter had trailing zeroes
05/25 16:09:50 Debug: [convolution] performing convolution with 4 paths
05/25 16:09:50 Trace: [NUC ADI2-Pro] [zoneplayer/raat] StartStream Sooloos.Broker.Transport.RaatZonePlayer+Endpoint: StreamFormat(channels=2, bitspersample=16, samplerate=44100, isdts=False) => StreamFormat(channels=8, bitspersample=32, samplerate=44100, isdts=False) streamid=863021885
05/25 16:09:50 Trace: [ADI-2 Pro (57924225)] [raatclient] SENT [11]{"request":"setup","format":{"sample_type":"pcm","sample_rate":44100,"bits_per_sample":32,"channels":8,"sample_subtype":"none"}}
05/25 16:09:50 Info: [zone NUC ADI2-Pro] OnPlayFeedback Playing
05/25 16:09:50 Trace: [NUC ADI2-Pro] [HighQuality, 16/44 FLAC => 32/44 8ch] [100% buf] [PLAYING @ 0:00] Blackheart - 
05/25 16:09:50 Trace: [ADI-2 Pro (57924225)] [raatclient] GOT [11] {"status":"DeviceInitFailed","message":"RAAT__OUTPUT_PLUGIN_STATUS_DEVICE_INIT_FAILED"}
05/25 16:09:50 Trace: [NUC ADI2-Pro] [zoneplayer/raat] device init failed. stopping stream
05/25 16:09:50 Info: sleep 0ms after flush
05/25 16:09:50 Warn: Track Stopped Due to DeviceInitFailed
05/25 16:09:50 Info: [audio/env] [zoneplayer -> stream -> endpoint] All streams were disposed
05/25 16:09:50 Info: [zone NUC ADI2-Pro] OnPlayFeedback StoppedLostEndpoint
05/25 16:09:50 Info: [audio/env] [zoneplayer -> stream] All streams were disposed
05/25 16:09:50 Trace: [zone NUC ADI2-Pro] Suspend
05/25 16:09:50 Info: [zone NUC ADI2-Pro] OnPlayFeedback Stopped
05/25 16:09:50 Trace: [NUC ADI2-Pro] [HighQuality, 16/44 FLAC => 32/44 8ch] [100% buf] [STOPPED @ 0:00] Blackheart - 
05/25 16:09:50 Info: [audio/env] [zoneplayer] All streams were disposed
05/25 16:09:50 Info: Alert: Transport: playback_error_endpoint_device_init_failed
05/25 16:09:50 Info: Alert: Transport: playback_error_endpoint_device_init_failed
05/25 16:09:50 Info: [NUC ADI2-Pro] [zoneplayer] Open result (Queueing): Result[Status=Success]
05/25 16:09:50 Trace: [prebuffer] ready 149940/441000 (34%) @ 0/126 sec
05/25 16:09:50 Trace: [streamingmediafile] immediate read of http://ab-pr-cf.audio.tidal.com/23656283/20141125011500_26.flac at 393216 length=10431562
05/25 16:09:52 Trace: [streamingmediafile] finished caching http://ab-pr-cf.audio.tidal.com/23656283/20141125011500_26.flac

Thanks Peter,

I don’t know enough to say whether it’s an issue, but the 32/44 8ch reference in the log looks interesting.

@support will be along shortly and will read the log. Hope they can get it working for you.

Thanks much Andy, I set the RME ADI2-Pro unit to multichannel, I use 4 of the 8 channels, it’s configured as a 7.1 device in Roon. In the convolution I address 4 channels (2 for subs and 2 for mains).

Hello @Peter_van_Rensburg,

When you enable the “Send stereo/mono content as 7.1” option in Device Setup for the RME ADI2-Pro, are you able to play to the device without DSP Engine enabled?

-John

Thanks @john , good idea. It double checked that DSP was disabled (convolution too for good measure). When I set “Send stereo/mono content as 7.1” to on, I receive the same error message as above, unable to play anything.

Also just for more colour, when playing without convolution and “Send stereo/mono content as 7.1” disabled - channels 5, 6, 7, 8 are blasted full volume with some kind of noise, ignoring the DSP volume control - hopefully I did not damage my speakers :((( See image below (the RME has a nice level display for all the channels).

Given that it all works fine plugged into Macbook, I’m starting to wonder if this is a ROCK/linux USB audio kernel driver problem?

Ok just for more information, reinstalled the NUC with the latest Fedora (v28) and it exhibits the exact same problems as described above (cannot do multichannel content and with 2ch puts noise out on 5,6,7,8).

[root@nucroon ~]# uname -a
Linux nucroon 4.16.3-301.fc28.x86_64 #1 SMP Mon Apr 23 21:59:58 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
[root@nucroon ~]# aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: Pro57924225 [ADI-2 Pro (57924225)], device 0: USB Audio [USB Audio]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

[root@nucroon ~]# amixer -c 0 contents
numid=2,iface=PCM,name='Capture Channel Map'
  ; type=INTEGER,access=r----R--,values=6,min=0,max=36,step=0
  : values=0,0,0,0,0,0
  | container
    | chmap-fixed=FL,FR,FC,LFE,RL,RR

numid=1,iface=PCM,name='Playback Channel Map'
  ; type=INTEGER,access=r----R--,values=8,min=0,max=36,step=0
  : values=0,0,0,0,0,0,0,0
  | container
    | chmap-fixed=FL,FR,FC,LFE,RL,RR,FLC,FRC

Ok, I’m starting to wonder if it’s a problem with how Roon interacts with ALSA… @support @brian is this something you cover in your automated functional/integration testing? linux + multichannel content + USB audio?

HQPlayer appears to be ok with playing multichannel content on Linux, at least it’s not giving me 4 channels at 0dBFS, I’ll play around with it’s convolution on Linux too.

@support any ideas?

Hello @Peter_van_Rensburg,

I’ve passed along the information in this thread to the developers. If you could update us on how the behavior you saw with HQPlayer differed vs Roon playback, that would be a helpful data point to help diagnose this issue.

-John

1 Like

Thanks @john, hope to do that tonight and will update here

Sorry not making much progress here, HQPlayer requires mono wav files for convolution, while my tool (Audiolense) only spits out multichannel wav files, not really finding any easy way to do this :frowning:
HQPlayer does appear to play 5ch DSD content ok, I can listen to at least 4 channels, just like with Roon on OSX. I’ll try a Roon output on Linux tomorrow for the same content.

@john any news from your developer team?

Hello @Peter_van_Rensburg,

Thanks for your patience while we investigate what’s going on here. After speaking with the developers, they would like to see the output of your RAATServer logs while attempting multichannel playback with Roon to your DAC. You can find these logs in your /var/roon/ directory on Linux. Uploading a sample of them to dropbox would be the easiest way for us to take a look. Thanks for your patience while we try and get this figured out!

-John

Thanks @john !

Please find logs here: https://www.amazon.com/clouddrive/share/WSPJqEHIHDkbzgCNn6TKYk1xb9NB0Hla9AQTdSd2ZmD

Hello @Peter_van_Rensburg,

I just wanted to let you know that we’re still looking into this issue. We have needed to shuffle some gear around the team so that we can get devices in the proper hands, I hope to have some more information for you in the near future.

-John

Thank you @john appreciate the update, looking forward to hearing what they find!

Hi @john - any updates here? Was your team able to reproduce the problem? Thanks!