隶属 vuba.one ↗
中文
← 返回 OpenRead

致谢与许可

OpenRead 建立在他人的工作之上。本页列出应用由哪些部分构成,以及随之而来的条款。

Speech models

VieNeu-TTS v3 Turbo (Pro engine) Phạm Nguyễn Ngọc Bảo (pnnbao97 / pnnbao-ump) · Apache-2.0

Extended Vietnamese engine, FP32 by default with optional INT8, with the SDK's 25 preset voices; models are separate from the app.

Version used: SDK 3.8.3 · 85344322b7258b4e25479b692e8e3396baf9db34 · model 61b85e3d937fbbacb387714180e8182823512523

Open the source repository

What OpenRead changed

  • Native C++ inference following the pinned SDK, with a Rust frontend. Ported the SDK chunking and pause joining to Swift; added the OpenRead adapter, cancellation, PCM cache and worker QoS scheduling.
  • FP32 uses an acoustic ONNX graph exported from the original weights, original backbone and shared-initializer metadata. INT8 uses the author's SDK graphs. Weights are unchanged; model files are SHA-256 verified before loading.
  • The 25 preset voices were copied from src/vieneu/assets/voices_v3_turbo.json into a compact JSON file inside the app (codec codes flattened, default voice listed first) — a storage format change, values unchanged. The default voice still uses the anchor shipped in the model pack.
  • Added integration for personal voices created from user recordings processed on-device; the author's preset voices are unchanged.
  • OpenRead adds at most two or three bounded retries for failed one- or two-syllable selections, still requiring real EOS and PCM checks. Reader groups Vietnamese units below five whitespace-delimited words with adjacent sentences, bounded by three sentences and 96 Unicode scalars (112 for the bounded fallback); weights and preset voices are unchanged.

Note: This license is archived from the pinned source repository, not an independent weight license obtained from the Hugging Face checkpoint.

Shown in the original English. A translation of a licence has no legal force.

MOSS-TTS-Nano (Pro engine) OpenMOSS Team · Apache-2.0

International engine: Chinese, English, Japanese and cross-lingual reading of a few other languages; models are separate from the app.

Version used: code 8b7bcc9341b3b4ef3a3a58ba1338a7d85ff133eb · ONNX f52645cb467506d8e18e746ddd59482685b74e58 · PyTorch 44502f80dbf9743528fa921cc544d662c685ebec

Open the source repository

What OpenRead changed

  • Native C++ inference running the author's ONNX graphs on CPU, keeping the original prompt and the in-graph sampler. FP32 weights are unchanged, only regrouped so the graphs share memory; added the OpenRead adapter, cancellation, PCM cache and worker QoS scheduling.
  • Ported the upstream text normalizer and 75-token chunker to Swift, with a rewritten SentencePiece encoder that reads the author's tokenizer.model directly. Before normalizing, the app strips control-token strings from the input text and converts Traditional Chinese to Simplified.
  • The INT8 build is OpenRead's own quantization (ORT dynamic per-channel QInt8) of the author's FP32 graphs and is opt-in only. Voice prompts are the author's presets, unchanged; the 7 Japanese voices are shown under different names in the interface. Model files are SHA-256 verified before loading.
  • Added integration for personal voices from user recordings and output checks with bounded regeneration for abnormal silence. Voice processing and synthesis both run on-device.
  • OpenRead adds conditional linear gain reduction for sparse PCM overshoot beyond the player limit, admitting peaks up to 1.6 with density, crest and DC bounds. Already-playable PCM and the raw cache remain unchanged; no hard clipping or weight changes.

Note: This license is archived from the pinned source repository. The pinned ONNX model revision on Hugging Face ships no LICENSE file; its model card states Apache-2.0.

Shown in the original English. A translation of a licence has no legal force.

VieNeu-TTS v3 Turbo Phạm Nguyễn Ngọc Bảo (pnnbao97 / pnnbao-ump) · Apache-2.0

The Vietnamese speech model that runs on-device, and the 14 preset voices shipped with it.

Version used: SDK v3.2.3 · 452bf58485a37772d8963a7dfb9e13b0d8288a50 · model 75ff82a72f54d55ed389e1eeb12041d3c4bac7d4

Open the source repository

