Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

18i20 output control order #38

Open
hackery opened this issue Jan 3, 2025 · 0 comments
Open

18i20 output control order #38

hackery opened this issue Jan 3, 2025 · 0 comments

Comments

@hackery
Copy link

hackery commented Jan 3, 2025

With the 18i20 (gen 1 here) the output controls separates ADAT 7/8 from the other ADAT and places it ahead of the Line outputs:

image

This looks like the enumeration is being tripped up by alphabetic ordering putting 10 between 1 and 2:

scarlett-mixer -p
Device `Scarlett 18i20 USB' has 216 contols:
 0 'Master', PBS
 1 'Master 1 (Monitor)', PBS
 2 'Master 10 (ADAT 7/8)', PBS
 3 'Master 10L (ADAT 7/8) Source', ENUM
 4 'Master 10R (ADAT 7/8) Source', ENUM
 5 'Master 1L (Monitor) Source', ENUM
 6 'Master 1R (Monitor) Source', ENUM
 7 'Master 2 (Line 3/4)', PBS
 8 'Master 2L (Line 3/4) Source', ENUM
 9 'Master 2R (Line 3/4) Source', ENUM
 10 'Master 3 (Line 5/6)', PBS
 11 'Master 3L (Line 5/6) Source', ENUM
 12 'Master 3R (Line 5/6) Source', ENUM
 13 'Master 4 (Line 7/8)', PBS
 14 'Master 4L (Line 7/8) Source', ENUM
 15 'Master 4R (Line 7/8) Source', ENUM
 16 'Master 5 (Line 9/10)', PBS
 17 'Master 5L (Line 9/10) Source', ENUM
 18 'Master 5R (Line 9/10) Source', ENUM
 19 'Master 6 (SPDIF)', PBS
 20 'Master 6L (SPDIF) Source', ENUM
 21 'Master 6R (SPDIF) Source', ENUM
 22 'Master 7 (ADAT 1/2)', PBS
 23 'Master 7L (ADAT 1/2) Source', ENUM
 24 'Master 7R (ADAT 1/2) Source', ENUM
 25 'Master 8 (ADAT 3/4)', PBS
 26 'Master 8L (ADAT 3/4) Source', ENUM
 27 'Master 8R (ADAT 3/4) Source', ENUM
 28 'Master 9 (ADAT 5/6)', PBS
 29 'Master 9L (ADAT 5/6) Source', ENUM
 30 'Master 9R (ADAT 5/6) Source', ENUM
 31 'Extension Unit', PBS
 32 'Extension Unit', PBS
   ...

I presume that's just how they're exposed by ALSA. amixer does show that there exists a numid for each control which could perhaps be used for an alternative sort order - however I can't see how to pick up the snd_ctl_elem_id_t for the primitive control underlying the mixer element.

amixer controls -c 3
...
numid=9,iface=MIXER,name='Master 1 (Monitor) Playback Switch'
numid=10,iface=MIXER,name='Master 1 (Monitor) Playback Volume'
numid=45,iface=MIXER,name='Master 10 (ADAT 7/8) Playback Switch'
numid=46,iface=MIXER,name='Master 10 (ADAT 7/8) Playback Volume'
numid=47,iface=MIXER,name='Master 10L (ADAT 7/8) Source Playback Enum'
numid=48,iface=MIXER,name='Master 10R (ADAT 7/8) Source Playback Enum'
numid=11,iface=MIXER,name='Master 1L (Monitor) Source Playback Enum'
numid=12,iface=MIXER,name='Master 1R (Monitor) Source Playback Enum'
numid=13,iface=MIXER,name='Master 2 (Line 3/4) Playback Switch'
numid=14,iface=MIXER,name='Master 2 (Line 3/4) Playback Volume'
...
numid=41,iface=MIXER,name='Master 9 (ADAT 5/6) Playback Switch'
numid=42,iface=MIXER,name='Master 9 (ADAT 5/6) Playback Volume'
numid=43,iface=MIXER,name='Master 9L (ADAT 5/6) Source Playback Enum'
numid=44,iface=MIXER,name='Master 9R (ADAT 5/6) Source Playback Enum'

Even if that ordering fixes this problem, it may not suit all users. Perhaps there's some way to configure custom positioning to the controls at the UI level?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant