sherpa-onnx

k2-fsaApache-2.0活跃维护 有专家点评

基于新一代 Kaldi 和 onnxruntime 的离线语音工具包,一套搞定语音识别、合成、说话人分离、降噪、声源分离和 VAD,可跑在嵌入式、手机和服务器上。

Speech-to-text, text-to-speech, speaker diarization, speech enhancement, source separation, and VAD using next-gen Kaldi with onnxruntime without Internet connection. Support embedded systems, Android, iOS, HarmonyOS, Raspberry Pi, RISC-V, RK NPU, Axera NPU, Ascend NPU, x86_64 servers, websocket server/client, support 12 programming languages

v2.0.1发布于 2026-10-26 15:24 UTC15,872star +52 / 7 天1,867fork同步于 2026-11-11 05:24 UTC

专家点评

上手难度:进阶更新于 2026-11-11

离线语音全栈推理库,用 onnxruntime 顶替 Kaldi 部署链路,一套 C++ 核心供 12 种语言调用

适用场景

  • 端侧/嵌入式语音交互:Android、iOS、树莓派、RISC-V 板子上要跑流式 ASR + VAD + 关键词检测,且不能联网。这类场景换 Python 系方案基本没法落地,交叉编译和内存占用都过不去。
  • 已有 C++/C#/Java 服务需要加语音能力:它给的是库而不是服务,能直接链进现有进程,省掉再维护一个推理服务进程和进程间协议。
  • 离线批量转写与评测:非流式 ASR 加说话人分离跑本地文件,不依赖外网和 API 配额,适合做数据集标注或回归评测。
  • 需要 TTS 和 ASR 共用一套运行时:同一份 onnxruntime 依赖覆盖合成、识别、声纹,减少多套框架的版本冲突。

踩坑

  • 模型不在仓库里,要自己按任务下载对应 onnx 模型并匹配版本;模型和库版本对不上时的报错通常不指向根因,第一次接入容易卡在这里。
  • TTS 前端依赖有过破坏性变更(issue 里 "Remove espeak-ng and piper-phonemize dependency" 反应数最高),如果你在旧版本上接了 TTS,升级时要预留重配音素化链路的工时。
  • NPU 后端不是等价替换:issue 里有 paraformer 的 QNN 推理问题,说明换到 NPU 时算子覆盖和精度问题需要单独验证,别假设 CPU 上跑通就能直接切。

同类对比

要的是开箱即用的服务端 API 而不是嵌入式库,看 whisper.cpp 生态或 FunASR 的服务化部署;纯 Python 原型验证阶段用 faster-whisper 更快出结果,等确定要上端侧再迁过来。

怎么上手

由 README 提炼,执行前请确认
README 未给出安装命令
硬件要求按 README 说明

README 未说明显存要求;支持 x86/x86_64、ARM32/64、RISC-V 的 CPU 运行,也支持 RK NPU、Qualcomm QNN、Ascend、Axera、Intel OpenVINO NPU,以及 NVIDIA Jetson Orin NX / Nano B01 的 CPU 与 GPU。

昇腾 / Ascend
下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

由 README 自动翻译提炼

离线跑语音识别、合成、说话人分离等全套语音任务的 onnxruntime 推理库

基于新一代 Kaldi 和 onnxruntime 的离线语音工具包,一套搞定语音识别、合成、说话人分离、降噪、声源分离和 VAD,可跑在嵌入式、手机和服务器上。

核心能力

  • 支持流式与非流式语音识别(ASR)
  • 本地运行 TTS、说话人分离与声纹识别
  • 内置 VAD、语音增强、关键词检测与音源分离
  • 覆盖 12 种编程语言与 WebAssembly 接口
  • 适配 Android、iOS、鸿蒙、树莓派及多种 NPU

容易踩的坑

需自行下载对应模型文件才能运行;README 未说明默认端口等运行参数

内容由模型根据 README 生成,可能不完整或不准确,以官方文档为准。看原文 README

最近发版

