Linux (Debian like) + REW : Umik-1 well recognized ?

Erdman

Registered
Thread Starter
Joined
May 29, 2022
Messages
11
More  
Main Amp
Allo Volt+D
DAC
SMSL Sanskrit
Front Speakers
Davis Acoustics Olympia One Master
Subwoofers
B&W ASW608
Streaming Equipment
Raspi + Moode
Hello AV NIRVANA community,

As a new member I am glad to join this forum. I am quite interested in HiFi and have just picked up a umik-1 to make some measurements.

On my linux laptop (MX Linux 21, based on Debian 10) with ALSA (no pulseaudio) : when launching REW (last 5.20.8 version), I got the expected "would you like to use the detected umik-1..." pop-up. I can then load the calibration file as intended.

However on the preferences window, I can see "umik" (more precisely : "U18dB [plughw:1,0]") already selected as "input device", but there is no choice for "input". The "input" field is greyed with no way to select anything else as "default input". I read that I should select "umik" instead of "default input" in order to make calibrated measurements, but I am not able to do that.

Is that expected behavior, or should I check something ?

Two more clues :
- kernel messages when plugging umik :
[ 64.689097] usb 1-2: config 1 has an invalid interface number: 3 but max is 2
[ 64.689108] usb 1-2: config 1 has no interface number 2
- content of roomeq_wizard0.log.txt, which shows that Mic sensitivity should be loaded (last line) :
(date) PM roomeqwizard.RoomEQ_Wizard main
INFOS: REW V5.20.8 running Azul Systems, Inc. JRE 1.8.0_332 64-bit on linux 5.15.0-3mx-amd64
(date) PM roomeqwizard.iC$1 paintComponent
INFOS: Disabling use of BlendComposite due to internal error, waterfalls will not show overlaid cursor
(date) PM roomeqwizard.CalData calFileLoader
INFOS: Mic sensitivity -0,736 dB for serial number 7104664 from 7104664_90deg.txt
 

John Mulcahy

REW Author
Joined
Apr 3, 2017
Messages
7,337
Should be OK, REW can tell from the mixer description that it's a UMIK, even though that isn't in the mixer name, hence the prompt to use it. If you use the "Generate debug file" button on the soundcard preferences and attach the file that produces I can confirm it.
 

Erdman

Registered
Thread Starter
Joined
May 29, 2022
Messages
11
More  
Main Amp
Allo Volt+D
DAC
SMSL Sanskrit
Front Speakers
Davis Acoustics Olympia One Master
Subwoofers
B&W ASW608
Streaming Equipment
Raspi + Moode
Hello John,

Thank you for your reply... and above all for REW itself ! That's a very skilled-and-generous piece of software.

Concerning the "input" being greyed, what worries me is that I had to turn up or down the volume on my amp to get the mean SPL at the same level between two set of measurements.

I attach the soundcard debug file generated in pref window, if you have time to have a look.
 

Attachments

  • soundcard_debug.txt
    179.2 KB · Views: 16

John Mulcahy

REW Author
Joined
Apr 3, 2017
Messages
7,337
Looks OK. The input selection doesn't matter as there isn't an input volume control for recent UMIK-1 on macOS or Linux.
 

Erdman

Registered
Thread Starter
Joined
May 29, 2022
Messages
11
More  
Main Amp
Allo Volt+D
DAC
SMSL Sanskrit
Front Speakers
Davis Acoustics Olympia One Master
Subwoofers
B&W ASW608
Streaming Equipment
Raspi + Moode
OK, thank you for having check !
 

JohanAR

Registered
Joined
Jul 1, 2023
Messages
7
More  
Preamp, Processor or Receiver
Onkyo TX-SR702E
Computer Audio
Linux NUC13 i3
Front Speakers
Dynaudio Audience 40
Center Channel Speaker
Dynaudio Audience 122C
Surround Speakers
Mirage OM-R2
Subwoofers
TBD
I'm having a similar issue as OP. I get the "detected" popup, I have "U18dB" in the device list, etc..

But when I load the provided calibration file I get a popup saying that this is an unknown USB mic and it will ignore the "sens factor" from the calibration file. If performing a measure anyway I get a warning that the levels are too low, and that I should increase volume. I tried playing some music at normal listening volume and REW's SPL meter shows this as about 75dBZ with some peaks around 80-85. Unfortunately I have no SPL meter to compare with, and I don't know if these values are reasonable.

