Commit Graph

1060 Commits

Author SHA1 Message Date
Alexandre Ratchov 3030ab2c66 Remove unused USE_ALSA_MIXER tests. 2020-01-29 06:16:19 +01:00
Alexandre Ratchov 8ca224184c Merge branch 'master' into mixer 2020-01-28 06:48:49 +01:00
Alexandre Ratchov cf2e5f1727 Merge xxx_openlist() changes from cvs. 2020-01-23 12:50:20 +01:00
Alexandre Ratchov a077f6a7f3 Fix forgotten node->str to node->name changes 2020-01-23 12:20:13 +01:00
Alexandre Ratchov ae714a51c4 Merge branch 'master' into mixer 2020-01-23 12:15:06 +01:00
Alexandre Ratchov f29da850c6 Factor slot->pstate change in slot_attach() 2020-01-23 12:14:46 +01:00
Alexandre Ratchov 0ac817ab82 Rename node->str to node->name3 2020-01-23 07:38:14 +01:00
Alexandre Ratchov f51534ae26 Rename sioctl_chan to sioctl_node 2020-01-23 07:16:27 +01:00
Alexandre Ratchov 0031ec4a72 Use "hw" group for hw controls to get stable control names.
To ensure chained sndiod controls get unique names, we prefix
groups sndiod creates with "dev".
2020-01-21 06:39:00 +01:00
Alexandre Ratchov 5f82859275 Put slot unit in its control name rather as control channel number 2020-01-18 12:24:56 +01:00
Alexandre Ratchov 95cf650953 Rename nextgrp -> nextfunc, tweak comments. 2020-01-17 07:12:52 +01:00
Alexandre Ratchov 36616e67a6 Remove unused selpos routine. 2020-01-17 07:02:45 +01:00
Alexandre Ratchov 9bf7d85e7f sndioctl: Use (mandatory) group prefix. 2020-01-17 06:57:37 +01:00
Alexandre Ratchov d8e69e7e93 Remove SIOCTL_HALF 2020-01-17 06:34:38 +01:00
Alexandre Ratchov 5d2a6ce214 Merge branch 'mixer' of ssh://caoua.org/~alex/git/sndio into mixer 2020-01-16 07:51:06 +01:00
Alexandre Ratchov 1534d4f816 s/SIOCTL_INTMAX/SIOCTL_VALMAX 2020-01-16 07:47:23 +01:00
Alexandre Ratchov 9b20997f58 Make the device hold a reference to its controls.
Without this, if "-a on" is used, when the last control client
disconnects, references reach zero and controls are freed.
2020-01-14 18:04:16 +01:00
Alexandre Ratchov 8ecb6c1721 Remove unused variable 2020-01-13 18:36:39 +01:00
Alexandre Ratchov 88eee3e423 Update xvolkeys to use output.level. 2020-01-13 14:53:34 +01:00
Alexandre Ratchov 74ae9cda72 Make the control group a simple string.
To handle nested devices, just prefix the group with the "dev."
prefix. To avoid namespace conflicts, put program controls in a
new "app" group.

