synesthesiam / homeassistant-satellite

Streaming audio satellite for Home Assistant
MIT License
187 stars 22 forks source link

Auto-gain error #39

Open Palleri opened 10 months ago

Palleri commented 10 months ago

The newest version is giving me this error when using auto-gain or noise-suppression module. I did install webrtc with this command .venv/bin/pip3 install .[webrtc]

script/run --host 10.0.x.x --token .. --mic-device plughw:CARD=AUDIO --snd-device plughw:CARD=AUDIO --auto-gain 10 Traceback (most recent call last): File "/home/palleri/homeassistant-satellite/script/run", line 13, in <module> subprocess.check_call( File "/usr/lib/python3.11/subprocess.py", line 413, in check_call raise CalledProcessError(retcode, cmd) subprocess.CalledProcessError: Command '['/home/palleri/homeassistant-satellite/.venv/bin/python3', '-m', 'homeassistant_satellite', '--host', '10.0.x.x', '--token', '..', '--mic-device', 'plughw:CARD=AUDIO', '--snd-device', 'plughw:CARD=AUDIO', '--auto-gain', '10']' died with <Signals.SIGILL: 4>.

It worked couple of days ago.

arilence commented 9 months ago

What device were you running into this issue on?

I ran into the same crash on an old Raspberry Pi Zero W. I'm assuming this is due to it being ARMv6, but I'm not 100% sure.

The only way I found that fixed the error for me was to manually build rhasspy/webrtc-noise-gain on device. I tried to manually install the wheel from PyPi but that didn't work.

Steps I took:

  1. Git cloned both webrtc-noise-gain and homeassistant-satellite into their own directories inside $HOME/
  2. Ran the build commands inside webrtc-noise-gain/. This generated a .whl archive inside $HOME/webrtc-noise-gain/dist/
  3. Installed the archive into homeassistant-satellite/:
    $ cd $HOME/homeassistant-satellite
    $ .venv/bin/pip3 install --force-reinstall $HOME/webrtc-noise-gain/dist/webrtc_noise_gain-1.2.3-cp39-cp39-linux_armv6l.whl
kriskbx commented 9 months ago

Worked for me. Thanks a ton @arilence for sharing your solution :)