Skip to main content

A Python package for speech recognition.

Project description

ClaraSR

A Python package for speech recognition and command processing with wake word detection.

Features

  • Continuous speech recognition
  • Configurable wake word detection
  • Real-time audio processing
  • Command extraction and processing
  • Simple and intuitive API

Installation

pip install clarasr

Requirements

  • Python 3.6 or higher
  • PyAudio
  • SpeechRecognition
  • NumPy
  • PyTorch
  • Requests

Quick Start

from clarasr import config, startup, get, exit

# Configure the system (optional)
config(wake_word="clara", energy_threshold=1000)

# Start the speech recognition system
startup()

try:
    while True:
        # Get the latest recognized text
        text = get()
        if text:
            print(f"Recognized: {text}")
        time.sleep(0.1)
except KeyboardInterrupt:
    # Clean up and exit
    exit()

API Reference

Configuration

config(
    wake_word="clara",           # The word to trigger command processing
    energy_threshold=1000,       # Audio energy threshold for silence detection
    processing_delay=1.5,        # Delay between wake word detections (seconds)
    min_command_length=3         # Minimum words for a valid command
)

Core Functions

  • startup(): Start the speech recognition system
  • get(): Get the latest recognized text
  • exit(): Stop the speech recognition system

Advanced Usage

from clarasr import (
    AudioSegment,
    detect_silence,
    contains_wake_word,
    find_wake_word_position,
    extract_command,
    process_command
)

# Example of custom command processing
def custom_process_command(command):
    if command:
        print(f"Processing custom command: {command}")
        return True
    return False

# Configure and start the system
config(wake_word="assistant")
startup()

try:
    while True:
        text = get()
        if text:
            # Custom command processing
            if contains_wake_word(text, "assistant"):
                command = extract_command([AudioSegment(text, datetime.now(), b"")], "assistant")
                if command:
                    custom_process_command(command)
        time.sleep(0.1)
except KeyboardInterrupt:
    exit()

License

MIT License

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

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

clarasr-0.1.3.tar.gz (4.3 kB view details)

Uploaded Source

Built Distribution

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

clarasr-0.1.3-py3-none-any.whl (4.7 kB view details)

Uploaded Python 3

File details

Details for the file clarasr-0.1.3.tar.gz.

File metadata

  • Download URL: clarasr-0.1.3.tar.gz
  • Upload date:
  • Size: 4.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.7

File hashes

Hashes for clarasr-0.1.3.tar.gz
Algorithm Hash digest
SHA256 21125cb3cd64da05b4cb3b68d079a3ac4a7395073f3133ef6b561b4d38f5807c
MD5 36458070884f05f52ec2b11995afd9cf
BLAKE2b-256 3880da0689e9abb359c21410e78c0c2776ce1c81832a2fd439c21c2871f004d2

See more details on using hashes here.

File details

Details for the file clarasr-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: clarasr-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 4.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.7

File hashes

Hashes for clarasr-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 9f3f514ee911445741fa974ea7517455491868c8e92b2565cc0285313ef37577
MD5 8430c2635d1caafbd46672362e74cb35
BLAKE2b-256 7436139a925ee1292c2d101f716e356b1ec3189606a9b9ebc73d2ceb15a87de8

See more details on using hashes here.

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