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.0.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.0-py3-none-win_amd64.whl (1.9 MB view details)

Uploaded Python 3Windows x86-64

pymicro_wakeword-2.4.0-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.0-py3-none-manylinux_2_35_aarch64.whl (1.6 MB view details)

Uploaded Python 3manylinux: glibc 2.35+ ARM64

pymicro_wakeword-2.4.0-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.0.tar.gz.

File metadata

  • Download URL: pymicro_wakeword-2.4.0.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.0.tar.gz
Algorithm Hash digest
SHA256 ac79e8695a1d65a433e76d6e1adec34feb19701d28f4c7dedb0cd9ae40583e8c
MD5 b0d75c9050186231c148b150fb861b9e
BLAKE2b-256 a73f051b16a00ece0e2a6c2f55ea6cb2f0264af066cb532b71f96c2f8a7652fa

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymicro_wakeword-2.4.0.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.0-py3-none-win_amd64.whl.

File metadata

File hashes

Hashes for pymicro_wakeword-2.4.0-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 3425a1ef0eb894ca14e7bc4ec6b686959c1dc84715649102797a9f0f8733ee06
MD5 f68b9b9fadf5b5ad2fdcecdd1b829e0e
BLAKE2b-256 f50639cfa31b3e5487e81cd3b229d1f7befa7c06692a477a61610d9f44ddb046

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymicro_wakeword-2.4.0-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.0-py3-none-manylinux_2_35_x86_64.whl.

File metadata

File hashes

Hashes for pymicro_wakeword-2.4.0-py3-none-manylinux_2_35_x86_64.whl
Algorithm Hash digest
SHA256 a16e3edc247946ccca255b85c82d91eff86bf12c8c6aae2f16b9dc5ba70fcb30
MD5 8399793d1420170a39b41431e001f5ae
BLAKE2b-256 036b6200cbcb7111930e1e6d61b7b2905ae0e1d2ac3125bef75d3e859b177c90

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymicro_wakeword-2.4.0-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.0-py3-none-manylinux_2_35_aarch64.whl.

File metadata

File hashes

Hashes for pymicro_wakeword-2.4.0-py3-none-manylinux_2_35_aarch64.whl
Algorithm Hash digest
SHA256 063f026cb388b2effd8fbddd73e25269e68ad0fe025ee2e5eb8fe64d16526494
MD5 1f77f1c227162a825cf87406428f92ef
BLAKE2b-256 9e515da6d2a090da97130509ca499c65aca17b537b90db2ef1fb9b3661485abe

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymicro_wakeword-2.4.0-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.0-py3-none-macosx_15_0_universal2.whl.

File metadata

File hashes

Hashes for pymicro_wakeword-2.4.0-py3-none-macosx_15_0_universal2.whl
Algorithm Hash digest
SHA256 4c3cc7528e88dac0eba908a4d00277a1d2548b79cde4f0b3181b19f6848a258b
MD5 e96dffd7865972aa362e668b8f85a70f
BLAKE2b-256 71ce6a6a593889d39d78610ac2ae4e0dad84f373640dbc5b0bb02043feb0a04a

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymicro_wakeword-2.4.0-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