-
Notifications
You must be signed in to change notification settings - Fork 23
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
Strange mixer matrix behavior using Scarlett 18i8 2nd gen #21
Comments
try perhaps there's a similar issue like for the 6i6, where the distance between the matrix controls is reported incorrectly by the kernel driver: scarlett-mixer/src/scarlett_mixer.c Lines 128 to 129 in a29c0a2
|
Hi
the other command returns what follows: |
okay I understand what OPT_DETECT is doing now. |
Hi yatly, thanks for your reply! My apologies for mine being so late... 97 { 98 .name = "Scarlett 18i8 USB", 99 .smi = 18, .smo = 8, 100 .sin = 18, .sout = 8, 101 .smst = 4, 102 .samo = 0, 103 .num_hiz = 2, 104 .num_pad = 4, 105 .num_air = 0, 106 .pads_are_switches = false 107 .matrix_mix_column_major = false, 108 .matrix_mix_offset = 40, .matrix_mix_stride = 9, // < Matrix 01 Mix A 109 .matrix_in_offset = 39, .matrix_in_stride = 9, // Matrix 01 Input, ENUM 110 .input_offset = 20, // < Input Source 01, ENUM 111 .out_gain_map = { 1 /* Monitor */, 4 /* Headphone 1 */, 7 /* Headphone 2 */, 10 /* SPDIF */, -1, -1 , -1, -1, -1, -1 }, 112 .out_gain_labels = { "Monitor", "Headphone 1", "Headphone 2", "SPDIF", "", "", "", "", "", "" }, 113 .out_bus_map = { 2, 3, 5, 6, 8, 9, 11, 12, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, 114 .hiz_map = { 15, 17 }, // < Input 1 Impedance, ENUM, Input 2 Impedance, ENUM 115 .pad_map = { 16, 18, 19, 20 }, 116 }, Furthermore, the printout of the command ./scarlett-mixer -vv --print controls ends with Using autodetected mapping: does this mean that parameters values set by software are changed with those (wrong) read by kernel? |
I changed both "stride" parameter in the source, no effect.... only different device param report with -vv --print-controls option. Still using autodetected parameters. |
You can build my branch: https://github.com/yatli/scarlett-mixer |
auto detect = not using these values in the code. |
Your code seems to work! I'm going to stress it in the next days. Thanks! No overlap in the matrix and all pad buttons working (pad 3&4 buttons were dead in the former version). Good job! ;) |
(previously closed by mistake) |
Hi all!
In these days I did some test of the mixer with my Scarlett 18i8 2nd gen on Ubuntu 20.04 LTS (notebook Samsung NP370R5E, Kernel Linux 5.4.0-58-lowlatency x86_64); the scarlett internal mixer control capability is very powerful, and let me effectively use an old laptop to track my band (when the pandemic will let us to play together again, at least...) using Ardour.
But I found a strange behavior in the mixer control matrix: let r for row and c for column, controls seems to be linked <r,c> and <r+10, c-1>. So when I move knob at <1,2> the knob at <11,1> moves too... the 'link' doesn't depend on source or capture selection.
From my test, scarlett internal mixer seems to respond coherently to what is shown in the GUI, so the input-output mapping is predictable; for example, if I select the same source for two linked knob, then that source gets 6 more dB. But full independent control for more than 10 sources is not possible...
Tried to dig a bit in the sources to find some clue but I'm not sure to understand how structs parameters affect the controls...
Seems that someone else here is using 18i8... have you ever experienced same issue? Is it a known problem (I apologize if so...)?
Thanks
Greetings form Italy
Giampietro
PS: There is some minor cosmetics issue too (knob bottom left is Headphone 2R...)
The text was updated successfully, but these errors were encountered: