Gen 1: Add support for 1st Gen stereo elements

Move routing src/snk creation into alsa.c from window-routing.c.
Move port_category and port_num from struct routing_snk to struct
alsa_elem.
Handle ALSA elements with two values.
Handle controls labelled as 1L and 1R instead of 1 and 2.
This commit is contained in:
Geoffrey D. Bennett
2025-02-20 23:02:27 +10:30
parent b1831c137a
commit 45287711a4
6 changed files with 413 additions and 280 deletions

View File

@@ -237,7 +237,7 @@ static void get_snk_center(
double *y
) {
get_widget_center(r_snk->socket_widget, parent, x, y);
if (IS_MIXER(r_snk->port_category))
if (IS_MIXER(r_snk->elem->port_category))
(*y)++;
}
@@ -300,7 +300,7 @@ void draw_routing_lines(
draw_connection(
cr,
x1, y1, r_src->port_category,
x2, y2, r_snk->port_category,
x2, y2, r_snk->elem->port_category,
r, g, b, 2
);
}
@@ -362,7 +362,7 @@ void draw_drag_line(
draw_connection(
cr,
x1, y1, card->src_drag->port_category,
x2, y2, card->snk_drag->port_category,
x2, y2, card->snk_drag->elem->port_category,
1, 1, 1, 2
);