Rust/pyo3 NIST SPHERE (and Shorten) to RIFF/WAV transcoder
Project description
desphere (Rust)
Clean-room, dependency-free NIST SPHERE (and Shorten) → RIFF/WAV transcoder —
the Rust port of the Python reference in ../src/desphere.
The Python is the spec; this reproduces its output bit-for-bit, validated
against the same committed fixtures.
let sph = std::fs::read("utt.sph")?;
let wav = desphere::transcode(&sph)?; // RIFF/WAV bytes
std::fs::write("utt.wav", wav)?;
Supports PCM (16/32-bit, both byte orders), G.711 μ-law/a-law, and
embedded-shorten v2 — including QLPC (LPC) blocks and lossless μ-law type-8
with the non-linear bitshift remap. Unsupported/corrupt input fails loud
(DecodeError), never panics — safe for WASM.
Build targets
cargo test # core, byte-exact vs fixtures
wasm-pack build --target web --features wasm # WASM (rust/pkg/)
maturin develop -m pyproject.toml --features python # Python module: desphere_native
The core library is dependency-free; the wasm (wasm-bindgen) and python
(pyo3) bindings are opt-in Cargo features that don't burden a plain Rust
dependant.
Clean-room
Built only from public sources (NIST SPHERE docs, ITU-T G.711, Robinson 1994
TR.156) and black-box oracle testing — no GPL/LGPL source was ever read. See
../PROVENANCE.md. MIT-licensed.
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 Distributions
Built Distributions
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 desphere_native-0.1.0-cp39-abi3-win_amd64.whl.
File metadata
- Download URL: desphere_native-0.1.0-cp39-abi3-win_amd64.whl
- Upload date:
- Size: 146.6 kB
- Tags: CPython 3.9+, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c71c6f1466d1273221a4ce0a215135203ce5d6e89e65d0f67c90aabf0e7deb3d
|
|
| MD5 |
3b08d00d5e355c858279b33fdb560d10
|
|
| BLAKE2b-256 |
8ff52ba90d85b1b62e857e279f963c05f346477e41f8662299f2e1178f55c09f
|
Provenance
The following attestation bundles were made for desphere_native-0.1.0-cp39-abi3-win_amd64.whl:
Publisher:
release.yml on ucpresearch/desphere
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
desphere_native-0.1.0-cp39-abi3-win_amd64.whl -
Subject digest:
c71c6f1466d1273221a4ce0a215135203ce5d6e89e65d0f67c90aabf0e7deb3d - Sigstore transparency entry: 1991486518
- Sigstore integration time:
-
Permalink:
ucpresearch/desphere@a12223ab1e373024f9022bc796b927fb31507335 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/ucpresearch
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@a12223ab1e373024f9022bc796b927fb31507335 -
Trigger Event:
push
-
Statement type:
File details
Details for the file desphere_native-0.1.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: desphere_native-0.1.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 286.2 kB
- Tags: CPython 3.9+, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b38126235625579678ab501d3e8418a34b595f851c6778df54256e8d08f2ea91
|
|
| MD5 |
1bda37ba66a00978eb196962e612f350
|
|
| BLAKE2b-256 |
fb344aa2f0bc7500aab229680a59b702d69d9c9cc7eea896f01e580fca0c5f54
|
Provenance
The following attestation bundles were made for desphere_native-0.1.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:
Publisher:
release.yml on ucpresearch/desphere
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
desphere_native-0.1.0-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl -
Subject digest:
b38126235625579678ab501d3e8418a34b595f851c6778df54256e8d08f2ea91 - Sigstore transparency entry: 1991486432
- Sigstore integration time:
-
Permalink:
ucpresearch/desphere@a12223ab1e373024f9022bc796b927fb31507335 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/ucpresearch
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@a12223ab1e373024f9022bc796b927fb31507335 -
Trigger Event:
push
-
Statement type:
File details
Details for the file desphere_native-0.1.0-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: desphere_native-0.1.0-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 283.6 kB
- Tags: CPython 3.9+, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
57b61871c66887aa79655e8f8a6ed7422b10c4b218be3b9ee55e5783dc576fc7
|
|
| MD5 |
9546a707f455fa0238dd9f183c0f575c
|
|
| BLAKE2b-256 |
6c2a0184b716af0f83369360273a4c47c98d042a633b37fb2a1a67e2905a7d2f
|
Provenance
The following attestation bundles were made for desphere_native-0.1.0-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:
Publisher:
release.yml on ucpresearch/desphere
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
desphere_native-0.1.0-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl -
Subject digest:
57b61871c66887aa79655e8f8a6ed7422b10c4b218be3b9ee55e5783dc576fc7 - Sigstore transparency entry: 1991486662
- Sigstore integration time:
-
Permalink:
ucpresearch/desphere@a12223ab1e373024f9022bc796b927fb31507335 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/ucpresearch
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@a12223ab1e373024f9022bc796b927fb31507335 -
Trigger Event:
push
-
Statement type:
File details
Details for the file desphere_native-0.1.0-cp39-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.
File metadata
- Download URL: desphere_native-0.1.0-cp39-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
- Upload date:
- Size: 501.2 kB
- Tags: CPython 3.9+, macOS 10.12+ universal2 (ARM64, x86-64), macOS 10.12+ x86-64, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
186c7c34ed2c50a6c3a10870c0868729725ed46a987fe0b24fbc3da2ec7b0c82
|
|
| MD5 |
f18ecfae18311a8050795dc952f502e0
|
|
| BLAKE2b-256 |
654c2f20f44981bac4b28aa6c7d351b593f23b7ccb2e984cf3588c09cac3ed17
|
Provenance
The following attestation bundles were made for desphere_native-0.1.0-cp39-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl:
Publisher:
release.yml on ucpresearch/desphere
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
desphere_native-0.1.0-cp39-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl -
Subject digest:
186c7c34ed2c50a6c3a10870c0868729725ed46a987fe0b24fbc3da2ec7b0c82 - Sigstore transparency entry: 1991486574
- Sigstore integration time:
-
Permalink:
ucpresearch/desphere@a12223ab1e373024f9022bc796b927fb31507335 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/ucpresearch
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@a12223ab1e373024f9022bc796b927fb31507335 -
Trigger Event:
push
-
Statement type: