esphome / home-assistant-voice-pe

Home Assistant Voice PE
Other
42 stars 7 forks source link

[voice_kit] add yaml configuration options for pipeline stage #132

Closed kahrendt closed 1 week ago

kahrendt commented 1 week ago

Adds channel_0_stage and channel_1_stage yaml configuration options. It changes the default channel 1 stage to use AEC+IC+Noise Suppression

I'm not sure how to best approach this, to keep the stage the component holds in sync with the stage on the XMOS. Write now I have a basic setter that the codegen stage uses. On boot, if the XMOS firmware doesn't need updating, it will write them to the XMOS using write_pipeline_stages(). If the firmware updates, it will wait until its successful before calling that function. I'm open to any better approaches!

github-actions[bot] commented 1 week ago

Firmware built successfully! :tada:

Download and extract the firmware to install with https://web.esphome.io

Make sure to choose home-assistant-voice-esp32s3.factory.bin.

kbx81 commented 1 week ago

LGTM! Should we include an action to set this during runtime, in addition to what you've added to the base component?

kahrendt commented 1 week ago

LGTM! Should we include an action to set this during runtime, in addition to what you've added to the base component?

I don't think we need to expose an action, these settings probably won't change ever beyond the configuration stage. For experimenting, I think using a lambda action to change is sufficient.

synesthesiam commented 1 week ago

Looks good to me! I haven't tested it yet though.

github-actions[bot] commented 1 week ago

Firmware built successfully! :tada:

Download and extract the firmware to install with https://web.esphome.io

Make sure to choose home-assistant-voice-esp32s3.factory.bin.