Commit Graph

196 Commits

Author SHA1 Message Date
Geoffrey D. Bennett
b41a47587b Add support for TLVs from the FCP driver
Decode level meter labels and the FCP socket location from TLVs.
2025-02-21 04:08:34 +10:30
Geoffrey D. Bennett
11dba2b42c Simplify update_levels_controls() 2025-02-21 04:08:34 +10:30
Geoffrey D. Bennett
f1f085abcf Add support for new 4th Gen control names
The 4th Gen driver has renamed "Line" to "Analogue" and removed
"Input" and "Output" in cases like "Mixer Input", "DSP Input", and
"Analogue Output". Some numbers are no longer zero-padded.
2025-02-21 04:08:34 +10:30
Geoffrey D. Bennett
18841b2a45 Add support for two-control speaker switching and talkback
The 4th Gen driver has two boolean controls each for the speaker
switching and talkback controls, rather than the single enum control
that the 3rd Gen driver presents.
2025-02-21 04:08:34 +10:30
Geoffrey D. Bennett
64d9f8173a Make perror("fopen") messages distinct 2025-02-21 04:08:34 +10:30
Geoffrey D. Bennett
78e2d9642f Update alsa interface and gain widget to support linear volume
# Conflicts:
#	src/alsa.c
2025-02-21 04:08:34 +10:30
Geoffrey D. Bennett
4a40b00695 Update gtkdial to support linear-volume controls 2025-02-21 04:08:34 +10:30
Geoffrey D. Bennett
0f7389dca8 Highlight mixer labels on dial hover 2025-02-21 04:08:34 +10:30
Geoffrey D. Bennett
640d027502 Update routing hover to highlight corresponding source sink 2025-02-21 04:08:34 +10:30
Geoffrey D. Bennett
2bc6c86a8d Handle per-channel link buttons
Older kernel versions had one link button per channel pair.
2025-02-21 04:08:34 +10:30
Geoffrey D. Bennett
67ccd1d684 Handle interfaces with fixed mixer inputs 2025-02-21 04:08:34 +10:30
Geoffrey D. Bennett
81bc3c77c8 Treat locked ALSA elements as read-only 2025-02-21 04:08:34 +10:30
Geoffrey D. Bennett
e0083f7085 Update constants for new maximum number of mux inputs and meters
Big 4th Gen devices have more inputs and meters than previous devices.
2025-02-21 04:08:34 +10:30
Geoffrey D. Bennett
5da140df1e Wrap long line, fix reopen callback comment in alsa.c 2025-02-21 04:08:34 +10:30
Geoffrey D. Bennett
1b0e072237 Gen 1: Add support for 1st Gen output controls 2025-02-21 04:08:34 +10:30
Geoffrey D. Bennett
8178bd298b Gen 1: Add support for 1st Gen input controls 2025-02-21 04:08:34 +10:30
Geoffrey D. Bennett
845dd5c98b Gen 1: Add support for 1st Gen mixer controls 2025-02-21 04:08:34 +10:30
Geoffrey D. Bennett
45287711a4 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.
2025-02-21 04:08:34 +10:30
Geoffrey D. Bennett
b1831c137a Gen 1: Add support for elements with count > 1 in saved config 2025-02-21 04:08:34 +10:30
Geoffrey D. Bennett
1cdac65c00 Gen 1: Move alsa-sim elem creation into alsa_config_to_new_elem() 2025-02-21 04:08:34 +10:30
Geoffrey D. Bennett
c38bbba793 Gen 1: Parse and save config count field
Needed for 1st Gen stereo volume controls.
2025-02-21 04:08:34 +10:30
Geoffrey D. Bennett
da1f011ab4 Gen 1: Ignore control "index" value in saved configurations 2025-02-21 04:08:34 +10:30
Geoffrey D. Bennett
64f0cc36cc Gen 1: Add PC_OFF port category 2025-02-21 04:08:34 +10:30
Geoffrey D. Bennett
9034790c06 Gen 1: Trigger support based on "Matrix" element presence 2025-02-21 04:08:34 +10:30
Geoffrey D. Bennett
91d7218a47 Gen 1: Add 1st Gen devices to window-hardware.c 2025-02-21 04:08:34 +10:30
Geoffrey D. Bennett
97ced90466 Gen 1: Mute switches are backwards 2025-02-21 04:08:34 +10:30
Geoffrey D. Bennett
fa3e73d52f Gen 1: Handle different names for clock source and sync status 2025-02-21 04:08:34 +10:30
Geoffrey D. Bennett
97ca9ae754 Add get_elem_by_substr() to alsa.[ch] 2025-02-21 04:08:34 +10:30
Geoffrey D. Bennett
6a04e1d1fa Update logo 2025-02-21 04:08:34 +10:30
Geoffrey D. Bennett
da4be2993e Update flatpak to GNOME 47 2025-02-21 04:08:25 +10:30
Geoffrey D. Bennett
abdb7f40f5 Fix crash in window-level.c on_destroy() 2024-07-03 02:53:18 +09:30
Geoffrey D. Bennett
0187698826 Replace cairo_show_text() in gtkdial.c with Pango
Fixes: #126.
2024-07-03 02:53:18 +09:30
unhappy-ending
c5b1ff0b94 Update Makefile to use $(CC) rather than cc
Calling cc directly causes a build failure on Clang/LLVM based Gentoo
machines that use LLVM specific toolchain flags.
2024-05-17 18:30:13 +09:30
Geoffrey D. Bennett
955dd1355a Add 3rd Gen 18i8/18i20 S/PDIF/Digital I/O Mode startup controls 2024-05-10 22:27:45 +09:30
Geoffrey D. Bennett
1615580de6 Add const to get*elem*() char* function arguments 2024-05-10 22:25:43 +09:30
Geoffrey D. Bennett
4ce2565b90 Add peak value display to the level meters 2024-04-11 22:47:48 +09:30
Geoffrey D. Bennett
909d3618b3 Use snprintf() in widget-gain.c when printing floats 2024-04-11 21:24:27 +09:30
Geoffrey D. Bennett
1fa964d348 Add peak display to the level meters 2024-04-11 21:24:27 +09:30
Geoffrey D. Bennett
159b3340eb Move level meter fields out of struct alsa_card
Create a levels struct managed inside window-levels.c.
2024-04-11 21:24:27 +09:30
Geoffrey D. Bennett
5d77207b66 Download and include scarlett2 firmware in flatpak
Fixes: #112.
2024-04-11 21:23:49 +09:30
Geoffrey D. Bennett
a940db51c2 Add -fPIE and -pie build flags to fix flatpak build under Fedora 2024-04-11 18:13:21 +09:30
Geoffrey D. Bennett
92f9d5db8e Switch to embedded SVG icons
Make the icons independent of the desktop theme so they always look
good.
2024-03-31 03:29:10 +10:30
Geoffrey D. Bennett
af97b72b12 Update widget-boolean to cache the icon widgets 2024-03-31 03:29:10 +10:30
Geoffrey D. Bennett
3f7a4c2063 Allow for boolean controls that are backwards
Gen 1 has playback controls (0 = off, 1 = on), not mute controls
(0 = not muted, 1 = muted) like the Gen 2+ do.
2024-03-31 03:29:10 +10:30
Geoffrey D. Bennett
111ec1154d Add support for volatile buttons to widget-boolean.c
Will be used by Gen 1 support.
2024-03-31 03:29:10 +10:30
Geoffrey D. Bennett
db0929bd08 Search $PATH and /usr/sbin for alsactl
The path to alsactl was previously hardcoded because some distros put
it in /usr/sbin but don't include that directory in $PATH.
Unfortunately other distros put alsactl elsewhere. Let's search $PATH
and /usr/sbin to cater for both.

Fixes #101.
2024-03-31 03:29:10 +10:30
Geoffrey D. Bennett
2ddede4d3f Override focus and colour CSS button styles
Set all button focus outline properties and set the colour and filter
on fixed buttons so more theme styles are overridden.
2024-03-31 03:29:10 +10:30
Geoffrey D. Bennett
0e227e1e07 Fix Sample Rate button to be insensitive 2024-03-31 03:29:10 +10:30
Geoffrey D. Bennett
05e9d9e0a2 Fix widget-boolean.c to free data on button destruction 2024-03-31 03:17:35 +10:30
Giorgio Reale
fcb5028aa2 Add 4rd Gen models to window-hardware.c 2024-03-28 13:15:21 +10:30