I tried running the Windows version of REW through Wine, and I got a similar issue, but there was another device named something along the lines of "USB:Umik-1 (18dB)" and if I switched to that it seemed like REW correctly recognized the Umic. However when running through Wine it doesn't list any multi-channel output devices, only 2.0 options, and I was hoping to use REW to measure all speakers

Is there any way to forcibly tell REW that this device actually is an Umik-1?

edit: I read through the early access change log and found this:

> Fixed: On Linux a USB mic may be detected but the cal file Sens Factor ignored due to no recognised USB mic

But after installing the ea version I still have the same issue

edit2: I checked the calibration factor and the sens factor is -0.00399995dB which sounds pretty small, so perhaps it doesn't matter if it's ignored?
 
Last edited:

John Mulcahy

REW Author
Joined
Apr 3, 2017
Messages
7,337
Please post the file generated by "Generate debug file" on the soundcard preferences while your UMIK is connected.

If the sens factor is not recognised SPL corrections for the input volume setting will not be applied.
 

JohanAR

Registered
Joined
Jul 1, 2023
Messages
7
More  
Preamp, Processor or Receiver
Onkyo TX-SR702E
Computer Audio
Linux NUC13 i3
Front Speakers
Dynaudio Audience 40
Center Channel Speaker
Dynaudio Audience 122C
Surround Speakers
Mirage OM-R2
Subwoofers
TBD
I actually have 2 different issues related to sound devices..

First is the one I mentioned, that the Umik-1 is detected and usable, but still "unknown". The file soundcard_debug_first.txt was generated at this point.

Then I restarted REW, and the two audio devices I was using disappeared. I.e.
Output Device: U7 [plughw:1,0]
Input Device: U18dB [plughw:2,0]

Everything else was still in the list, including the other two devices associated with the Asus Xonar U7 soundcard, plughw:1,1 and plughw:1,2

This has happened a few times before but I don't know what's triggering it and how it goes back to normal other than it seems to do so eventually. Restarting REW does at least not fix it immediately. Anyhow soundcard_debug_disappear.txt was generated at this point, and the file is definitely missing some entries, but "aplay -L" shows always shows all devices:

