Skip to main content

A TensorFlow based wake word detection training framework using synthetic sample generation suitable for certain microcontrollers.

Project description

Python microWakeWord

Python library for microWakeWord.

Uses a pre-compiled Tensorflow Lite library.

Install

pip3 install pymicro-wakeword

Usage

from pymicro_wakeword import MicroWakeWord, MicroWakeWordFeatures, Model

mww = MicroWakeWord.from_builtin(Model.OKAY_NABU)
mww_features = MicroWakeWordFeatures()

# Audio must be 16-bit mono at 16Khz
while audio := get_10ms_of_audio():
    assert len(audio) == 160 * 2  # 160 samples
    for features in mww_features.process_streaming(audio):
        if mww.process_streaming(features):
            print("Detected!")

Use process_streaming_prob instead to get the wake word probability. If this probability is greater than probability_cutoff, the wake word is detected.

Command-Line

WAVE files

python3 -m pymicro_wakeword --model 'okay_nabu' /path/to/*.wav

Live

arecord -r 16000 -c 1 -f S16_LE -t raw | \
  python3 -m pymicro_wakeword --model 'okay_nabu'

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pymicro_wakeword-2.4.1.tar.gz (2.1 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

pymicro_wakeword-2.4.1-py3-none-win_amd64.whl (1.9 MB view details)

Uploaded Python 3Windows x86-64

pymicro_wakeword-2.4.1-py3-none-manylinux_2_35_x86_64.whl (2.1 MB view details)

Uploaded Python 3manylinux: glibc 2.35+ x86-64

pymicro_wakeword-2.4.1-py3-none-manylinux_2_35_armv7l.whl (1.8 MB view details)

Uploaded Python 3manylinux: glibc 2.35+ ARMv7l

pymicro_wakeword-2.4.1-py3-none-manylinux_2_35_aarch64.whl (1.6 MB view details)

Uploaded Python 3manylinux: glibc 2.35+ ARM64

pymicro_wakeword-2.4.1-py3-none-macosx_15_0_universal2.whl (1.7 MB view details)

Uploaded Python 3macOS 15.0+ universal2 (ARM64, x86-64)

File details

Details for the file pymicro_wakeword-2.4.1.tar.gz.

File metadata

  • Download URL: pymicro_wakeword-2.4.1.tar.gz
  • Upload date:
  • Size: 2.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pymicro_wakeword-2.4.1.tar.gz
Algorithm Hash digest
SHA256 432b8a2e1a6fb89d9169dddbda5ba8827af6947e7ab7a0eb1a9db2ef7f7d635e
MD5 28d9171fc184190c7ec0323753072694
BLAKE2b-256 f76a2c3eae2b3b5c3b4e947e0a4de9ffc03f788197378e860229ff855fab7637

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymicro_wakeword-2.4.1.tar.gz:

Publisher: publish.yml on OHF-Voice/pymicro-wakeword

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pymicro_wakeword-2.4.1-py3-none-win_amd64.whl.

File metadata

File hashes

Hashes for pymicro_wakeword-2.4.1-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 5626970dfa7d9c170a033748330dbc932c6a53a55a3ed1f151c38bbc236b053b
MD5 71d5bc78836abbf789c075df65c8cfca
BLAKE2b-256 5ae06e2653d6a6527563eb746aedcdbba6c0ea0e92c03f712b700f1f393455ae

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymicro_wakeword-2.4.1-py3-none-win_amd64.whl:

Publisher: publish.yml on OHF-Voice/pymicro-wakeword

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pymicro_wakeword-2.4.1-py3-none-manylinux_2_35_x86_64.whl.

File metadata

File hashes

Hashes for pymicro_wakeword-2.4.1-py3-none-manylinux_2_35_x86_64.whl
Algorithm Hash digest
SHA256 34af98434434e8601d521aeddda01aca105f22191431f9eb13001d5e23b4e295
MD5 628798bdf2ce803c560dd36d0d50e4ae
BLAKE2b-256 8acce6c4b0c73f1460a37a76e9ba29a8fde8724ece9ddbdbf53b730fb497c298

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymicro_wakeword-2.4.1-py3-none-manylinux_2_35_x86_64.whl:

Publisher: publish.yml on OHF-Voice/pymicro-wakeword

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pymicro_wakeword-2.4.1-py3-none-manylinux_2_35_armv7l.whl.

File metadata

File hashes

Hashes for pymicro_wakeword-2.4.1-py3-none-manylinux_2_35_armv7l.whl
Algorithm Hash digest
SHA256 45cbf154079d81b221ed4e1675aecb1a831d7c9d81c668d02cbad8bc47e15d03
MD5 4e6fd71501378477b9a96907ee8c44d0
BLAKE2b-256 9d62ed0ecab639d61853514e6e58d955c83e9362b3ec895134e5436af6d464cc

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymicro_wakeword-2.4.1-py3-none-manylinux_2_35_armv7l.whl:

Publisher: publish.yml on OHF-Voice/pymicro-wakeword

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pymicro_wakeword-2.4.1-py3-none-manylinux_2_35_aarch64.whl.

File metadata

File hashes

Hashes for pymicro_wakeword-2.4.1-py3-none-manylinux_2_35_aarch64.whl
Algorithm Hash digest
SHA256 6532a3eafb6b2bdccae62e23d3037c32c10543bbca7dbf30bedafc3f44c6727e
MD5 e93ef4e584bc515597b4eeac50566731
BLAKE2b-256 e7e1de43f0ba667c5e0ae08d8930b32efa57a17616529f23e17be091c2e9de23

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymicro_wakeword-2.4.1-py3-none-manylinux_2_35_aarch64.whl:

Publisher: publish.yml on OHF-Voice/pymicro-wakeword

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pymicro_wakeword-2.4.1-py3-none-macosx_15_0_universal2.whl.

File metadata

File hashes

Hashes for pymicro_wakeword-2.4.1-py3-none-macosx_15_0_universal2.whl
Algorithm Hash digest
SHA256 1743a73e79467da3576eef380151474ac6e479fd0f5e8efef724866398d8868d
MD5 a02e75ad3a97e3aeafea3ea5c8d8bee1
BLAKE2b-256 2fa54af83830df8229dbc07416a87e67f8eb23e1895c5867f93841659df86d22

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymicro_wakeword-2.4.1-py3-none-macosx_15_0_universal2.whl:

Publisher: publish.yml on OHF-Voice/pymicro-wakeword

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page