Routinewheel - third-party notices
==================================

*** Note on the narrator voices ***************************************************************

  The narrator ("Say something out loud", a next-round feature that is switched off in a release)
  uses the Kokoro-82M voices, published under the Apache License 2.0, which allows commercial use
  with attribution (section 3c). The earlier Piper voices, whose base "lessac" data is licensed for
  non-commercial research only, have been removed: no Routinewheel build downloads them.

  The release build's voice pack still fetches only the speech engine (sherpa-onnx) and the
  speech-recognition model (Parakeet); the Kokoro voices are only downloaded where the narrator is
  switched on. The sherpa-onnx engine library has espeak-ng (GPL-3.0) built in, and the narrator
  also reads espeak-ng's pronunciation data (section 3d). These notes describe the licences as the
  publishers state them; they are not legal advice.

***********************************************************************************************

Routinewheel uses the third-party software and data below. Each part keeps its own licence; the
full licence texts are at the links given. (Checked 2026-10-15; sources at the end.)


1. Python (embeddable package)
------------------------------
Routinewheel runs on Python 3.12 (the Windows "embeddable package" from python.org). The website
download fetches it from python.org during setup; the Microsoft Store app includes it.

  Copyright (c) 2001 Python Software Foundation. All rights reserved.
  Licence: Python Software Foundation License Version 2 (PSF-2.0) - commercial use allowed
  https://docs.python.org/3.12/license.html

The embeddable package also contains software under these licences, listed in the same document:
  - OpenSSL (Apache License 2.0)            - libffi (MIT)
  - zlib (zlib licence)                     - bzip2 (bzip2 licence)
  - XZ Utils / liblzma (public domain/0BSD) - SQLite (public domain)
  - expat (MIT)                             - libmpdec (BSD-2-Clause)

On a Mac, Routinewheel runs on a standalone build of the same Python 3.12 (python-build-standalone,
https://github.com/astral-sh/python-build-standalone). The website's Mac download fetches it from
there the first time it starts and checks it; an app built with build_app.sh includes it. It is
CPython under the same PSF licence, built with the same kinds of libraries listed above, each under
its own licence (its licence text is in python/lib/python3.12/LICENSE.txt).


2. PyWinRT (Microsoft Store app only)
-------------------------------------
The Store app includes the winrt-runtime, winrt-Windows.Foundation(.Collections),
winrt-Windows.Services.Store and winrt-Windows.ApplicationModel packages (the Pro purchase check
and Start with Windows).
  Licence: MIT - https://github.com/pywinrt/pywinrt


3. The optional voice pack
--------------------------
Nothing below is part of the main download. It is only downloaded when you press "Get the voice
pack" on the Voice page, straight from the publishers' own release pages, and checked against
fixed fingerprints before it is used.

a) sherpa-onnx (speech engine) 1.12.14
   Copyright (c) Xiaomi Corporation and the k2-fsa / sherpa-onnx contributors
   Licence: Apache License 2.0 - https://github.com/k2-fsa/sherpa-onnx/blob/master/LICENSE
   Includes ONNX Runtime, Copyright (c) Microsoft Corporation, MIT License
   - https://github.com/microsoft/onnxruntime/blob/main/LICENSE

b) Parakeet TDT-CTC 110M English speech model (nvidia/parakeet-tdt_ctc-110m), converted to ONNX
   (int8) by the sherpa-onnx project
   Copyright (c) NVIDIA Corporation
   Licence: Creative Commons Attribution 4.0 International (CC BY 4.0) - commercial use allowed
   with attribution
   - https://huggingface.co/nvidia/parakeet-tdt_ctc-110m
   - https://creativecommons.org/licenses/by/4.0/
   Attribution: "Parakeet TDT-CTC 110M" by NVIDIA, used under CC BY 4.0; converted to ONNX and
   quantised to int8 (by the sherpa-onnx project).

