MycroftAI / skill-volume

Mycroft AI official Volume Skill - control the volume of your Device
https://mycroft.ai/skills
Apache License 2.0
10 stars 30 forks source link

WIP: Extract platform dependent code out of Skill #76

Open krisgesling opened 3 years ago

krisgesling commented 3 years ago

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

krisgesling commented 3 years ago

Tip from sgee in chat: https://pypi.org/project/pulsectl/

Just dropping it here to come back to.