Commit Graph

10 Commits

Author SHA1 Message Date
Lars Immisch
26ba938e04 Make commands optional 2024-04-19 18:32:38 +01:00
Lars Immisch
f5e9d52c74 Add missing attribute 2024-04-19 13:10:39 +01:00
Lars Immisch
0df2e0ee6f Ignore volume events if shairplay-sync is running 2024-02-02 11:36:58 +01:00
Lars Immisch
fe3fbe5376 loopback.py: bugfixes 2024-02-02 11:36:58 +01:00
Lars Immisch
42ca8acbad Add a (naive) loopback implementation (#132)
* WIP
* Open/close the playback device when idle.
  It takes a long time until it's stopped, though.
* open/close logic of playback device
* Fix opening logic, make period size divisible by 6
* Be less verbose in level info
* Extra argument for output mixer card index
  Sometimes, this cannot be deduced from the output device
* Better silence detection
* Run run_after_stop when idle on startup
2024-02-02 11:36:58 +01:00
Lars Immisch
bdca4dc061 Small improvement to VolumeForwarder 2024-02-02 11:36:58 +01:00
Lars Immisch
24eef474da Refactor loopback. SCNR.
The Reactor now takes a callable, and the loopback and volume forwarder
are now implemented as callable instances, which seemed the most
Pythonic solution.
2024-02-02 11:36:58 +01:00
Lars Immisch
24d26a5161 Better error logging and comments 2024-02-02 11:36:58 +01:00
Lars Immisch
f62e61f844 Add volume control forwarding
This needs the patches from (probably)
https://lkml.org/lkml/2021/3/1/419. They are already in the raspberry OS
kernel sources and the setup works on an RPi 4.
2024-02-02 11:36:58 +01:00
Lars Immisch
82308f32ed Add a naive loopback implementation using select.poll()
It does work, though.
2024-02-02 11:36:58 +01:00