That's unfortunately not possible. The only mode that allows to change anything is the direct. In any of the other modes all the alsamixer controls are not active. But i will try it again just in case.
It is a shame, this card seems very powerful and is easy to find relatively cheap. Will report back if i manage or not to change pcm capture to spdif.
That's unfortunately not possible. The only mode that allows to change anything is the direct. In any of the other modes all the alsamixer controls are not active. But i will try it again just in case.
What do you mean by not active? The ctrl 'PCM Capture Source' is rw.
Does the source change with this?
Code:
amixer -c YOUR_CARD_ID cset numid=20 2
i can confirm now. In normal mode it is not possible to change any setting in alsamixer. i see alsamixer like this:
when i try the instruction you suggested it doesnt do anything, stays in line in:
marcosch@raspcamilla:~$ amixer -c G6 cset numid=20 2
numid=20,iface=MIXER,name='PCM Capture Source'
; type=ENUMERATED,access=rw------,values=1,items=4
; Item #0 'Line In'
; Item #1 'External Mic'
; Item #2 'S/PDIF In'
; Item #3 'What U Hear'
: values=0
any other way to try to force spdif in?
when i try the instruction you suggested it doesnt do anything, stays in line in:
marcosch@raspcamilla:~$ amixer -c G6 cset numid=20 2
numid=20,iface=MIXER,name='PCM Capture Source'
; type=ENUMERATED,access=rw------,values=1,items=4
; Item #0 'Line In'
; Item #1 'External Mic'
; Item #2 'S/PDIF In'
; Item #3 'What U Hear'
: values=0
any other way to try to force spdif in?
The values shown for access seems to say that "owner" (what ever account that alsa is run under, possibly root/admin) is the only user level that can read/write the value. Try running the command as root:
Bash:
sudo amixer -c G6 cset numid=20 2
Last edited:
Not sure if this is what your are asking for but it is connected in the top USB 3 port at the momment. I recall trying a USB 2 port with the same issues. I don't have any logs for that though.ChrisPatlach: Which USB port on your RPi4 do you use for your 8ch DAC?
pi@raspberrypi:~ $ lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 003: ID 20b1:2009 XMOS Ltd DAC8PRO
Bus 001 Device 002: ID 2109:3431 VIA Labs, Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
There were reports of some owners having problems with linux compatibility in some of the earlier firmware versions of the DAC8PRO. I am on firmware version 1.42. The only issues I have had is with the the mixer volume controls, these come up in alsamixer but dont actually do anything.
No idea if this matters but the only other hardware that i have connected to the pi is a small spi interface lcd screen.
FWIW, my DAC8 PRO was shipped with a version that would NOT WORK ON ANY LINUX distro. The version number in the flash was also wrong. I am currently running 1.43. I needed to buy a JTAG device from Digikey to flash it because the loaded flash would not flash over the USB port. You will have to get the flash kit and instructions from OR.Not sure if this is what your are asking for but it is connected in the top USB 3 port at the momment. I recall trying a USB 2 port with the same issues. I don't have any logs for that though.
pi@raspberrypi:~ $ lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 003: ID 20b1:2009 XMOS Ltd DAC8PRO
Bus 001 Device 002: ID 2109:3431 VIA Labs, Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
There were reports of some owners having problems with linux compatibility in some of the earlier firmware versions of the DAC8PRO. I am on firmware version 1.42. The only issues I have had is with the the mixer volume controls, these come up in alsamixer but dont actually do anything.
No idea if this matters but the only other hardware that i have connected to the pi is a small spi interface lcd screen.
same result:The values shown for access seems to say that "owner" (what ever account that alsa is run under, possibly root/admin) is the only user level that can read/write the value. Try running the command as root:
Bash:sudo amixer -c G6 cset numid=20 2
marcosch@raspcamilla:~$ sudo amixer -c G6 cset numid=20 2
[sudo] password for marcosch:
numid=20,iface=MIXER,name='PCM Capture Source'
; type=ENUMERATED,access=rw------,values=1,items=4
; Item #0 'Line In'
; Item #1 'External Mic'
; Item #2 'S/PDIF In'
; Item #3 'What U Hear'
: values=0
The other thing to try is to enter the text value for the desired item, not its index. This might be necessary because the control is of type ENUMERATED and not of type INTEGER. So for example try this:
This worked on my system to set the value of an enumerated soundcard property:
In the output above, I was able to set the value from Disabled to Enabled. The "values" field at the end gives the index, not the text, of the current setting in the enumerated item list. Also I did not need to use sudo to do this.
Bash:
sudo amixer -c G6 cset numid=20 'S/PDIF In'
This worked on my system to set the value of an enumerated soundcard property:
Bash:
charlie@CI327:~$ amixer -c 1 cset numid=3 'Disabled'
numid=3,iface=MIXER,name='Loopback Mixing'
; type=ENUMERATED,access=rw------,values=1,items=2
; Item #0 'Disabled'
; Item #1 'Enabled'
: values=0
charlie@CI327:~$ amixer -c 1 cset numid=3 'Enabled'
numid=3,iface=MIXER,name='Loopback Mixing'
; type=ENUMERATED,access=rw------,values=1,items=2
; Item #0 'Disabled'
; Item #1 'Enabled'
: values=1
In the output above, I was able to set the value from Disabled to Enabled. The "values" field at the end gives the index, not the text, of the current setting in the enumerated item list. Also I did not need to use sudo to do this.
Thanks for the info. Are you able to control volume via amixer with version 1.43 ?FWIW, my DAC8 PRO was shipped with a version that would NOT WORK ON ANY LINUX distro. The version number in the flash was also wrong. I am currently running 1.43. I needed to buy a JTAG device from Digikey to flash it because the loaded flash would not flash over the USB port. You will have to get the flash kit and instructions from OR.
Charlie, thanks a lot for the corrected amixer command. Amixer syntax is not exactly user friendly 🙂 Thanks.
I am using a PC, not a RasbPi.Thanks for the info. Are you able to control volume via amixer with version 1.43 ?
I haven't tried volume via an alsamixer in a long time, but can give it a try. I had to fix the Scarlet ALSA mixer to get it to work with my 3rd Gen Scarlett 8i6.
I am using ALSA_CDSP, CamillaDSP and 2 derivatives of ALSA_CDSP.
I am controlling volume via the DAC8's volume control to protect the speakers from pilot errors, software accidents and volume induced bit-loss (until absolutely necessary). Any reason why you can't use the DAC8's volume control ?
UPDATE: I am also using ALSA directly to the HW interface, not using pipewire or PulseAudio.
Last edited:
I just tried using alsamixer version 1.2.4 and it doesn't touch the DAC8's volume.Thanks for the info. Are you able to control volume via amixer with version 1.43 ?
Running JRMC -> ALSA_CDSP VST3 plugin -> CamillaDSP -> DAC8.
JRMC's volume control and the DAC8's volume control works but the alsamixer doesn't touch it.
🙂 as always Pavel...you are the magician !!OK, I see you are already using Loopback,1 in your player.
First establish your playback device is working OK.
Code:aplay -D hw:2 some_44.1khz_16bit.wav
Then run CDSP with your config in https://www.diyaudio.com/community/...overs-room-correction-etc.349818/post-6960023
That will open device Loopback,0 at 44.1/32bit/2ch (because your CDSP config uses format: S32LE for the capture device), making the other (capture) side of loopback locked to these hw params.
Then run
Code:aplay -D hw:Loopback,1 some_44.1khz_32bit.wav
You can create the wav at any params with sox.
Or run
Code:aplay -v -D plughw:Loopback,1 some_44.1khz_16bit.wav
and watch the plug plugin correctly converting the 16bit format to S32_LE for the loopback device.
Only after this chain is running correctly move ahead to the actual player configuration, systemd setup etc.
Yes !!!...I have sound ! Manually starting camilladsp and using first the minimal snippet .yml then with the full .yml for headphone correction. Both work wonderfully.
Next to..
I will report results.move ahead to the actual player configuration, systemd setup etc.
Hmmm on further investigation it appears that currently Pulse'OrribleAudio is not involved in any way...so despite the manual calling I might just skip any further configuration and find some way to adjust the .yml for other formats...
is it possible to use plughw for the hardware input ?? or do all files have to confirm to the input output settings ?
Last edited:
It is !! very happy here 🙂is it possible to use plughw for the hardware input ??
alsamixer and no pulse...camilladsp and headphone correction....
marcosch@raspcamilla:~$ sudo amixer -c G6 cset numid=20 'S/PDIF In'The other thing to try is to enter the text value for the desired item, not its index. This might be necessary because the control is of type ENUMERATED and not of type INTEGER. So for example try this:
Bash:sudo amixer -c G6 cset numid=20 'S/PDIF In'
This worked on my system to set the value of an enumerated soundcard property:
Bash:charlie@CI327:~$ amixer -c 1 cset numid=3 'Disabled' numid=3,iface=MIXER,name='Loopback Mixing' ; type=ENUMERATED,access=rw------,values=1,items=2 ; Item #0 'Disabled' ; Item #1 'Enabled' : values=0 charlie@CI327:~$ amixer -c 1 cset numid=3 'Enabled' numid=3,iface=MIXER,name='Loopback Mixing' ; type=ENUMERATED,access=rw------,values=1,items=2 ; Item #0 'Disabled' ; Item #1 'Enabled' : values=1
In the output above, I was able to set the value from Disabled to Enabled. The "values" field at the end gives the index, not the text, of the current setting in the enumerated item list. Also I did not need to use sudo to do this.
[sudo] password for marcosch:
numid=20,iface=MIXER,name='PCM Capture Source'
; type=ENUMERATED,access=rw------,values=1,items=4
; Item #0 'Line In'
; Item #1 'External Mic'
; Item #2 'S/PDIF In'
; Item #3 'What U Hear'
: values=0
:'(
@MRamone
Are you successful if you try to set other values, e.g. 'External Mic'?
What is the OS and kernel versions on your system? You can run:
In my example I was using a machine with the following:
Are you successful if you try to set other values, e.g. 'External Mic'?
What is the OS and kernel versions on your system? You can run:
Bash:
uname -r
lsb_release -a
In my example I was using a machine with the following:
Bash:
charlie@CI327:~$ uname -r
5.13.0-30-generic
charlie@CI327:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 20.04.4 LTS
Release: 20.04
Codename: focal
Thanks for checking. I use roon, shairport-sync and spdif input via the DAC8PRO as audio sources. Both shairport-sync and roon can link their volume control to USB dac hardware volume when the USB dac controls are accessible. I currently use the DAC8PRO remote or both application volume and DAC8PRO volume at the same time but it would be nice to have roon and airplay volume sliders control the dac hardware volume. I could use CamillaDSP volume control but would lose the volume display on the DAC8PRO.I just tried using alsamixer version 1.2.4 and it doesn't touch the DAC8's volume.
Running JRMC -> ALSA_CDSP VST3 plugin -> CamillaDSP -> DAC8.
JRMC's volume control and the DAC8's volume control works but the alsamixer doesn't touch it.
- Home
- Source & Line
- PC Based
- CamillaDSP - Cross-platform IIR and FIR engine for crossovers, room correction etc