HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
rhasspy
piper
C++2023–2025
rhasspy / piper · Archived

piper

A fast, local neural text to speech system

30Distinct people
47Mentions
1Explicit recommenders
11.3KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

A fast, local neural text to speech system

GitHub

Where it is used

No documented product use was verified in the last source check.

What people are saying

Coqui is great, but another fantastic tool for TTS I recommend checking out is Piper. The voice quality is great, it's extremely lightweight, and it's fast enough to generate…

phyce used a recommendation phrase. One indexed comment matches. This is a phrase match, not a verdict.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 1:49:46 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by month47 dated mentions

Observed mentions: 2023-02-01 14:32:11 UTC to 2025-06-25 22:16:19 UTC.

0510152023-02-01 00:00:00 UTC to 2023-03-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 commentsFeb 20232023-03-01 00:00:00 UTC to 2023-04-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2023-04-01 00:00:00 UTC to 2023-05-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2023-05-01 00:00:00 UTC to 2023-06-01 00:00:00 UTC (exclusive): 4 mentions; 1 submissions, 3 comments2023-06-01 00:00:00 UTC to 2023-07-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2023-07-01 00:00:00 UTC to 2023-08-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2023-08-01 00:00:00 UTC to 2023-09-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2023-09-01 00:00:00 UTC to 2023-10-01 00:00:00 UTC (exclusive): 2 mentions; 2 submissions, 0 comments2023-10-01 00:00:00 UTC to 2023-11-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2023-11-01 00:00:00 UTC to 2023-12-01 00:00:00 UTC (exclusive): 2 mentions; 1 submissions, 1 comments2023-12-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2024-01-01 00:00:00 UTC to 2024-02-01 00:00:00 UTC (exclusive): 3 mentions; 0 submissions, 3 comments2024-02-01 00:00:00 UTC to 2024-03-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2024-03-01 00:00:00 UTC to 2024-04-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2024-04-01 00:00:00 UTC to 2024-05-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 commentsApr 20242024-05-01 00:00:00 UTC to 2024-06-01 00:00:00 UTC (exclusive): 14 mentions; 0 submissions, 14 comments2024-06-01 00:00:00 UTC to 2024-07-01 00:00:00 UTC (exclusive): 2 mentions; 1 submissions, 1 comments2024-07-01 00:00:00 UTC to 2024-08-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2024-08-01 00:00:00 UTC to 2024-09-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2024-09-01 00:00:00 UTC to 2024-10-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2024-10-01 00:00:00 UTC to 2024-11-01 00:00:00 UTC (exclusive): 3 mentions; 0 submissions, 3 comments2024-11-01 00:00:00 UTC to 2024-12-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2024-12-01 00:00:00 UTC to 2025-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-01-01 00:00:00 UTC to 2025-02-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2025-02-01 00:00:00 UTC to 2025-03-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2025-03-01 00:00:00 UTC to 2025-04-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-04-01 00:00:00 UTC to 2025-05-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2025-05-01 00:00:00 UTC to 2025-06-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-06-01 00:00:00 UTC to 2025-07-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 commentsJun 2025

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
Feb 20232023-02-01 00:00:00 UTC2023-03-01 00:00:00 UTC202
Mar 20232023-03-01 00:00:00 UTC2023-04-01 00:00:00 UTC000
Apr 20232023-04-01 00:00:00 UTC2023-05-01 00:00:00 UTC202
May 20232023-05-01 00:00:00 UTC2023-06-01 00:00:00 UTC413
Jun 20232023-06-01 00:00:00 UTC2023-07-01 00:00:00 UTC101
Jul 20232023-07-01 00:00:00 UTC2023-08-01 00:00:00 UTC000
Aug 20232023-08-01 00:00:00 UTC2023-09-01 00:00:00 UTC000
Sep 20232023-09-01 00:00:00 UTC2023-10-01 00:00:00 UTC220
Oct 20232023-10-01 00:00:00 UTC2023-11-01 00:00:00 UTC101
Nov 20232023-11-01 00:00:00 UTC2023-12-01 00:00:00 UTC211
Dec 20232023-12-01 00:00:00 UTC2024-01-01 00:00:00 UTC202
Jan 20242024-01-01 00:00:00 UTC2024-02-01 00:00:00 UTC303
Feb 20242024-02-01 00:00:00 UTC2024-03-01 00:00:00 UTC000
Mar 20242024-03-01 00:00:00 UTC2024-04-01 00:00:00 UTC000
Apr 20242024-04-01 00:00:00 UTC2024-05-01 00:00:00 UTC000
May 20242024-05-01 00:00:00 UTC2024-06-01 00:00:00 UTC14014
Jun 20242024-06-01 00:00:00 UTC2024-07-01 00:00:00 UTC211
Jul 20242024-07-01 00:00:00 UTC2024-08-01 00:00:00 UTC101
Aug 20242024-08-01 00:00:00 UTC2024-09-01 00:00:00 UTC101
Sep 20242024-09-01 00:00:00 UTC2024-10-01 00:00:00 UTC000
Oct 20242024-10-01 00:00:00 UTC2024-11-01 00:00:00 UTC303
Nov 20242024-11-01 00:00:00 UTC2024-12-01 00:00:00 UTC101
Dec 20242024-12-01 00:00:00 UTC2025-01-01 00:00:00 UTC000
Jan 20252025-01-01 00:00:00 UTC2025-02-01 00:00:00 UTC202
Feb 20252025-02-01 00:00:00 UTC2025-03-01 00:00:00 UTC202
Mar 20252025-03-01 00:00:00 UTC2025-04-01 00:00:00 UTC000
Apr 20252025-04-01 00:00:00 UTC2025-05-01 00:00:00 UTC101
May 20252025-05-01 00:00:00 UTC2025-06-01 00:00:00 UTC000
Jun 20252025-06-01 00:00:00 UTC2025-07-01 00:00:00 UTC101

