Commit Graph

94 Commits

Author SHA1 Message Date
Alexandre Ratchov 37ee5aa871 sndiod: replace the gloal opt list with per-device lists. 2018-06-10 22:50:35 +02:00
Alexandre Ratchov ddf5e0dfa7 sndiod: move slot buffer allocations in their own routines 2018-06-09 09:27:27 +02:00
Alexandre Ratchov 88e75c3d10 sndiod: factor common code of slot_stop() 2018-06-09 09:23:40 +02:00
Alexandre Ratchov 414e011cf6 sndiod: remove handling of unreachable state in slot_stop() 2018-06-09 08:33:24 +02:00
Alexandre Ratchov cf03f7423d sndiod: move all conversions in dev_mix_badd() and dev_sub_bcopy()
The conversion chain processes exactly one block, so no need to
calculate & count the number of processed samples. This allows to move
the calls to processing routines in dev_mix_badd() and
dev_sub_bcopy(), which is much simpler. No behaviour change.
2018-06-08 08:22:35 +02:00
Alexandre Ratchov 8b24905d2c sndiod: fix slot leak when device mode doesn't match slot mode 2017-11-23 07:13:49 +01:00
Alexandre Ratchov bb63198e8b prefill with silence the buffer when cmap_copy() stores samples
rather than the slot/client buffer. Fixes initialized data being
treated as recorded samples when resampling and/or format
conversions are involved.
2017-11-07 12:26:46 +01:00
Alexandre Ratchov b06285beda Prefill with silence rec buffer.
This is necessary as certain channels may not receive samples,
for instance when mono->stereo conversion is disabled.
2017-11-03 16:10:48 +01:00
Alexandre Ratchov f9f2d8353e Fix the code to abort when trying to detach a slot that's not
on the list (the check was a no-op). Found by jsg@, thanks.
2017-02-15 11:58:54 +01:00
Alexandre Ratchov 22a64d1845 Many typos in comments. From Michael W. Bombardieri. Thanks. 2017-01-03 08:08:17 +01:00
Alexandre Ratchov 4dcfed9dce remove braces around single-statement block 2016-10-20 07:32:27 +02:00
Alexandre Ratchov 02ff6b20fb add braces to reduce diff with mixer bits 2016-08-11 08:17:57 +02:00
Alexandre Ratchov 8070eb6272 Remove unused arguments of dev_adjpar(), getbasepath() and all
slotops->onvol() implementations.

From David CARLIER <devnexen at gmail.com>. Thanks.
2016-03-23 07:40:46 +01:00
Alexandre Ratchov fcbcfd089a use "prog" as default prog name 2016-01-29 12:11:23 +01:00
Alexandre Ratchov e2be625ebd unexpand 2016-01-09 09:49:48 +01:00
Alexandre Ratchov e22e6a1b26 fix trailing spaces 2016-01-08 17:24:48 +01:00
Alexandre Ratchov d4cea96993 use stored d->num, in search for devices 2015-11-25 20:48:47 +01:00
Alexandre Ratchov 66ca92689e stop mmc in dev_done, releasing ref to the device 2015-11-25 20:46:03 +01:00
Alexandre Ratchov 8bb88f248f if no -f or -q are used, attach rsnd/[0-3] and rmidi/[0-7] 2015-10-20 15:25:54 +02:00
Alexandre Ratchov f2b6fd9f4b s/xfree/free in comments 2015-09-05 13:18:04 +02:00
Alexandre Ratchov e8007feb00 move the mixer api to a dedicated "mixer" branch 2015-08-28 08:57:47 +02:00
Alexandre Ratchov 293133ebdf copy label name in dev_add() 2015-08-26 12:22:06 +02:00
Alexandre Ratchov 8468b9f0a0 rename grp->func 2015-06-04 06:12:38 +02:00
Alexandre Ratchov b3a8f99047 make the label use chan1 as parameter 2015-03-12 08:20:23 +01:00
Alexandre Ratchov a58ea0effe use better names for sndiod mixer controls 2015-03-06 10:42:04 +01:00
Alexandre Ratchov 905c319315 use strings rather than channel numbers 2015-03-05 10:12:34 +01:00
Alexandre Ratchov da8108f09a add initial support for audio mixers, disabled by default
ok armani@
2014-07-16 12:05:01 +02:00
Alexandre Ratchov 408318f6ec log client start only if log_level >= 2 2014-05-15 14:19:15 +02:00
Alexandre Ratchov 0441c58c62 unused function 2014-03-24 06:53:46 +01:00
Alexandre Ratchov 4819480746 fix wrong dev_cycle() comment 2014-03-17 18:48:25 +01:00
Alexandre Ratchov c95cb04987 dont check dev_cycle() ret val as we check dev state 2014-03-17 18:42:20 +01:00
Alexandre Ratchov 4b820e4de0 after every cycle, check if this was the last cycle in which case the
device may be closed and shouldn't be used
2014-03-17 18:38:57 +01:00
Alexandre Ratchov 0c70f95bd5 unbreak monitoring mode (was 1 block off) 2014-03-17 18:13:11 +01:00
Alexandre Ratchov 559d953ef6 backout latest 2014-03-17 17:44:47 +01:00
Alexandre Ratchov d00caaaf96 disable playing and monitoring at the same time and append
slots using MODE_MON at the end of the slot list, so that
data to monitor is produced (by other slots) before the
monitoring slot is consuming it
2014-03-17 09:57:41 +01:00
Alexandre Ratchov af546d3a0f remove unused "delta" argument from onmove callbacks 2014-03-07 11:21:15 +01:00
Alexandre Ratchov 1049e3fa71 remove unused mmc start/stop/relocate call-backs as they don't
make sense for sockets
2014-03-07 11:16:26 +01:00
Alexandre Ratchov 55309494c6 unused include 2014-03-06 19:21:30 +01:00
Alexandre Ratchov d536b0972d please gcc 2014-03-05 21:14:57 +01:00
Alexandre Ratchov 2c1feaa186 add missing proto 2014-03-05 21:12:35 +01:00
Alexandre Ratchov 946186b6e5 remove slot_onmove 2014-03-05 21:11:57 +01:00
Alexandre Ratchov 8914029a2f remove autostart attribute 2014-03-05 09:16:57 +01:00
Alexandre Ratchov 0d773f998a set attach-time delta 2014-02-22 17:22:42 +01:00
Alexandre Ratchov 556d5f075b dont use rec buffers when in the SLOT_STOP state 2014-02-17 10:54:16 +01:00
Alexandre Ratchov de206b94f5 hide debug printfs 2014-02-17 10:32:38 +01:00
Alexandre Ratchov 54f97478bd dont drain rec direction 2014-02-17 10:29:34 +01:00
Alexandre Ratchov 32d0426047 run play and rec cycles together: simpler and more robust 2014-02-17 10:21:35 +01:00
Alexandre Ratchov 236d573f93 copy the right number of channels during join/expand 2014-02-08 16:00:54 +01:00
Alexandre Ratchov 14c0ab970a drop blocks and insert silence in the socket tx/rx code path 2013-12-31 13:14:01 +01:00
Alexandre Ratchov 5c5a7280c2 use 0x7F as dev numer in sysex 2013-12-10 20:00:36 +01:00