Skip to main content

Python bindings for ABR's on-device speech SDK (speech-to-text and text-to-speech)

Project description

ABR SDK

Python bindings for the Applied Brain Research on-device speech SDK: low-latency automatic speech recognition (ASR) and text-to-speech (TTS) that run entirely on the local device, with no network calls at inference time.

This package does not contain the speech models or the native engine; it loads an ABR SDK application package that you obtain separately and drives it through a small, Pythonic API.

Full documentation: https://docs.appliedbrainresearch.com/sdk Customer portal with application packages: https://dev.appliedbrainresearch.com

Installation

Use any of the following to install abr-sdk and incorporate it into your project.

pip install abr-sdk
uv add abr-sdk

The package is dependency-free and supports Python 3.10+. To run it you also need an ABR SDK application package for your platform and a license, both provided by Applied Brain Research.

Quickstart

Activate the library once per device. This is the only step that needs network access; inference is fully offline:

abr-sdk activate path/to/library.so --key-file license.key

Recognize speech from 16 kHz mono signed-16-bit little-endian PCM. A chunk may replace trailing text, so apply each one to a running buffer:

from abr_sdk.asr import Asr, AsrChunk

buf = bytearray()

def on_chunk(chunk: AsrChunk) -> None:
    chunk.update(buf)              # apply correction in place
    print(buf.decode("utf-8"))

with Asr("path/to/libasr.so") as asr:
    while (data := audio_source.read(3200)):   # ~100 ms of PCM
        asr.push(data, on_chunk=on_chunk)
    asr.wait_for_completion()                  # flush and wait for final chunks

Synthesize speech to 16 kHz mono signed-16-bit little-endian PCM:

from abr_sdk.tts import Tts

with Tts("path/to/libtts.so") as tts:
    tts.push(b"Hello from Applied Brain Research.", on_pcm=audio_sink.write)
    tts.wait_for_completion()

See the full documentation for activation options, full end-to-end examples, and the complete API.

License

Proprietary. Copyright (c) Applied Brain Research. Use of this package and the ABR SDK libraries it loads is governed by your agreement with Applied Brain Research.

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

abr_sdk-0.1.0.tar.gz (49.2 kB view details)

Uploaded Source

Built Distribution

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

abr_sdk-0.1.0-py3-none-any.whl (57.6 kB view details)

Uploaded Python 3

File details

Details for the file abr_sdk-0.1.0.tar.gz.

File metadata

  • Download URL: abr_sdk-0.1.0.tar.gz
  • Upload date:
  • Size: 49.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.23 {"installer":{"name":"uv","version":"0.11.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":null,"id":"forky","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for abr_sdk-0.1.0.tar.gz
Algorithm Hash digest
SHA256 e72a18f90a5ac2a9018e05542e13c6ef6279c4c10c12e191569c778c3586390b
MD5 cbd415d7c08f90f4f1b4c1fbeaf33874
BLAKE2b-256 48827255ebecc2880f6692e40de8d68a45e4a0b5e2e0f4ec452b46d1eae55249

See more details on using hashes here.

File details

Details for the file abr_sdk-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: abr_sdk-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 57.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.23 {"installer":{"name":"uv","version":"0.11.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":null,"id":"forky","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for abr_sdk-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9d4e4ebe1c3c83737d0371afac56ef42abf0b3d6c6427253c0fbd3dbf03f1240
MD5 c27cf3f298389ff6e52977c682f48e4b
BLAKE2b-256 ff9f071c67948298066b16d14081803a6e6dc8d259545c5991e55c2f99165169

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