What Hacker News says

47 sources
Best CPU TTS that can run on something like a raspberry pi is Piper. It can do real time synthesis on a raspberry pi and on a real computer it runs several times faster with negligible performance cost. I use it for 'reading' ebooks when my eyes get tired. The quality is roughly on par with where Mac OS's TTS was ~10 years ago (the last time I used it.) You can tell it's TTS, but it's good enough that you can become accustomed to it fairly easily. https://github.com/rhasspy/piper
In DeepSpeech Is Discontinued (2020)
A while back I built a Text-To-Speech API for a start-up idea I had for a podcasting app. I've since dropped it and want to share the core API with people so that they don't need to rely on paid APIs from big companies. It has a number of voices built in. It is a step below premium elevenlabs but still pretty high quality. Runs on my local 8 core AMD Ryzen 4000 series computer at around 10 seconds of audio per second of run-time. A selection of voices I liked are included but you can browse the Piper TTS library for more models. The API creates WAV files and sends them directly to an AWS S3 bucket. I have engineered it so that it can take an unlimited input length and allow the insertion of pauses with line skips, unlike the original version of piper. It runs fast on CPU but can also run on GPU. Piper models are ONNX format. Hope you guys
Read the rest
like it. I'm hoping to get to making some nicer documentation soon. Piper TTS engine: https://github.com/rhasspy/piper Piper TTS voices: https://rhasspy.github.io/piper-samples/
In Open-source CPU self-hosted Piper TTS API with file management for S3
Fantastic work. My dream would be to use this for a browser audiobook generator for epubs. I made a cli audiobook generator with Piper [0] that got some traction and I wanted to port it to the browser, but there were too many issues. [1] Is there source anywhere? Seems the assets/ folder is bundled js. In my opinion, there's a ton of opportunity for private, progressive web apps with this while WebGPU is still relatively newly implemented. Would love to collaborate in some way if others are also interested in this [0] https://github.com/C-Loftus/QuickPiperAudiobook/ [1] https://github.com/rhasspy/piper/issues/352
In Kokoro WebGPU: Real-time text-to-speech 100% locally in the browser
Listening to the piper demos [1] and comparing to coqui [2], I'd say coqui sounds better to me, but I'd love to hear others' opinions. Looks like Piper's latest commits were 3 months ago [3] while Coqui's were 8 months ago [4], so they both seem similar in recency. In terms of ease of use though, especially with this project, personally Piper seems way less overwhelming. [1] https://rhasspy.github.io/piper-samples/ [2] https://huggingface.co/spaces/coqui/xtts [3] https://github.com/rhasspy/piper [4] https://github.com/coqui-ai/TTS
In Show HN: Offline audiobook from any format with one CLI command
Thank you! Wouldn't a website interface then make it competing with and thus inferior to solutions like those from 11elevenlabs? I am not opposed to creating a SaaS offering, but I feel I do not have the economies of scale nor proprietary models a large company has. Let me know if I am wrong! Maybe I will one day do something as a separate project on the browser with WebGPU. With regards to adding languages, first check if support already exists [0]. Then there are a few tutorials that might be relevant [1] [2] [3]. Once you have the onnx model you can just put it in the QuickPiperAudiobook model directory and specify it via the cli args. [0] https://rhasspy.github.io/piper-samples/ [1] https://github.com/rhasspy/piper/issues/51 [2] https://github.com/rhasspy/piper/blob/master/TRAINING.md [3] https://www.youtube.com/watch?v=b_we_jma220
In Show HN: Offline audiobook from any format with one CLI command
dv35z·Jun 18, 2024Submission

Ask HN: How to run Piper text-to-speech on a Mac (using Docker)?

