Audio Setup

The issue was with dbus, I had to change the file /etc/dbus-1/system-local.conf to

<policy user="root">
     <allow own="org.freedesktop.ReserveDevice1.Audio1"/>
</policy>

Because even though it was the only card it insists on being card1 not card0.

Also the mixer doesn’t appear in the webconf, I presume that’s more to do with the fact you have to launch alsamixer -c1 to view it.

Edit to note: It worked before so it must have been card0 at some point.

2 Likes

I have to configure the volume slider for each card individually.
That’s why I need the input from anybody who doesn’t see the slider.

root@zynthian:~# aplay -l
**** List of PLAYBACK Hardware Devices ****
card 1: CODEC [USB Audio CODEC], device 0: USB Audio [USB Audio]
  Subdevices: 0/1
  Subdevice #0: subdevice #0

root@zynthian:~# amixer -c1
Simple mixer control 'PCM',0
  Capabilities: pvolume pswitch pswitch-joined
  Playback channels: Front Left - Front Right
  Limits: Playback 0 - 128
  Mono:
  Front Left: Playback 110 [86%] [-18.00dB] [on]
  Front Right: Playback 109 [85%] [-19.00dB] [on]


As discussed in this topic, I have a Steinberg UR22 mkII working. I’m using the default usb audio settings, except that I changed “hw:0” into “hw:1” (-P 70 -t 2000 -s -d alsa -d hw:1 -r 44100 -p 256 -n 2 -X raw) and that I had to make the same adjustment to /etc/dbus-1/system-local.conf as mentioned by Baggypants above.

I see no volume sliders, only a slider for “Clock Source 41 Validity” (no idea what it is for)

This is the output of amixer:

Simple mixer control ‘Clock Source 41 Validity’,0
Capabilities: pswitch pswitch-joined
Playback channels: Mono
Mono: Playback [on]

I added the card.
The Clock Source 41 validity as well although I think, that this is not the volume.
I don’t think, that you can change it with amixer

After the last update the UR22 mkII is recognised as hw:0, so now the jackd options should be “-P 70 -t 2000 -s -d alsa -d hw:1 -r 44100 -p 256 -n 2 -X raw”

Are you sure, that it’s not hw:0?

Sorry, you’re right, it is now “-P 70 -t 2000 -s -d alsa -d hw:0 -r 44100 -p 256 -n 2 -X raw”

@jofemodo, we need something to get those manual changes automated.
Maybe an additional field, that contains the name of a script file in /custom?

Edirol UA1-EX:

-P 70 -t 2000 -dalsa -dhw:UA1EX -r44100 -p1024 -n2 -S -Xraw

OBS1: Jack only got past the error described in https://www.raspberrypi.org/forums/viewtopic.php?t=57025 by using the method also shown there;
OBS2: Another person here on Audio Setup.WE NEED YOUR INPUT also has this problem and the solutions are in some level related;
OBS3: amixer and https://alsa.opensrc.org/Edirol_UA-1EX shows that no volume control is implemented, even if it is softvol;
OBS4: Sorry for the confusion, only now i figured out how to get it working :sweat_smile: .

1 Like

Hi 2 all,
my settings for the HiFiberry dac+ adc…

Update your kernel to kernel7-hb
Setup Guide here: Kernel Update

Insert all the stuff needed for the dac+adc card to the
/home/pi/zynthian-webconf/lib/audio_config_handler.py file…
audio_config_handler.py (9.9 KB)

Insert

dtoverlay=hifiberry-dacplusadc
kernel=kernel7-hb.img

to the new HiFiberry dac+ adc Audiocard Entry…

thanks for watching: Dirk

Github says: Markus Heidt adding HifiBerry DAC+ ADC support

Pressing update… loading … ready…

IT WORKS! :heart_eyes:

:kissing_heart: Dirk

2 Likes

The latest USB connected device…


A blue yeti USB microphone (with headphone output)
Standard USB device but hw:1 and alteration to /etc/dbus-1/system-local.conf

I get audio in the phones from the zynth… Not so sure about input yet …

-P 70 -t 2000 -s -d alsa -d hw:1 -r 48000 -p 256 -n 2 -X raw

root@zynthian-nord:~# amixer
amixer: Mixer attach default error: No such file or directory
root@zynthian-nord:~# aplay -l
**** List of PLAYBACK Hardware Devices ****
card 1: Microphone [Yeti Stereo Microphone], device 0: USB Audio [USB Audio]
Subdevices: 0/1
Subdevice #0: subdevice #0
root@zynthian-nord:~#