htpc@htpc13:~$ aplay -L null Discard all samples (playback) or generate zero samples (capture) default Playback/recording through the PulseAudio sound server lavrate Rate Converter Plugin Using Libav/FFmpeg Library samplerate Rate Converter Plugin Using Samplerate Library speexrate Rate Converter Plugin Using Speex Resampler jack JACK Audio Connection Kit oss Open Sound System pulse PulseAudio Sound Server speex Plugin using Speex DSP (resample, agc, denoise, echo, dereverb) upmix Plugin for channel upmix (4,6,8) vdownmix Plugin for channel downmix (stereo) with a simple spacialization hw:CARD=PCH,DEV=0 HDA Intel PCH, ALC256 Analog Direct hardware device without any conversions hw:CARD=PCH,DEV=3 HDA Intel PCH, HDMI 0 Direct hardware device without any conversions hw:CARD=PCH,DEV=7 HDA Intel PCH, HDMI 1 Direct hardware device without any conversions hw:CARD=PCH,DEV=8 HDA Intel PCH, HDMI 2 Direct hardware device without any conversions hw:CARD=PCH,DEV=9 HDA Intel PCH, HDMI 3 Direct hardware device without any conversions plughw:CARD=PCH,DEV=0 HDA Intel PCH, ALC256 Analog Hardware device with all software conversions plughw:CARD=PCH,DEV=3 HDA Intel PCH, HDMI 0 Hardware device with all software conversions plughw:CARD=PCH,DEV=7 HDA Intel PCH, HDMI 1 Hardware device with all software conversions plughw:CARD=PCH,DEV=8 HDA Intel PCH, HDMI 2 Hardware device with all software conversions plughw:CARD=PCH,DEV=9 HDA Intel PCH, HDMI 3 Hardware device with all software conversions sysdefault:CARD=PCH HDA Intel PCH, ALC256 Analog Default Audio Device front:CARD=PCH,DEV=0 HDA Intel PCH, ALC256 Analog Front output / input surround21:CARD=PCH,DEV=0 HDA Intel PCH, ALC256 Analog 2.1 Surround output to Front and Subwoofer speakers surround40:CARD=PCH,DEV=0 HDA Intel PCH, ALC256 Analog 4.0 Surround output to Front and Rear speakers surround41:CARD=PCH,DEV=0 HDA Intel PCH, ALC256 Analog 4.1 Surround output to Front, Rear and Subwoofer speakers surround50:CARD=PCH,DEV=0 HDA Intel PCH, ALC256 Analog 5.0 Surround output to Front, Center and Rear speakers surround51:CARD=PCH,DEV=0 HDA Intel PCH, ALC256 Analog 5.1 Surround output to Front, Center, Rear and Subwoofer speakers surround71:CARD=PCH,DEV=0 HDA Intel PCH, ALC256 Analog 7.1 Surround output to Front, Center, Side, Rear and Woofer speakers hdmi:CARD=PCH,DEV=0 HDA Intel PCH, HDMI 0 HDMI Audio Output hdmi:CARD=PCH,DEV=1 HDA Intel PCH, HDMI 1 HDMI Audio Output hdmi:CARD=PCH,DEV=2 HDA Intel PCH, HDMI 2 HDMI Audio Output hdmi:CARD=PCH,DEV=3 HDA Intel PCH, HDMI 3 HDMI Audio Output dmix:CARD=PCH,DEV=0 HDA Intel PCH, ALC256 Analog Direct sample mixing device dmix:CARD=PCH,DEV=3 HDA Intel PCH, HDMI 0 Direct sample mixing device dmix:CARD=PCH,DEV=7 HDA Intel PCH, HDMI 1 Direct sample mixing device dmix:CARD=PCH,DEV=8 HDA Intel PCH, HDMI 2 Direct sample mixing device dmix:CARD=PCH,DEV=9 HDA Intel PCH, HDMI 3 Direct sample mixing device usbstream:CARD=PCH HDA Intel PCH USB Stream Output hw:CARD=U7,DEV=0 Xonar U7, USB Audio Direct hardware device without any conversions hw:CARD=U7,DEV=1 Xonar U7, USB Audio #1 Direct hardware device without any conversions hw:CARD=U7,DEV=2 Xonar U7, USB Audio #2 Direct hardware device without any conversions plughw:CARD=U7,DEV=0 Xonar U7, USB Audio Hardware device with all software conversions plughw:CARD=U7,DEV=1 Xonar U7, USB Audio #1 Hardware device with all software conversions plughw:CARD=U7,DEV=2 Xonar U7, USB Audio #2 Hardware device with all software conversions sysdefault:CARD=U7 Xonar U7, USB Audio Default Audio Device front:CARD=U7,DEV=0 Xonar U7, USB Audio Front output / input surround21:CARD=U7,DEV=0 Xonar U7, USB Audio 2.1 Surround output to Front and Subwoofer speakers surround40:CARD=U7,DEV=0 Xonar U7, USB Audio 4.0 Surround output to Front and Rear speakers surround41:CARD=U7,DEV=0 Xonar U7, USB Audio 4.1 Surround output to Front, Rear and Subwoofer speakers surround50:CARD=U7,DEV=0 Xonar U7, USB Audio 5.0 Surround output to Front, Center and Rear speakers surround51:CARD=U7,DEV=0 Xonar U7, USB Audio 5.1 Surround output to Front, Center, Rear and Subwoofer speakers surround71:CARD=U7,DEV=0 Xonar U7, USB Audio 7.1 Surround output to Front, Center, Side, Rear and Woofer speakers iec958:CARD=U7,DEV=0 Xonar U7, USB Audio IEC958 (S/PDIF) Digital Audio Output iec958:CARD=U7,DEV=1 Xonar U7, USB Audio #1 IEC958 (S/PDIF) Digital Audio Output dmix:CARD=U7,DEV=0 Xonar U7, USB Audio Direct sample mixing device dmix:CARD=U7,DEV=1 Xonar U7, USB Audio #1 Direct sample mixing device dmix:CARD=U7,DEV=2 Xonar U7, USB Audio #2 Direct sample mixing device usbstream:CARD=U7 Xonar U7 USB Stream Output usbstream:CARD=U18dB Umik-1 Gain: 18dB USB Stream Output

Also not sure if this is a bug, but U7 [plughw:1,0] is the only output device that has more than 2 channels in REW. Even the obvious surround devices are stereo only if I select any of them.
 