Hello HN - My goal is to have a high-quality open-source text-to-speech engine running on my Mac. Research has led me to evaluate Piper TTS (https://github.com/rhasspy/piper) - the voices sound good, and it can run on a RaspberryPi. There seems to be a blocker in getting it to run directly on a Mac (this person explains why: https://www.youtube.com/watch?v=hQe861JElXc). So, I've been trying to get Piper to run in a Docker container on my Mac. I've spent all evening trying to get this to work, and haven't succeeded. I can't seem to get the right incantation of Docker files & compose.yml to get it running. Who's been able to get Piper running locally in a Docker container, and can you share guidance? Here are my working notes for Piper & Docker: https://jonathan.rogivue.net/notes/piper-text-to-speech/ Thank you!
1 points · Open discussion
This is so great--both in terms of the project & the write-up. Thanks for sharing your work! :) A "quick" dump of some thoughts it provoked: (1) Really like the "meaning-nonsense continuum" concept--and that neither extreme is explicitly labelled in the image immediately following where the term is introduced. :) (And, yes, "Gravity learns about regret." is indeed kind of beautiful.) (Aside: Adding alt text to the generated images would be beneficial both for copy/pasting & accessibility reasons. :) ) (2) This statement made me smile: "If you don’t enjoy reading and contemplating these sentences like this, we are simply very different people." Because while I very much fall into the category of "enjoy reading and contemplating these sentences" I can also imagine people who definitely don't. :D (3) Part of the reason for (2) was because I'
Read the rest
d already encountered a couple of the "don't work" examples where my immediate thought was "wait, how about in this situation though?". e.g. "Aligning with compass." Which then got me thinking about stylistic, metaphor or time-period related aspects of grammar, e.g. pirate treasure map instructions written in cryptic sentence fragments. (4) Which leads into the whole "procedurally generated diagrams/documents" aspect of the project that I also think is particularly cool. It immediately got me thinking of being in a game and walking into an inventor character's lab or a magician's library and finding all manner of technical or arcane drawings generated for either environment or game mechanic purposes (e.g. in a detective/mystery game like "Shadows of Doubt"). Then again, since I was a kid I've always had an interest in browsing technical component and, err, office stationery catalogues, so maybe it's just me. :D It also made me think back to "Interminal" an entry to the 2020 ProcJam procedural generation game jam, which generated an airport terminal including duty-free stores with procedurally generated perfumes (including "name, visual identity and smell"): https://nothke.itch.io/interminal (5) The "physicalization" aspect of the project to render it in a tangible form is also cool--particularly because (at least to me but maybe also to all those vinyl-owning kids with no turntable :D ) a physical form seems to the amplify the "meaningfulness" of a message... The underlying "digitalized cursive handwriting" project was also of interest--though I only skimmed its write-up in an attempt to avoid yet another rabbit hole. :) The handwriting system seemed like it might also be amenable to animated use--which then made me think, "Wait! I've seen something about that recently...", had no idea what, but then some background retrieval process just produced the answer as I was writing, it was Noclip's recent "The Making of Pentiment" documentary: https://www.youtube.com/embed/ffIdgOBYwbc (6) With regard to the technical execution/implementation side of things: I've observed that a project's need for text generation often raises a question of what implementation approach to use, in terms of a DIY vs pre-existing solution. One issue which affects text generation specifically is "general solutions" often seem to tend toward specialization over time (e.g. "text generation for interactive fiction", "text generation for branching narrative-driven games", tools such as Yarn Spinner[0] & Ink[1]), which ends up making the solutions less suitable for simpler/different use cases & increases difficulty of the learning curve. This was something I ran into during a small sub-project[2] last year where the text generation was somewhat "incidental" to overall project goal. I started out with a "quick DIY" solution but still ended up spending enough time on that aspect that I started to wonder if I'd be better not entirely re-inventing the wheel. Around this time I ran into the "Blur Markup Language"[3][4][5] project which has the tag line "write text that changes" and--while I haven't yet used it--seems like it might be a promising "mid-level abstraction" solution for text generation, so thought I'd mention it as a potential option for others with text generation needs. (7) In terms of other helpful text generation related resources, I've found various "word lists" to be of use, so thought I'd mention this "weasel words" list as a starting point: https://github.com/words/weasels/blob/main/data.txt#L14 (The repo README also links to other word lists under the same org including word categories such as "buzzwords", "filler", "hedges" & words listed in order of associated positive/negative sentiment.) Thanks again for sharing your work & look forward to seeing where your projects go in future, should you share more in future. :) ---- footnotes ---- [0] https://github.com/YarnSpinnerTool/YarnSpinner [1] https://github.com/inkle/ink [2] I wanted to generate "scripted dialogue" samples[2a] to demonstrate the 900+ individual Text-To-Speech speaker voices in the Piper TTS[2b] LibriTTS voice model[2c], in a form that is: useful for evaluating the voices; not incredibly tedious to listen to; and, makes it possible to identify which speaker you are currently hearing. [2a] Subset of resulting generated[2d] speech output can be heard in the second example here: https://rancidbacon.gitlab.io/piper-tts-demos/ [2b] https://github.com/rhasspy/piper [2c] https://huggingface.co/rhasspy/piper-voices/blob/main/en/en_... [2d] Text generation script: https://gitlab.com/RancidBacon/larynx-dialogue/-/blob/featur... [3] https://bml-lang.org [4] BML intro/overview: https://bml-lang.org/docs/guide/language-basics/ [5] Online BML editor with syntax cheat sheet: https://bml-lang.org/sandbox/
In Meaningful Nonsense: How I generate sentences

Showing the 15 most recent of 47 sources. Enable JavaScript to search and browse every indexed mention.

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.