Just for my benefit…

-P, --realtime-priority int
When running --realtime, set the scheduler priority to int.

-t, --timeout int

Set client timeout limit in milliseconds. 
 The default is 500 msec. 
In realtime mode the client timeout must be smaller than
the watchdog timeout (5000 msec). 

-s, --softmode

Ignore xruns reported by the ALSA driver.
This makes JACK less likely to disconnect 
unresponsive ports when running without --realtime. 

-d, --device name

The ALSA pcm device name to use. If none is specified,
JACK will use "hw:0", 
the first hardware card defined in /etc/modules.conf. 

-r, --rate int
Specify the sample rate. The default is 48000.
(not to be confused with --no-realtime (…?)

-p, --port-max n
Set the maximum number of ports the JACK
server can manage. The default value is 256.

-n, --nperiods int

Specify the number of periods of playback latency.
In seconds, this corresponds to 
        --nperiods times 
        --period divided by
        --rate.
The default is 2, the minimum allowable.
 For most devices,there is no need for any 
 other value with the --realtime option.  
 Without realtime privileges 
 or with boards providing 
 unreliable interrupts (like ymfpci),
 a larger value may yield fewer xruns.
This can also help if the system is not tuned for 
 reliable realtime scheduling.

For most ALSA devices, the hardware buffer
has exactly --period times --nperiods frames.
Some devices demand a larger buffer.
If so, JACK will use the smallest possible buffer 
containing at least --nperiods,
but the playback latency does not increase.

For USB audio devices it is recommended
  to use -n 3. 
Firewire devices supported by FFADO
are configured with -n 3 by default.

-X, --midi [seq|raw]

Specify which ALSA MIDI system to provide access to.
Using raw will provide a set of JACK MIDI ports
that correspond to each raw ALSA device on the machine.
Using seq will provide a set of JACK MIDI ports 
that correspond to each ALSA "sequencer" client 
(which includes each hardware MIDI port on the machine).
raw provides slightly better performance but does not permit
JACK MIDI communication with software written
to use the ALSA "sequencer" API.

I tested a few things with my
Steinberg UR44 and M-Audio M-Track.
I got both running but now nothing worked.

My configuration for M-Audio was:
-P 70 -t 2000 -s -d alsa -d hw:0 -r 44100 -p 256 -n 2 -X raw
-O complex -t 0.5 -s -88 -p yinfft -l 0.5

But now my Card is detected as Card 1 and the changes hw:1 or hw:MTrack in the webconfig doesn’t seem to be applied. When I Stop Zynthian and Load it up again with: /zynthian/zynthian-sys/sbin/zynthian.sh JACK is always looking for hw:0

I’m using a Pimoroni pHAT DAC. I selected HifiBerry DAC+ light in the hardware configuration.

1 Like

I have a Sabrent USB card. Wich work with "Generic USB Card.
I have not tried with any other settings.

1 Like

alsamixer -c 1 is needed since Buster . . .

We don’t need the input anymore. The new mixer determines all available controllers.
Nevertheless feel free to post any improvements of the jack parameters

2 Likes

I’m trying to debug a USB Yeti Microphone and it’s only coming up in Mono. alsamixer -c does still function and that allows me to see the settings.
It appears in patchage as a stereo device but the two channels are mono’ed into the left channel of effects.

It seems ok on an audioinjector . . .

image

Whilst ther same process is going on in the Behringer UA-222 device …
image

I have just bought a Behringer U-Phoria UM2. It is a 2x2 USB audio interface for recording microphones and instruments It is a 48 kHz USB interface with a “studio-grade XENYX Mic Preamp and combination XLR/TRS input”. I am hoping to use it with a raspberry pi 2, 3.5" TFT touch screen, and some usb midi devices such as my MK-225C 2 octave keyboard, which all seems to be working well.

For the Behringer U-Phoria UM2 I had to do both this setting with “generic USB device”

-P 70 -t 2000 -s -d alsa -d hw:1 -r 48000 -p 256 -n 2 -X raw

and I had to change the file /etc/dbus-1/system-local.conf to

<policy user="root">
     <allow own="org.freedesktop.ReserveDevice1.Audio1"/>
</policy>

as per @Baggypants suggestion. Thank you so much.

mine is also “card 1: CODEC” and using the word CODEC did not seem to work.

How do i add “alsamixer -c1” to my webconf menu ?

1 Like