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.6.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.6.tar.gz.
File metadata
- Download URL: clarasr-0.1.6.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 |
71a6e71938a800eb3a1fff516a57650544311a0384e34667f41ddeea8a46169f
|
|
| MD5 |
025be675f359b020f774b7e13638fd87
|
|
| BLAKE2b-256 |
f613afa1609afea7ad9c6e8f88e6efb037f8df5c73784f59d8bcfb4b6e77f860
|
File details
Details for the file clarasr-0.1.6-py3-none-any.whl.
File metadata
- Download URL: clarasr-0.1.6-py3-none-any.whl
- Upload date:
- Size: 4.5 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 |
b61d82e598f8bad310b8536ff8a54c44c16dc0f0bcd9014cf59039c739ec6c82
|
|
| MD5 |
2124ca5174c73dc4a270d72b9aed422d
|
|
| BLAKE2b-256 |
cbf723f750b339bd25189867570c0274c2a269b56e47b64e0aedd34718df1303
|