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.0.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.0.tar.gz.
File metadata
- Download URL: clarasr-0.1.0.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 |
ffc1637c0b34511bc32318d9075152e83e84c34298678031fc71be366813a4dd
|
|
| MD5 |
97aad43db9bafc6e7bb22ff064acb221
|
|
| BLAKE2b-256 |
0c6f0ef1f0f24b9eabbd5e4cf7c57be1454ebadafbd0d0339347617e75522fdf
|
File details
Details for the file clarasr-0.1.0-py3-none-any.whl.
File metadata
- Download URL: clarasr-0.1.0-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 |
ccd9f5326b26e79f93c3c60dc5d0565090cf92f1a841d96097b76f84f6655134
|
|
| MD5 |
dab86df1fc04729152f01db619a7fab6
|
|
| BLAKE2b-256 |
98e24b0155127773415a0cd53237c87956ab90f0a8ab192f234845de6ea75de3
|