5 个版本v2.0.1
  1. v2.0.1最新正式版2026-10-26 · 2026-10-26 15:24 UTC

    What's Changed

    New Contributors

    Full Changelog: https://github.com/k2-fsa/sherpa-onnx/compare/v2.0.0...v2.0.1

  2. v2.0.02026-10-23 · 2026-10-23 12:49 UTC
    查看更新说明

    What's Changed

  3. v1.13.82026-09-10 · 2026-09-10 14:00 UTC
    查看更新说明

    What's Changed

    New Contributors

    Full Changelog: https://github.com/k2-fsa/sherpa-onnx/compare/v1.13.7...v1.13.8

  4. v1.13.72026-09-01 · 2026-09-01 05:01 UTC
    查看更新说明

    What's Changed

    New Contributors

    Full Changelog: https://github.com/k2-fsa/sherpa-onnx/compare/v1.13.6...v1.13.7

  5. tauri2026-08-25 · 2026-08-25 03:44 UTC
    查看更新说明

    Contents

    Download links and usage instructions for every app: tauri-examples/app.md

    Doubao ASR from files — quick notes

    Generate subtitles for audio or video files: local sherpa-onnx VAD + Doubao recording-file recognition. Click a transcript segment to play it; view/export/share the transcript as SRT, timestamped TXT or plain TXT. Results are saved automatically to the Downloads folder on Android, or next to the input file on desktop — and existing results are loaded (not paid for twice).

    • Get an API key: help on getting a Doubao API key
    • New Volcengine accounts get 20 hours of free recognition. For more, buy hours and select the package 录音文件识别 (recording-file recognition) — not 流式语音识别 (streaming speech recognition).
    • Privacy: speech is uploaded to Volcengine for recognition; it is not processed entirely on your device.

    Source code: tauri-examples

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    Ask DeepWiki

    Supported functions

    Speech recognitionSpeech synthesisSource separation
    ✔️✔️✔️
    Speaker identificationSpeaker diarizationSpeaker verification
    ✔️✔️✔️
    Spoken Language identificationAudio taggingVoice activity detection
    ✔️✔️✔️
    Keyword spottingAdd punctuationSpeech enhancement
    ✔️✔️✔️

    Supported platforms

    ArchitectureAndroidiOSWindowsmacOSlinuxHarmonyOS
    x64✔️✔️✔️✔️✔️
    x86✔️✔️
    arm64✔️✔️✔️✔️✔️✔️
    arm32✔️✔️✔️
    riscv64✔️

    Supported programming languages

    1. C++2. C3. Python4. JavaScript
    ✔️✔️✔️✔️
    5. Java6. C#7. Kotlin8. Swift
    ✔️✔️✔️✔️
    9. Go10. Dart11. Rust12. Pascal
    ✔️✔️✔️✔️

    It also supports WebAssembly.

    Supported frameworks

    Flutter
    ArchitectureAndroidiOSWindowsmacOSLinuxWeb
    x64✔️✔️✔️✔️✔️
    x86✔️✔️
    arm64✔️✔️✔️✔️✔️✔️
    arm32✔️✔️
    Tauri
    ArchitectureAndroidiOSWindowsmacOSLinux
    x64✔️✔️✔️✔️
    x86✔️
    arm64✔️✔️✔️✔️✔️
    arm32✔️

    Supported NPUs

    1. Rockchip NPU (RKNN)2. Qualcomm NPU (QNN)3. Ascend NPU
    ✔️✔️✔️
    4. Axera NPU5. Intel NPU (OpenVINO)
    ✔️✔️

    Join our discord

    Introduction

    This repository supports running the following functions locally

    • Speech-to-text (i.e., ASR); both streaming and non-streaming are supported
    • Text-to-speech (i.e., TTS)
    • Speaker diarization
    • Speaker identification
    • Speaker verification
    • Spoken language identification
    • Audio tagging
    • VAD (e.g., silero-vad)
    • Speech enhancement (e.g., gtcrn, DPDFNet, VoxLock)
    • Keyword spotting
    • Source separation (e.g., spleeter, UVR)

    on the following platforms and operating systems:

    with the following APIs

    • C++, C, Python, Go, C#
    • Java, Kotlin, JavaScript
    • Swift, Rust
    • Dart, Object Pascal

    Links for Huggingface Spaces

    DescriptionURL中国镜像
    Speaker diarizationClick me镜像
    Speech recognitionClick me镜像
    Speech recognition with WhisperClick me镜像
    Speech synthesisClick me镜像
    Generate subtitlesClick me镜像
    Audio taggingClick me镜像
    Source separationClick me镜像
    Spoken language identification with WhisperClick me镜像

    We also have spaces built using WebAssembly. They are listed below:

    DescriptionHuggingface spaceModelScope space
    Voice activity detection with silero-vadClick me地址
    Real-time speech recognition (Chinese + English) with ZipformerClick me地址
    Real-time speech recognition (Chinese + English) with ParaformerClick me地址
    Real-time speech recognition (Chinese + English + Cantonese) with Paraformer-largeClick me地址
    Real-time speech recognition (English)Click me地址
    VAD + speech recognition (Chinese) with Zipformer CTCClick me地址
    VAD + speech recognition (Chinese + English + Korean + Japanese + Cantonese) with SenseVoiceClick me地址
    VAD + speech recognition (English) with Whisper tiny.enClick me地址
    VAD + speech recognition (English) with Moonshine tinyClick me地址
    VAD + speech recognition (English) with Zipformer trained with GigaSpeechClick me地址
    VAD + speech recognition (Chinese) with Zipformer trained with WenetSpeechClick me地址
    VAD + speech recognition (Japanese) with Zipformer trained with ReazonSpeechClick me地址
    VAD + speech recognition (Thai) with Zipformer trained with GigaSpeech2Click me地址
    VAD + speech recognition (Chinese 多种方言) with a TeleSpeech-ASR CTC modelClick me地址
    VAD + speech recognition (English + Chinese, 及多种中文方言) with Paraformer-largeClick me地址
    VAD + speech recognition (English + Chinese, 及多种中文方言) with Paraformer-smallClick me地址
    VAD + speech recognition (多语种及多种中文方言) with Dolphin-baseClick me地址
    Speech synthesis (Piper, English)Click me地址
    Speech synthesis (Piper, German)Click me地址
    Speech synthesis (Matcha, Chinese)Click me地址
    Speech synthesis (Matcha, English)Click me地址
    Speech synthesis (Matcha, Chinese+English)Click me地址
    Speaker diarizationClick me地址
    Voice cloning with ZipVoice (Chinese+English)Click me地址
    Voice cloning with Pocket TTS (English)Click me地址

    Links for pre-built Android APKs

    DescriptionURL中国用户
    Speaker diarizationAddress点此
    Streaming speech recognitionAddress点此
    Simulated-streaming speech recognitionAddress点此
    Text-to-speechAddress点此
    Voice activity detection (VAD)Address点此
    VAD + non-streaming speech recognitionAddress点此
    Two-pass speech recognitionAddress点此
    Audio taggingAddress点此
    Audio tagging (WearOS)Address点此
    Speaker identificationAddress点此
    Spoken language identificationAddress点此
    Keyword spottingAddress点此

    Links for pre-built Flutter APPs

    Real-time speech recognition
    DescriptionURL中国用户
    Streaming speech recognitionAddress点此
    Text-to-speech
    DescriptionURL中国用户
    Android (arm64-v8a, armeabi-v7a, x86_64)Address点此
    Linux (x64)Address点此
    macOS (x64)Address点此
    macOS (arm64)Address点此
    Windows (x64)Address点此

    Note: You need to build from source for iOS.

    Links for pre-built Lazarus APPs

    Generating subtitles
    DescriptionURL中国用户
    Generate subtitles (生成字幕)Address点此

    Links for pre-trained models

    DescriptionURL
    Speech recognition (speech to text, ASR)Address
    Text-to-speech (TTS)Address
    VADAddress
    Keyword spottingAddress
    Audio taggingAddress
    Speaker identification (Speaker ID)Address
    Spoken language identification (Language ID)See multi-lingual Whisper ASR models from Speech recognition
    PunctuationAddress
    Speaker segmentationAddress
    Speech enhancementAddress
    Source separationAddress
    Some pre-trained ASR models (Streaming)

    Please see

    for more models. The following table lists only SOME of them.

    NameSupported LanguagesDescription
    sherpa-onnx-streaming-zipformer-bilingual-zh-en-2023-02-20Chinese, EnglishSee also
    sherpa-onnx-streaming-zipformer-small-bilingual-zh-en-2023-02-16Chinese, EnglishSee also
    sherpa-onnx-streaming-zipformer-zh-14M-2023-02-23ChineseSuitable for Cortex A7 CPU. See also
    sherpa-onnx-streaming-zipformer-en-20M-2023-02-17EnglishSuitable for Cortex A7 CPU. See also
    sherpa-onnx-streaming-zipformer-korean-2024-06-16KoreanSee also
    sherpa-onnx-streaming-zipformer-fr-2023-04-14FrenchSee also
    Some pre-trained ASR models (Non-Streaming)

    Please see

    for more models. The following table lists only SOME of them.

    NameSupported LanguagesDescription
    sherpa-onnx-nemo-parakeet-tdt-0.6b-v2-int8EnglishIt is converted from https://huggingface.co/nvidia/parakeet-tdt-0.6b-v2
    Whisper tiny.enEnglishSee also
    Moonshine tinyEnglishSee also
    sherpa-onnx-zipformer-ctc-zh-int8-2025-07-03ChineseA Zipformer CTC model
    sherpa-onnx-sense-voice-zh-en-ja-ko-yue-2024-07-17Chinese, Cantonese, English, Korean, Japanese支持多种中文方言. See also
    sherpa-onnx-paraformer-zh-2024-03-09Chinese, English也支持多种中文方言. See also
    sherpa-onnx-zipformer-ja-reazonspeech-2024-08-01JapaneseSee also
    sherpa-onnx-nemo-transducer-giga-am-russian-2024-10-24RussianSee also
    sherpa-onnx-nemo-ctc-giga-am-russian-2024-10-24RussianSee also
    sherpa-onnx-zipformer-ru-2024-09-18RussianSee also
    sherpa-onnx-zipformer-korean-2024-06-24KoreanSee also
    sherpa-onnx-zipformer-thai-2024-06-20ThaiSee also
    sherpa-onnx-telespeech-ctc-int8-zh-2024-06-04Chinese支持多种方言. See also

    Useful links

    How to reach us

    Please see https://k2-fsa.github.io/sherpa/social-groups.html for 新一代 Kaldi 微信交流群 and QQ 交流群.

    Projects using sherpa-onnx

    VocaRead

    iOS app for reading EPUBs, PDFs, and documents aloud. It uses sherpa-onnx to synthesize speech locally with Piper voices and can import books from OPDS catalogs.

    Sherpa Voice / @siteed/sherpa-onnx.rn

    React Native wrapper and demo app for validating sherpa-onnx on iOS, Android, and Web, including ASR, TTS, VAD, KWS, speaker ID, diarization, language ID, punctuation, audio tagging, and speech enhancement.

    SmartVoice

    SmartVoice is a local speech application for speech recognition and text-to-speech. Its smartvoice-auto virtual model matches each request's task and language against an editable routing table, then dynamically routes it to the most suitable installed model. sherpa-onnx powers CPU inference; a web interface and HTTP API are included.

    Speed of Sound

    A voice-typing application for the Linux desktop (GTK4/Adwaita). It captures microphone audio, transcribes it offline using Sherpa ONNX ASR models, optionally polishes the text with an LLM, and types the result into the active window via XDG Remote Desktop Portal keyboard simulation.

    VoxSherpa TTS

    VoxSherpa TTS is a 100% offline Android Text-to-Speech app powered by Sherpa-ONNX. It supports Kokoro-82M, Piper, and VITS engines with multilingual support including Hindi, English, British English, Japanese, Chinese and 50+ more languages.

    GenerateModelsLibrarySettings

    BreezeApp from MediaTek Research

    BreezeAPP is a mobile AI application developed for both Android and iOS platforms. Users can download it directly from the App Store and enjoy a variety of features offline, including speech-to-text, text-to-speech, text-based chatbot interactions, and image question-answering

    123

    Open-LLM-VTuber

    Talk to any LLM with hands-free voice interaction, voice interruption, and Live2D taking face running locally across platforms

    See also https://github.com/t41372/Open-LLM-VTuber/pull/50

    voiceapi

    It shows how to use the ASR and TTS Python APIs with FastAPI.

    腾讯会议摸鱼工具 TMSpeech

    Uses streaming ASR in C# with graphical user interface.

    Video demo in Chinese: 【开源】Windows实时字幕软件(网课/开会必备)

    lol互动助手

    It uses the JavaScript API of sherpa-onnx along with Electron

    Video demo in Chinese: 爆了!炫神教你开打字挂!真正影响胜率的英雄联盟工具!英雄联盟的最后一块拼图!和游戏中的每个人无障碍沟通!

    Sherpa-ONNX 语音识别服务器

    A server based on nodejs providing Restful API for speech recognition.

    QSmartAssistant

    一个模块化,全过程可离线,低占用率的对话机器人/智能音箱

    It uses QT. Both ASR and TTS are used.

    Flutter-EasySpeechRecognition

    It extends ./flutter-examples/streaming_asr by downloading models inside the app to reduce the size of the app.

    Note: [Team B] Sherpa AI backend also uses sherpa-onnx in a Flutter APP.

    sherpa-onnx-unity

    sherpa-onnx in Unity. See also #1695, #1892, and #1859

    xiaozhi-esp32-server

    本项目为xiaozhi-esp32提供后端服务,帮助您快速搭建ESP32设备控制服务器 Backend service for xiaozhi-esp32, helps you quickly build an ESP32 device control server.

    See also

    KaithemAutomation

    Pure Python, GUI-focused home automation/consumer grade SCADA.

    It uses TTS from sherpa-onnx. See also ✨ Speak command that uses the new globally configured TTS model.

    Open-XiaoAI KWS

    Enable custom wake word for XiaoAi Speakers. 让小爱音箱支持自定义唤醒词。

    Video demo in Chinese: 小爱同学启动~˶╹ꇴ╹˶!

    C++ WebSocket ASR Server

    It provides a WebSocket server based on C++ for ASR using sherpa-onnx.

    Go WebSocket Server

    It provides a WebSocket server based on the Go programming language for sherpa-onnx.

    Making robot Paimon, Ep10 "The AI Part 1"

    It is a YouTube video, showing how the author tried to use AI so he can have a conversation with Paimon.

    It uses sherpa-onnx for speech-to-text and text-to-speech.

    1

    TtsReader - Desktop application

    A desktop text-to-speech application built using Kotlin Multiplatform.

    MentraOS

    Smart glasses OS, with dozens of built-in apps. Users get AI assistant, notifications, translation, screen mirror, captions, and more. Devs get to write 1 app that runs on any pair of smart glasses.

    It uses sherpa-onnx for real-time speech recognition on iOS and Android devices. See also https://github.com/Mentra-Community/MentraOS/pull/861

    It uses Swift for iOS and Java for Android.

    flet_sherpa_onnx

    Flet ASR/STT component based on sherpa-onnx. Example a chat box agent

    achatbot-go

    a multimodal chatbot based on go with sherpa-onnx's speech lib api.

    fcitx5-vinput

    Local offline voice input plugin for Fcitx5 (Linux input method framework). It uses C++ with offline ASR for speech recognition, supporting push-to-talk, command mode, and optional LLM post-processing.

    Video demo in Chinese: fcitx5-vinput

    Wake Word

    A VS Code extension for hands-free voice-activated coding. It uses sherpa-onnx for real-time keyword spotting (KWS) to detect custom wake phrases and trigger VS Code commands by voice. Audio capture is handled by decibri, a cross-platform Node.js microphone streaming library with prebuilt native binaries.

    SmartSub

    SmartSub is a local-first cross-platform desktop application for the complete subtitle production pipeline: audio/video transcription, subtitle translation, proofreading, and subtitle burning/muxing.

    It natively integrates sherpa-onnx to power three offline ASR engines — FunASR, Qwen3-ASR, and FireRedASR — delivering high-accuracy Chinese and multilingual speech recognition entirely on-device, with no file uploads required.

    Fono

    Talk to your computer. Fono is an open-source (GPL-3.0), complete voice-AI stack (speech-to-text, text-to-speech, a local LLM, wake word, speaker ID) in one small binary for the Linux, macOS, and Windows desktop. Press a key and speak: it types into any app, answers as a voice assistant, or drives a coding agent.

    It uses sherpa-onnx's Supertonic TTS models for text-to-speech, with the Supertonic text frontend ported to Rust. See also #3750, which fixes dropped diacritics in the Supertonic frontend for Romanian, Czech, Polish, Hungarian, Turkish, Vietnamese, and other non-English Latin-script languages.

    Domia

    Domia is an open-source local AI companion you talk to, living entirely on hardware you own. Each Domia is its own character, with a distinct personality, voice, emotional state, and memory of you and its place — and it acts, not just talks: skills connect it to the real world over MCP, Home Assistant included. Domia nodes form a local peer-to-peer mesh that shares speech and reasoning compute, while room satellites bring each companion into the spaces where you live without giving up its identity. No cloud, no accounts, and no data leaving your network.

    Domia runs sherpa-onnx in-process for keyword spotting, voice activity detection, streaming and offline speech recognition, and text-to-speech. Speech engines and models are selected through per-companion configuration, making it easy to match supported sherpa-onnx models to different hardware.

    qwen-audio-agent

    A realtime full-duplex voice runtime for AI coding agents (Claude Code, Codex, OpenCode, and other ACP agents). It uses sherpa-onnx keyword spotting with the 3M-parameter zh-en transducer model to implement a local voice wake word: the app sleeps on idle but keeps the microphone open, and the wake phrase brings the session back with no cloud calls.

    Suflyor

    An Android teleprompter that scrolls the script as you read it aloud. It runs two streaming Zipformer models on the phone (Russian small-ru-vosk int8 and English en-2023-06-26) and boosts the words of the script as hotwords with modified beam search. A floating window shows the text over the camera app while it records video.

    Loud Caption

    An open-source Flutter app for Android that turns nearby speech into large, high-contrast captions for people with hearing loss. SenseVoice ASR and Silero VAD run fully on-device through sherpa-onnx's Dart API; translation is optional and also local. No account, analytics, or cloud audio.

    Recly

    An open-source recorder for Galaxy Watch, Android, Apple Watch, iPhone, macOS, and Windows. Recordings go to the user's own Google Drive; there is no Recly server. The Android phone app (which also transcribes Galaxy Watch recordings) and the Windows app use sherpa-onnx for on-device transcription: Silero VAD splits each recording into speech segments, and sherpa-onnx's INT8 export of Qwen3-ASR 0.6B transcribes them. The ~1 GB model is downloaded on demand.

    China Unicom 中国联通安卓 App

    The Android App (version >= 12.14.1 (2026.07.28)) uses sherpa-onnx Kotlin API for keyword spotting.

    China Life 中国人寿 App

    The Android App (version >= 3.5.46 (2026.03.23)) uses sherpa-onnx Kotlin API for keyword spotting.

    deepseek-harness

    It uses the JavaScript npm package sherpa-onnx-node with SenseVoice for local speech recognition.

    akou

    An open-source (GPL-3.0-or-later) call and meeting recorder for macOS that transcribes on the machine. It records the microphone and the call audio on two channels, shows a live transcript, and lets a terminal agent such as Claude Code or Codex follow and question the call over MCP. The same core runs as a self-hosted transcription server in Docker.

    It runs sherpa-onnx-node in a Bun Worker: silero-vad splits each channel into speech segments, Parakeet TDT 0.6B v3 (OfflineRecognizer) or streaming Nemotron (OnlineRecognizer) writes the live transcript, and TitaNet embeddings (SpeakerEmbeddingExtractor) help tell the speakers on the call apart. After the call, Parakeet is the fast engine of the final pass and one of the engines of the fused pass. The larger Qwen3-ASR model runs outside sherpa-onnx, on llama-server.

    bot-reborn

    A $4 toy robot driven by an old Android phone, all from one web page in Chrome. sherpa-onnx runs in the page as WebAssembly: Silero VAD decides when someone is actually talking, so only real speech is sent to STT, and an optional keyword spotter (sherpa-onnx-kws-zipformer-zh-en-3M-2025-12-20) handles the wake word. Both run from one combined build, with the VAD symbols exported from the KWS WebAssembly target.

    Voltip

    An open-source (AGPL-3.0) push-to-talk dictation app for Windows, macOS, Linux and Android: hold a hotkey, speak, and the text is inserted at the cursor in the focused app. The desktop app uses the sherpa-onnx Rust crate for on-device recognition with SenseVoice and Paraformer, a streaming Zipformer for the live preview while the user speaks, and Silero VAD to trim silence and to split recordings of up to two hours at pauses. Models are downloaded on demand.

    Outmake

    A free Mac app (Apple silicon, macOS 26) for running open models on the Mac itself. Its Kokoro, Kitten, Piper and Supertonic voices run on sherpa-onnx: the app downloads the osx-arm64 shared build and speaks through sherpa-onnx-offline-tts, so those voices need no Python.