What OpenRead changed

  • Uses the int8 ONNX graphs published by the author at the pinned revision — OpenRead did not convert them and did not change the weights.
  • Repacked into OpenRead's voice pack (chunked with checksums) for separate download; each file's bytes are unchanged.
  • The 14 preset voices were extracted from assets/voices_v3_turbo.json into per-voice .npy files — a storage format change, values unchanged.
  • The inference pipeline was reimplemented in C++ for iOS. It is an independent implementation, not a copy of the author's source.
  • Added optional ONNX Runtime worker scheduling that follows the synthesis lane's QoS for Pro energy savings; graphs, weights and synthesis algorithms are unchanged.

Note: The pinned Hugging Face model revision ships no LICENSE file of its own. The Apache-2.0 shown here is the licence of the source repository and the model card, not a file taken from that revision.

Shown in the original English. A translation of a licence has no legal force.

MOSS-Audio-Tokenizer-Nano OpenMOSS Team · Apache-2.0

The neural audio codec that decodes generated tokens back into a waveform and encodes recordings for on-device personal voices.

Version used: ceff0d0749bfb3fa2d61149794ec6feef0d1e1ae

Open the source repository

What OpenRead changed

  • Uses the ONNX graphs published by the author; only repacked into OpenRead's voice pack, weights unchanged. The app decodes with the author's streaming graph in 8-frame windows instead of the one-shot decode graph, so memory does not grow with sentence length; results differ only by floating-point rounding.

Note: The pinned Hugging Face revision ships no LICENSE file. Its model card states Apache-2.0, so the verbatim Apache-2.0 text shown here is the canonical text of that licence — not a file taken from the model revision.

Shown in the original English. A translation of a licence has no legal force.

Supertonic 3 Supertone Inc. · BigScience-OpenRAIL-M

The on-device multilingual speech model used for languages other than Vietnamese; downloaded separately, with 10 preset voices.

Version used: model 3cadd1ee6394adea1bd021217a0e650ede09a323 · gói supertonic-int8w-v1

Open the source repository

What OpenRead changed

  • The text encoder, vector estimator and vocoder weights were re-stored as int8 (one scale per output channel) and expanded back to fp32 at run time. The duration predictor, configuration and 10 preset voices are byte-for-byte unchanged.
  • Repacked into OpenRead's voice pack (compressed, chunked with checksums) for separate download.
  • The inference pipeline was reimplemented in C++ for iOS; for Vietnamese the model's predicted duration is scaled by 0.7 at run time (weights unchanged).
  • Besides the 10 preset voices, OpenRead distributes additional voices it created (voice style vectors, downloaded separately through its catalog); the model weights are unchanged. See the Common Voice entry.
  • For an almost-silent Vietnamese single-word chunk, OpenRead retries once with duration scale 1.0, with signal and cancellation checks. Existing audible output is unchanged; weights, voices and the default duration scale for other chunks are unchanged.

Note: Downloaded separately in the app (Settings → Voice packs → Enhanced multilingual); users must accept the multilingual voice pack terms before downloading: the OpenRAIL-M licence (§4a, §5) requires the Attachment A use restrictions to be a binding term for users. The licence text carries no copyright line; per the model card the copyright holder is Supertone Inc. The training data sources are not disclosed. OpenRead is not affiliated with Supertone Inc.

Shown in the original English. A translation of a licence has no legal force.

Mozilla Common Voice (Supertonic voices) Mozilla Common Voice contributors · CC0-1.0

Voice recordings used to create OpenRead's Supertonic PRO voices; the voices are downloaded separately through the catalog, not shipped in the app.

Version used: Common Voice Corpus 17.0 · cs

Open the source repository

What OpenRead changed

  • OpenRead optimised Supertonic 3 voice style vectors (style_ttl) to match about 2 minutes of one contributor's recordings; style_dp is taken unchanged from the starting preset voice. No recording is redistributed. Voice names are fictional and not tied to any contributor.

Shown in the original English. A translation of a licence has no legal force.

Model runtime

ONNX Runtime 1.23.0 Microsoft Corporation · MIT

Runs the models on-device.

Version used: iOS 1.23.0 · be835efc56aca19b8e810538ec93c8e150e0fc61

Open the source repository

What OpenRead changed

  • Uses Microsoft's prebuilt binary, unmodified.

Shown in the original English. A translation of a licence has no legal force.

Libraries

sea-g2p 0.9.1 Phạm Nguyễn Ngọc Bảo (pnnbao97) · Apache-2.0

