Picovoice is an end-to-end platform for building voice products on your terms.
This project has been archived.
The maintainers of this project have marked this project as archived. No new releases are expected.
Project description
Picovoice Python SDK
Picovoice is an end-to-end platform for building voice products on your terms. It enables creating voice experiences similar to Alexa and Google. But it entirely runs on-device. Picovoice is
- Private: Everything is processed on-device. Intrinsically HIPAA and GDPR compliant.
- Reliable: Runs without relying on connectivity or external service availability.
- Responsive: Edge-first architecture eliminates unpredictable network delay.
- Highly-Accurate: Resilient to noise and reverberation. Outperforms cloud-based solutions with high margins.
- Cross-Platform: Build on your platforms of choice, with tools your team is accustomed to.
- Cost-Effective: Avoid unbounded cloud fees by processing locally with minimal resources.
Compatibility
- Python 3
- Runs on Linux (x86_64), Mac (x86_64), Windows (x86_64), Raspberry Pi (all variants), and BeagleBone.
Installation
pip3 install picovoice
Usage
Create a new instance of Picovoice platform as below. keyword_path is the absolute path to
Porcupine Wake Word Engine keyword file (with .ppn suffix). context_path
is the absolute path to [Rhino Speech-to-Intent Engine] context file (with .rhn suffix). wake_word_callback is
invoked upon the detection of wake phrase and inference_callback is called upon completion of follow-on voice command
inference.
from picovoice import Picovoice
keyword_path = ...
def wake_word_callback():
pass
context_path = ...
def inference_callback(is_understood, intent, slot_values):
pass
pv = Picovoice(
keyword_path=keyword_path,
wake_word_callback=wake_word_callback,
context_path=context_path,
inference_callback=inference_callback)
When instantiated, valid sample rate can be obtained via pv.sample_rate. Expected number of audio samples per frame is
pv.frame_length. The incoming audio can be processed as below
def get_next_audio_frame():
pass
while True:
pv.process()
Finally, when done be sure to explicitly release the resources.
pv.delete()
References
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
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 picovoice-0.8.5.tar.gz.
File metadata
- Download URL: picovoice-0.8.5.tar.gz
- Upload date:
- Size: 7.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.50.0 CPython/3.6.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d7bfa5d37fadab63fa10dc0a9ee290d27c2ba0de4029a82024a759ba80f63586
|
|
| MD5 |
2152fcddbebd0baf0f5cec74eb8947e4
|
|
| BLAKE2b-256 |
23dbd19b78b6ec88dde2598ddc49b87db00478b73654e614911f4232993d18fe
|
File details
Details for the file picovoice-0.8.5-py3-none-any.whl.
File metadata
- Download URL: picovoice-0.8.5-py3-none-any.whl
- Upload date:
- Size: 8.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.50.0 CPython/3.6.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ca1578faf511ca2bb91ee889b88c225bde1b9d64d85929f9edb9c9b176cb872d
|
|
| MD5 |
830f119949b4b58b1db879765919d03c
|
|
| BLAKE2b-256 |
eca3abfbc9609e7132982dfc4c9c416032f39b9745833696d16660edb9e81a1b
|