c) Kokoro-82M narrator voices (only where the narrator is switched on; not part of a release's voice pack)
   File: kokoro-int8-multi-lang-v1_0.tar.bz2 from the sherpa-onnx "tts-models" release (the model converted to
   ONNX and quantised to int8 by the sherpa-onnx project). Only its English voices, its model, voice table, token
   list, English lexicons, the dict folder it needs and espeak-ng-data are unpacked.
   Kokoro-82M: Copyright (c) hexgrad. Licence: Apache License 2.0 - commercial use allowed
   - https://huggingface.co/hexgrad/Kokoro-82M
   - https://www.apache.org/licenses/LICENSE-2.0 (the full text is also in the archive, LICENSE)
   Attribution: "Kokoro-82M" by hexgrad, used under the Apache License 2.0; converted to ONNX and quantised to int8
   by the sherpa-onnx project.
   The model card says Kokoro was trained "exclusively on permissive/non-copyrighted audio data and IPA phoneme
   labels" (public-domain audio, audio under licences such as Apache or MIT, and synthetic audio from closed TTS
   models of large providers), and names two CC BY sources (Koniwa, CC BY 3.0; SIWIS, CC BY 4.0).
   English lexicons (lexicon-us-en.txt, lexicon-gb-en.txt): made by the sherpa-onnx project from the misaki
   pronunciation dictionaries, Copyright (c) hexgrad, Apache License 2.0 - https://github.com/hexgrad/misaki
   dict folder (word-splitting dictionaries the multi-language model needs, used for Chinese text): from cppjieba /
   jieba, MIT License - https://github.com/yanyiwu/cppjieba, https://github.com/fxsjy/jieba

d) espeak-ng (pronunciation)
   The sherpa-onnx engine library is built with espeak-ng compiled in (for its text-to-speech), and the narrator
   reads espeak-ng's data folder (the voice pack's tts\espeak-ng-data, from the same archive as the Kokoro voices).
   Copyright (c) the eSpeak and espeak-ng authors. Licence: GNU General Public License v3.0 or later (GPL-3.0)
   - https://github.com/espeak-ng/espeak-ng (licence: COPYING in that repository)
   - the copy sherpa-onnx 1.12.14 builds with: https://github.com/csukuangfj/espeak-ng/tree/f6fed6c58b5e0998b8e68c6610125e2d07d595a7
   espeak-ng is not part of Routinewheel's own download or the Microsoft Store app: it is only in the optional voice
   pack, which is downloaded unchanged from sherpa-onnx's release pages.


4. Encryption library (Routinewheel for Teams only)
---------------------------------------------------
Routinewheel for Teams encrypts the files it saves to the company's shared folder with the
"cryptography" package, included for Windows in app\vendor\win_amd64 (not in the consumer download
or the Store app). Unchanged files from the official PyPI wheels:
  cryptography 50.0.2 (cryptography-50.0.2-cp311-abi3-win_amd64.whl,
    sha256 7afa5a6602a9f29af1f3a2965f831bae7c9d5d597b7cbb716d41ab3b7d89879c)
  _cffi_backend from cffi 2.1.1 (cffi-2.1.1-cp312-cp312-win_amd64.whl,
    sha256 f53e442b08449d42821fa4a4fba000095af9f62742a500f978a9f557ec44339a)

  cryptography: Copyright (c) Individual contributors. Licence: Apache License 2.0 OR BSD 3-Clause
    (dual licensed; either one) - commercial use allowed. https://github.com/pyca/cryptography
  The cryptography wheel includes OpenSSL (Apache License 2.0) and Rust crates under MIT / Apache-2.0
    (listed in its software bill of materials, app\vendor\win_amd64\licenses\cryptography).
  cffi: Copyright the cffi authors. Licence: MIT-0 - commercial use allowed. https://github.com/python-cffi/cffi