Text normalization and phonemization for the Pro engine.

Version used: 0.9.1 · dictionary 4346e690d0711ebc5231e7a42c5c88aaf6e40377e894b4617c018fd81c6f4096

Open the source repository

What OpenRead changed

  • Compiled the vendored Rust source for iOS and added a C ABI preserving emotion tags, sentence normalization and SDK frame limits; does not use the free engine's pronunciation repairs.

Shown in the original English. A translation of a licence has no legal force.

sea-g2p 0.7.20 Phạm Nguyễn Ngọc Bảo (pnnbao97) · Apache-2.0

Grapheme-to-phoneme conversion for Vietnamese, with the sea_g2p.bin dictionary.

Version used: v0.7.20 · 1b9be32f47e3d63919daf2025be586b621f81e02

Open the source repository

What OpenRead changed

  • Cross-compiled for iOS (aarch64) into an xcframework.
  • Added a post-lookup step: words spelled with "tr" get their onset changed from tʃ to tɹ, so the reader distinguishes "tr" from "ch". Upstream sea-g2p merges the two. Set the SEAG2P_UPSTREAM_ONSETS environment variable to disable it and get the author's output verbatim.
  • The sea_g2p.bin dictionary is the author's v0.7.20 artefact, not regenerated.

Shown in the original English. A translation of a licence has no legal force.

seag2p_ffi 0.1.0 OpenRead · Apache-2.0

A C wrapper written by OpenRead so Swift/C++ can call sea-g2p.

Open the source repository

What OpenRead changed

  • The C wrapper and glue are OpenRead's own code, released under the same Apache-2.0 licence. This crate also carries the vendored sea-g2p code; any changes to that code are listed under the sea-g2p 0.7.20 entry.

Shown in the original English. A translation of a licence has no legal force.

Supertonic sample code Copyright (c) 2025 Supertone Inc · MIT

The text normalisation rules applied before the model (character replacement table, emoji removal, spacing around punctuation).

Version used: 1e9799e964ea4c0dad7cde993b65c3c813a7b373 (repo đã archive)

Open the source repository

What OpenRead changed

  • Ported from Python to Swift; output matches the original on the test sentences.

Shown in the original English. A translation of a licence has no legal force.

Rust libraries

aho-corasick 1.1.4 / 1.1.5 Copyright (c) 2015 Andrew Gallant · MIT OR Unlicense

Version used: Legacy and Pro frontend versions; license files byte-identical.

Open the source repository

Shown in the original English. A translation of a licence has no legal force.

bit-set 0.5.3 Copyright (c) 2016 The Rust Project Developers · Apache-2.0 OR MIT

Open the source repository

Shown in the original English. A translation of a licence has no legal force.

bit-vec 0.6.3 Copyright (c) 2015 The Rust Project Developers · Apache-2.0 OR MIT

Open the source repository

Shown in the original English. A translation of a licence has no legal force.

crossbeam-deque 0.8.7 / 0.8.8 Copyright (c) 2019 The Crossbeam Project Developers · Apache-2.0 OR MIT

Version used: Legacy and Pro frontend versions; license files byte-identical.

Open the source repository

Shown in the original English. A translation of a licence has no legal force.

crossbeam-epoch 0.9.20 / 0.9.21 Copyright (c) 2019 The Crossbeam Project Developers · Apache-2.0 OR MIT

Version used: Legacy and Pro frontend versions; license files byte-identical.

Open the source repository

Shown in the original English. A translation of a licence has no legal force.

crossbeam-utils 0.8.22 / 0.8.23 Copyright (c) 2019 The Crossbeam Project Developers · Apache-2.0 OR MIT

Version used: Legacy and Pro frontend versions; license files byte-identical.

Open the source repository

Shown in the original English. A translation of a licence has no legal force.

either 1.16.0 / 1.18.0 Copyright (c) 2015 · Apache-2.0 OR MIT

Version used: Legacy and Pro frontend versions; license files byte-identical.

Open the source repository

Shown in the original English. A translation of a licence has no legal force.

fancy-regex 0.13.0 Copyright 2015 The Fancy Regex Authors · MIT

Open the source repository

Shown in the original English. A translation of a licence has no legal force.

itoa 1.0.18 David Tolnay · Apache-2.0 OR MIT

Open the source repository

Shown in the original English. A translation of a licence has no legal force.

libc 0.2.189 Copyright (c) The Rust Project Developers · Apache-2.0 OR MIT