Attachments

  • soundcard_debug_first.txt
    875.6 KB · Views: 16
  • soundcard_debug_disappear.txt
    670.1 KB · Views: 9
Last edited by a moderator:

John Mulcahy

REW Author
Joined
Apr 3, 2017
Messages
7,337
The HDMI output also has multichannel options, other PCM devices seem to be split into stereo pairs. I can't offer any help on configuring or interpreting Linux audio setups, sorry.

The debug log was generated by 5.20.13 rather than any of the 5.20.14 early access builds, did you revert?
 

JohanAR

Registered
Joined
Jul 1, 2023
Messages
7
More  
Preamp, Processor or Receiver
Onkyo TX-SR702E
Computer Audio
Linux NUC13 i3
Front Speakers
Dynaudio Audience 40
Center Channel Speaker
Dynaudio Audience 122C
Surround Speakers
Mirage OM-R2
Subwoofers
TBD
Unfortunately I have an old receiver without HDMI, so the output needs to go through the U7 sound card. Was expecting the surround51 to be routed straight to U7 which is the default sound card afaik, but perhaps this particular issue is something configured wrong in ALSA and unrelated to REW. Linux sound APIs have been somewhat of a messy situation, but everybody is moving to pipewire now which will hopefully simplify things over time. Haven't found any java sound API that directly supports pipewire so I suppose we'll have to manage with the compatibility layers.

When I started up 5.20.14ea I had the bug where both the devices I needed to use were missing. Tried downgrading and U7 surround output and the Umik input came back, but on the next restart they were gone again. I created this debug file in 5.20.14ea but I thought it wouldn't be useful with missing devices.
 

Attachments

  • soundcard_debug_4_20_14_disappear.txt
    670.1 KB · Views: 16

John Mulcahy

REW Author
Joined
Apr 3, 2017
Messages
7,337
When I started up 5.20.14ea I had the bug where both the devices I needed to use were missing.
I don't think that is related to the REW version, and perhaps unrelated to REW at all. The UMIK does still appear in the debug file, but it is not offering any lines - it seems somehow to be in use by some other part of the audio path.

I only mentioned the HDMI output as an example of another multichannel device. There seem to be multiple entries for devices like the U7, I'm not sure what the distinction between them is, perhaps they relate to different USB ports.
 

JohanAR

Registered
Joined
Jul 1, 2023
Messages
7
More  
Preamp, Processor or Receiver
Onkyo TX-SR702E
Computer Audio
Linux NUC13 i3
Front Speakers
Dynaudio Audience 40
Center Channel Speaker
Dynaudio Audience 122C
Surround Speakers
Mirage OM-R2
Subwoofers
TBD
Since the devices disappear when restarting REW, perhaps the old instance doesn't free them properly on shutdown?

I think one of the other devices on the U7 is the spdif out, can't remember what the third one is.
 

John Mulcahy

REW Author
Joined
Apr 3, 2017
Messages
7,337
REW only opens devices when they are actively being used to send or receive audio and closes them as soon as that ends (or before exit if it is shut down while devices are in use). @phofman may wish to comment on whether the csjsound linux driver maintains any device access outside active use.
 

phofman

Member
Joined
Jun 26, 2019
Messages
137
I am afraid I am lost in the details of the problem report. @JohanAR please can you describe what the problem is?

Just a few notes:

