Currently the Volume Skill has lots of ALSA specific code embedded in it. I took a stab at starting to extract out the platform dependent code. The intention is that this code will be moved to the Hardware Abstraction Layer (HAL) - formerly known as "enclosure" but there are way too many things that are "enclosures".
For the moment, I've created a little HAL "emulator" in the Skill that should only be interacted with via the bus. Once the real HAL interface is ready we should be able to delete the module from the Skill and the rest will continue to function as normal.
Interested in any thoughts on this approach before I bother going too far, so opening a work-in-progress PR.
Description
Currently the Volume Skill has lots of ALSA specific code embedded in it. I took a stab at starting to extract out the platform dependent code. The intention is that this code will be moved to the Hardware Abstraction Layer (HAL) - formerly known as "enclosure" but there are way too many things that are "enclosures".
For the moment, I've created a little HAL "emulator" in the Skill that should only be interacted with via the bus. Once the real HAL interface is ready we should be able to delete the module from the Skill and the rest will continue to function as normal.
Interested in any thoughts on this approach before I bother going too far, so opening a work-in-progress PR.
Most recently raised in https://github.com/MycroftAI/enclosure-picroft/pull/153
Type of PR
Testing
Documentation
Docstrings included
CLA