Open the source repository

Shown in the original English. A translation of a licence has no legal force.

memchr 2.8.3 Copyright (c) 2015 Andrew Gallant · MIT OR Unlicense

Open the source repository

Shown in the original English. A translation of a licence has no legal force.

memmap2 0.9.11 Copyright [2015] [Dan Burkert] · Copyright (c) 2020 Yevhenii Reizner · Copyright (c) 2015 Dan Burkert · Apache-2.0 OR MIT

Open the source repository

Shown in the original English. A translation of a licence has no legal force.

once_cell 1.21.4 Aleksey Kladov · Apache-2.0 OR MIT

Open the source repository

Shown in the original English. A translation of a licence has no legal force.

proc-macro2 1.0.107 David Tolnay; Alex Crichton · Apache-2.0 OR MIT

Open the source repository

Shown in the original English. A translation of a licence has no legal force.

quote 1.0.47 David Tolnay · Apache-2.0 OR MIT

Open the source repository

Shown in the original English. A translation of a licence has no legal force.

rayon 1.12.0 Copyright (c) 2010 The Rust Project Developers · Apache-2.0 OR MIT

Open the source repository

Shown in the original English. A translation of a licence has no legal force.

rayon-core 1.13.0 Copyright (c) 2010 The Rust Project Developers · Apache-2.0 OR MIT

Open the source repository

Shown in the original English. A translation of a licence has no legal force.

regex 1.13.1 Copyright (c) 2014 The Rust Project Developers · Apache-2.0 OR MIT

Open the source repository

Shown in the original English. A translation of a licence has no legal force.

regex-automata 0.4.16 / 0.4.18 Copyright (c) 2014 The Rust Project Developers · Apache-2.0 OR MIT

Version used: Legacy and Pro frontend versions; license files byte-identical.

Open the source repository

Shown in the original English. A translation of a licence has no legal force.

regex-syntax 0.8.11 Copyright (c) 2014 The Rust Project Developers · Apache-2.0 OR MIT

Open the source repository

Shown in the original English. A translation of a licence has no legal force.

serde 1.0.229 Erick Tryzelaar; David Tolnay · Apache-2.0 OR MIT

Open the source repository

Shown in the original English. A translation of a licence has no legal force.

serde_core 1.0.229 Erick Tryzelaar; David Tolnay · Apache-2.0 OR MIT

Open the source repository

Shown in the original English. A translation of a licence has no legal force.

serde_derive 1.0.229 Erick Tryzelaar; David Tolnay · Apache-2.0 OR MIT

Open the source repository

Shown in the original English. A translation of a licence has no legal force.

serde_json 1.0.151 Erick Tryzelaar; David Tolnay · Apache-2.0 OR MIT

Open the source repository

Shown in the original English. A translation of a licence has no legal force.

syn 3.0.3 David Tolnay · Apache-2.0 OR MIT

Open the source repository

Shown in the original English. A translation of a licence has no legal force.

tinyvec 1.12.0 / 1.13.3 Copyright (c) 2019 Daniel "Lokathor" Gee · Apache-2.0 OR MIT OR Zlib

Version used: Legacy and Pro frontend versions; license files byte-identical.

Open the source repository

Shown in the original English. A translation of a licence has no legal force.

tinyvec_macros 0.1.1 Copyright 2020 Tomasz "Soveu" Marx · Copyright (c) 2020 Soveu · Apache-2.0 OR MIT OR Zlib
unicode-ident 1.0.24 Copyright © 1991-2023 Unicode, Inc · (Apache-2.0 OR MIT) AND Unicode-3.0
unicode-normalization 0.1.25 Copyright (c) 2015 The Rust Project Developers · Apache-2.0 OR MIT

Open the source repository

Shown in the original English. A translation of a licence has no legal force.

zmij 1.0.23 David Tolnay · MIT

Open the source repository

Shown in the original English. A translation of a licence has no legal force.

每个组件都随其确切发布版本附带完整的许可证与声明文件。若你发现此处署名有误,请与我们联系。

📧 dev@vuba.one

发送留言
发送留言

对 OpenRead 有想法,或是遇到了问题?在这里告诉我们。

这是什么?
你的留言

你在这里输入的内容会存放在我们的服务器上,供我们阅读——仅此而已。不记录 IP 地址,不需要账号,也没有任何跟踪。