The "master.level" control is renamed to "output.level" to match the
hardware name. This way snd/0 and rsnd/0 end-up with the same control
name.
2020-01-13 09:27:06 +01:00
Alexandre Ratchov 9edbee2bc1 sioctl_sun: Rename spkr->output, mic->input. 2020-01-13 07:19:55 +01:00
Alexandre Ratchov c64f25a5f8 Remove group for hardware controls. 2020-01-13 07:15:36 +01:00
Alexandre Ratchov 166293b14a Require channel to be between square brackets. 2020-01-11 16:07:16 +01:00
Alexandre Ratchov db6ff820c6 Merge branch 'mixer' of ssh://moule/~alex/git/sndio into mixer 2020-01-11 13:00:18 +01:00
Alexandre Ratchov 5a0fc8feb7 Move hw control in "inputs" and "outputs" groups 2020-01-11 11:01:56 +01:00
Alexandre Ratchov 8653038e1d Merge branch 'master' into mixer 2020-01-10 21:12:12 +01:00
Alexandre Ratchov 6d02c2e7a2 Unbreak channel duplication (aka -j option).
Fix from Peter Piwowarski <peterjpiwowarski at gmail.com> with few
tweaks from me. Thanks.
2020-01-10 20:04:26 +01:00
Alexandre Ratchov ddf18ab3e1 Allow "snd/default" style syntax 2020-01-03 15:41:30 +01:00
Alexandre Ratchov d2057194b1 Rename _setctl -> _setval and _onctl -> _onval 2020-01-03 15:30:06 +01:00
Alexandre Ratchov 6e83bb6a4f Rename siomix -> sioctl, stop using "mixer" word. 2020-01-03 15:19:25 +01:00
Alexandre Ratchov 7afde07efd Merge branch 'master' into mixer 2019-11-27 14:49:01 +01:00
Alexandre Ratchov c38dfbf530 Initialize nfds fields of new file structures.
Fixes possible crash when a new file structure is added in
the time-out processing code-path.
2019-11-27 09:04:04 +01:00
Alexandre Ratchov fb8bf93f11 Tolerate clients keeping state across sysex message 2019-10-21 00:40:00 +02:00
Alexandre Ratchov 415d31ae42 Merge branch 'mixer' of ssh://moule/~alex/git/sndio into mixer 2019-09-21 12:14:06 +02:00
Alexandre Ratchov 07c9068ff9 Merge branch 'master' into mixer 2019-09-21 09:17:06 +02:00
Alexandre Ratchov 4fad29ecb6 Man-page tweaks from jmc@ 2019-09-21 09:15:49 +02:00
Alexandre Ratchov 5536f474fe Merge branch 'master' into mixer 2019-09-21 08:31:44 +02:00
Alexandre Ratchov a9ee8951fd Fix missing word in -F and -Q descriptions. 2019-09-21 07:04:01 +02:00
Alexandre Ratchov 9ba816d28e Lower the default audio block size from 20ms to 10ms.
The new default block size is supported by virtually all devices
which allows switching between devices without further configuration.
The buffer size remains the same, so this change won't affect audio
stability.

ok mpi@
2019-09-21 06:54:59 +02:00
Alexandre Ratchov 441100e812 Allow switching between devices without disconnecting clients, again.
The new -F option allows alternate device to be specified.  If the
device is disconnected, the one given with the last -f or -F options
will be used instead.

ok mpi@
2019-09-21 06:53:34 +02:00
Alexandre Ratchov 3935da37f6 Setup channel join/expand after channle mapping conversions.
The channel mapping conversion calculate the number of channels
actually present on the hardware. This allows to join/expand the right
number of channels.
2019-09-19 09:08:29 +02:00
Alexandre Ratchov e922c66fc0 Don't set to NULL conversion buffers when initializing the slot.
Bug introduced when conversions setup moved to its own routine.
2019-09-18 15:56:08 +02:00
Alexandre Ratchov 7cd9c4b0a9 Don't attempt to join/expand nonexistent channels.
If the (hardware) device has fewer channels than the exposed
sub-device and -jon is used, then mix the samples only to channels
that exist on the device.
2019-09-18 09:36:33 +02:00
Alexandre Ratchov 5e033425c0 Move slot convertions setup in its own routine. 2019-09-18 09:34:59 +02:00
Alexandre Ratchov cf94ce9ae8 Move device buffer allocation to its own routines.
This makes the code more readable as device and slot buffer allocation
routines are similar. No behavior change.
2019-09-18 09:30:00 +02:00
Alexandre Ratchov 0310ad45e9 Revert "Allow switching between devices without disconnecting clients."
This change was not right: First, upon SIGHUP, next device should be
opened before the old one is closed. Second the migration code doesn't
reinitialize the conversion layer which breaks audio when switching
between devices with different channel counts.

This reverts commit 5bc17e6cea.
2019-09-18 09:16:58 +02:00
Alexandre Ratchov fd85070098 Merge branch 'master' into mixer 2019-09-05 21:31:35 +02:00
Alexandre Ratchov e453b782d1 Merge branch 'master' of ssh://moule/~alex/git/sndio 2019-09-05 09:05:37 +02:00
Alexandre Ratchov 6918eaa94e Remove unused #include <sys/signal> 2019-09-05 09:05:33 +02:00
Alexandre Ratchov df7fa2512c Revert "siomix_sun: poll the mixer fd to detect when device is gone."
This reverts commit aceffe4729.
2019-08-31 10:18:49 +02:00