The full licence texts are in app\vendor\win_amd64\licenses.
On a Mac, a Routinewheel for Teams app (packaging/mac/build_app.sh with EDITION=corporate) gets the
same package installed inside the app from unchanged PyPI wheels kept in packaging/mac/wheels
(their SHA-256 sums are in packaging/mac/wheels/SHA256SUMS; each wheel carries its own licence files):
  cryptography 50.0.2 for Apple silicon (cryptography-50.0.2-cp311-abi3-macosx_11_0_arm64.whl),
  cryptography 48.0.1 for Intel Macs (cryptography-48.0.1-cp311-abi3-macosx_10_9_universal2.whl -
    the newest release with an Intel Mac build), cffi 2.1.1 and pycparser 3.11 (BSD 3-Clause,
    https://github.com/eliben/pycparser). The consumer Mac app doesn't include them.


5. numpy (Mac app only)
-----------------------
A Mac app built with packaging/mac/build_app.sh includes numpy 2.2.6 (unchanged files from the
official PyPI wheel), which makes "click on a picture" faster. The Windows download, the Store app
and the Mac download that fetches its own Python don't include it.
  numpy: Copyright (c) 2005-2025, NumPy Developers. Licence: BSD 3-Clause - commercial use allowed.
    https://github.com/numpy/numpy/blob/main/LICENSE.txt
  The wheels for Intel Macs (and for Apple silicon before macOS 14) also bundle the OpenBLAS
    library (BSD 3-Clause) and the GCC runtime libraries it needs, libgfortran, libgcc and libquadmath (GPL-3.0 with the GCC Runtime Library
    Exception; libquadmath LGPL-2.1). Their licence texts are in the wheel's numpy-2.2.6.dist-info
    folder (LICENSE.txt), inside the app.


6. Fonts
--------
Routinewheel's page uses the fonts already on your PC (Segoe UI on Windows); no font files are
included.


Sources (checked 2026-10-15)
----------------------------
- Parakeet TDT-CTC 110M model card ("covered by the CC-BY-4.0 license"):
  https://huggingface.co/nvidia/parakeet-tdt_ctc-110m
- sherpa-onnx licence field (Apache-2.0): https://cdn.jsdelivr.net/npm/sherpa-onnx@1.12.37/package.json
- PyWinRT (MIT): https://github.com/pywinrt/pywinrt
- cryptography (Apache-2.0 OR BSD-3-Clause): https://pypi.org/project/cryptography/50.0.2/
- cffi (MIT-0): https://pypi.org/project/cffi/2.1.1/
- pycparser (BSD-3-Clause): https://pypi.org/project/pycparser/3.11/
- numpy (BSD-3-Clause; bundled OpenBLAS and GCC runtime libraries listed in its LICENSE.txt):
  https://pypi.org/project/numpy/2.2.6/
- Kokoro-82M model card (licence apache-2.0; "trained exclusively on permissive/non-copyrighted audio data and IPA
  phoneme labels"; v1.0 released 2025-01-27): https://huggingface.co/hexgrad/Kokoro-82M
- The Kokoro archive's own LICENSE (Apache License 2.0) and model metadata (see_also: hexgrad/Kokoro-82M):
  https://github.com/k2-fsa/sherpa-onnx/releases/tag/tts-models
- The English lexicons are generated from misaki's us/gb gold and silver dictionaries:
  https://github.com/k2-fsa/sherpa-onnx/tree/v1.12.14/scripts/kokoro/v1.0
- misaki licence (Apache-2.0): https://github.com/hexgrad/misaki/blob/main/LICENSE
- cppjieba (MIT): https://github.com/yanyiwu/cppjieba/blob/master/LICENSE ; jieba (MIT): https://github.com/fxsjy/jieba
- espeak-ng (GPL-3.0-or-later): https://github.com/espeak-ng/espeak-ng ; the version sherpa-onnx 1.12.14 uses:
  https://github.com/k2-fsa/sherpa-onnx/blob/v1.12.14/cmake/espeak-ng-for-piper.cmake
- (the removed Piper voices) Lessac / Blizzard 2013 licence ("Research Purposes only"):
  https://www.cstr.inf.ed.ac.uk/projects/blizzard/2013/lessac_blizzard2013/license.html