csjsound in the .14 version (i.e. devices prefixed with PCM) are a subset of those listed by aplay -L (ignored devices: https://github.com/pavhofman/csjsound-alsapcm/blob/main/src/impl.c#L85-L95 and https://github.com/pavhofman/csjsound-alsapcm/blob/main/src/config.h#L20-L24 ). Devices handled by JVM-provided alsa integration are hw devices listed by aplay -l, prefixed with the plug plugin (plughw:xxx, hard-coded in JVM source code).

Pipewire will not help with sorting these issues out. In fact pipewire along with pulseaudio complicates the situation as they more or less randomly reserve alsa devices and make them inaccessible for direct alsa access (both plughw and PCM devices). If direct alsa access is to be used, the only reliable solution is to tell PW/PA to ignore these devices.
 

JohanAR

Registered
Joined
Jul 1, 2023
Messages
7
More  
Preamp, Processor or Receiver
Onkyo TX-SR702E
Computer Audio
Linux NUC13 i3
Front Speakers
Dynaudio Audience 40
Center Channel Speaker
Dynaudio Audience 122C
Surround Speakers
Mirage OM-R2
Subwoofers
TBD
The issue that might be related to the sound driver is that sometimes when I restart REW, the devices (both input and output) that REW was using disappear from the lists. They still show up in the debug output from REW, but without any lines.

But since the csjsound driver appears to be open source, perhaps it's possible for me to debug it myself. Just need to figure out if I can build it and get REW to use my binaries.
 

phofman

Member
Joined
Jun 26, 2019
Messages
137
The issue that might be related to the sound driver is that sometimes when I restart REW, the devices (both input and output) that REW was using disappear from the lists.
Which list specifically?

They still show up in the debug output from REW, but without any lines.
Do you have those devices disabled in your pipewire/pulseaudio config? Are you sure they are not taken by those sound daemons?
But since the csjsound driver appears to be open source, perhaps it's possible for me to debug it myself. Just need to figure out if I can build it and get REW to use my binaries.
As I said, csjsound driver provides only the PCM:xxx devices. IIRC you were also mentioning plughw:xxx devices which are handled by the stock java alsa connector.
 

JohanAR

Registered
Joined
Jul 1, 2023
Messages
7
More  
Preamp, Processor or Receiver
Onkyo TX-SR702E
Computer Audio
Linux NUC13 i3
Front Speakers
Dynaudio Audience 40
Center Channel Speaker
Dynaudio Audience 122C
Surround Speakers
Mirage OM-R2
Subwoofers
TBD
I meant the dropdowns in REW where you select which output and input devices you want.

Ah, I must've misunderstood you. Sounds a bit strange if pipewire would reserve just the 2 devices that REW was using, but I don't know. Either way in that case your driver is probably not involved at all in this issue..

But on the topic of PCMs, do you perhaps have any idea about why all "PCM: surroundXX" ALSA devices are detected as stereo devices in REW? Looking at the REW debug printout (previously attached) all their formats say "2 channels".
 

phofman

Member
Joined
Jun 26, 2019
Messages
137
I meant the dropdowns in REW where you select which output and input devices you want.

Ah, I must've misunderstood you. Sounds a bit strange if pipewire would reserve just the 2 devices that REW was using, but I don't know. Either way in that case your driver is probably not involved at all in this issue..
Your java build includes pulseaudio connector (not in the default openjdk build). It's possible when javasound checks the device capabilities through PA, PA keeps the device open for a while, effectively blocking it for subsequent test through alsa directly.

It would be useful to open a terminal and watch what process is accessing which device by running

Code:
watch -n 0.5 lsof /dev/snd/*

You really want to make sure your REW alsa devices are disabled/off in PA/PW.

But on the topic of PCMs, do you perhaps have any idea about why all "PCM: surroundXX" ALSA devices are detected as stereo devices in REW? Looking at the REW debug printout (previously attached) all their formats say "2 channels".

You can check hw capabilities of that device with

Code:
aplay -v --dump-hw-params -D that_device /dev/zero

PCM checks the capabilities with similar calls https://github.com/pavhofman/csjsound-alsapcm/blob/main/src/impl.c#L269-L273 , https://github.com/pavhofman/csjsound-alsapcm/blob/main/src/impl.c#L176-L192
 

John Mulcahy

REW Author
Joined
Apr 3, 2017
Messages
7,337
Some PCM devices are reporting formats with 10,000 channels. That might cause issues with REW since it assumes the format with the most channels will be the preferred choice, though it may subsequently be flagged as not supported by the driver. I'll make sure those formats are ignored in the next build.
 

phofman

Member
Joined
Jun 26, 2019
Messages
137
10k channels is max_channels of the plug plugin. If a device is wrapped with the plug plugin, it will report max. 10k channels. I am afraid that ignoring the max value will cause REW ignoring the multichannel devices wrapped with the plug plugin which is quite common.

In linux audio apps the user will typically select required number of channels and the app will check if the value is supported when opening the device. Pre-generating a list of all supported format variants as in javasound is a rather unusual method and a number of audio APIs are not very friendly for such approach - basically a lot of combinations need to be tested when javasound enumerates the devices. The WASAPI connector is coded to do the clumsy combination trial/error, the alsa connectors (both openjdk and csjsound) report just bordering combinations read from the driver and it's up to the java app to check if a specific combination works (like non-java apps typically do).
 
Top Bottom