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 systemget(): Get the latest recognized textexit(): 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.1.tar.gz
(4.2 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file clarasr-0.1.1.tar.gz.
File metadata
- Download URL: clarasr-0.1.1.tar.gz
- Upload date:
- Size: 4.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c0f510dd2d9121f0acb1c0cadde74d75c3092e0981f3a6b0e46ec9320c612861
|
|
| MD5 |
fdb58e222c97b1b26b05082dd3a85fb7
|
|
| BLAKE2b-256 |
668465534b34783770f0c926cd3a536d2de8ef16f7afc01506018cdba7b55c3e
|
File details
Details for the file clarasr-0.1.1-py3-none-any.whl.
File metadata
- Download URL: clarasr-0.1.1-py3-none-any.whl
- Upload date:
- Size: 4.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e545f0767b28f5e0a602fb27cf4fbd88f72486e7d7b76b04798287ba14989424
|
|
| MD5 |
e06b5cc43f87911bec2620811c01ab5b
|
|
| BLAKE2b-256 |
1c91bc50bdf001fd7ea2cee8efbd8d4b138be7fbcef76475d50ae8a6105dae84
|