Earlier quoted context omitted.
I opened a couple of PRs to fix this situation: https://github.com/KittenML/KittenTTS/pull/21 https://github.com/KittenML/KittenTTS/pull/24 https://github.com/KittenML/KittenTTS/pull/25 If you have `uv` installed, you can try my merged ref that has all of these PRs (and #22, a fix for short generation being trimmed unnecessarily) with uvx --from git+https://github.com/akx/KittenTTS.git@pr-21-22-24-25 kittentts --outp…
Thanks for the quick intro into UV, it looks like docker layers for python I found the TTS a bit slow so I piped the output into ffplay with 1.2x speedup to make it sound a bit better uvx --from git+https://github.com/akx/KittenTTS.git@pr-21-22-24-25 kittentts --text "I serve 12 different beers at my restaurant for over 1000000 customers" --voice expr-voice-3-m --output - | ffplay -af "atempo=1.2" -f wav -
Show HN: Kitten TTS – 25MB CPU-Only, Open-Source TTS Model
261–270 of 383 posts
Re: Show HN: Kitten TTS – 25MB CPU-Only, Open-Source TTS Model
#262For instance, try adding `np.random.shuffle(ref_s[0])` after the line `ref_s = self.voices[voice]`...
EDIT: be careful with your system volume settings if you do this.
Re: Show HN: Kitten TTS – 25MB CPU-Only, Open-Source TTS Model
#263I'm curious why smallish TTS models have metallic voice quality. The pronunciation sounds about right - i thought it's the hard part. And the model does it well. But voice timbre should be simpler to fix? Like, a simple FIR might improve it?
Re: Show HN: Kitten TTS – 25MB CPU-Only, Open-Source TTS Model
#264Cool. While I think this is indeed impressive and has a specific use case (e.g. in the embedded sector), I'm not totally convinced that the quality is good enough to replace bigger models. With fish-speech[1] and f5-tts[2] there are at least 2 open source models pushing the quality limits of offline text-to-speech. I tested F5-TTS with an old NVidia 1660 (6GB VRAM) and it worked ok-ish, so running it on a little more…
Also, what are the two's VRAM requirents? This model has 15 million parameters which might run on low-power, sub-$100 computers with up-to-date software. Your hardware was an out-of-date 6GB GPU.
Re: Show HN: Kitten TTS – 25MB CPU-Only, Open-Source TTS Model
#265Re: Show HN: Kitten TTS – 25MB CPU-Only, Open-Source TTS Model
#266Earlier quoted context omitted.
The reddit video is awesome. I don't understand how people are calling it an OK model. Under 25MB and cpu only for this quality is amazing.
The people calling it "OK" probably tried it for themselves. Whatever model is being demoed in that video is not the same as the 25MB model they released.
Re: Show HN: Kitten TTS – 25MB CPU-Only, Open-Source TTS Model
#267Re: Show HN: Kitten TTS – 25MB CPU-Only, Open-Source TTS Model
#268Earlier quoted context omitted.
The FSF thinks it counts as a derivative work and you have to use the LGPL to allow linking. However, this has never actually been proven in court, and there's many good arguments that linking doesn't count as a derivative work. Old post by a lawyer someone else found (version 3 wouldn't affect this) [1] For me personally I don't really understand how, if dynamic linking was viral, using linux to run code isn't viral…
> For me personally I don't really understand how, if dynamic linking was viral, using linux to run code isn't viral. Surely at some level what linux does to run your code calls GPLed code. The Linux kernel has an explicit exception for userspace software: > NOTE! This copyright does not cover user programs that use kernel services by normal system calls
> The "System Libraries" of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A "Major Component", in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it.
> The "Corresponding Source" for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work.
Re: Show HN: Kitten TTS – 25MB CPU-Only, Open-Source TTS Model
#269Ubuntu 24, Razer Blade 16, Intel Core i9-14900HX
Performance Results:
Initial Latency: ~315ms for short text
Audio Generation Speed (seconds of audio per second of processing):
- Short text (12 chars): 3.35x realtime
- Medium text (100 chars): 5.34x realtime
- Long text (225 chars): 5.46x realtime
- Very Long text (306 chars): 5.50x realtime
Findings:
- Model loads in ~710ms
- Generates audio at ~5x realtime speed (excluding initial latency)
- Performance is consistent across different voices (4.63x - 5.28x realtime)Re: Show HN: Kitten TTS – 25MB CPU-Only, Open-Source TTS Model
#270The headline feature isn’t the 25 MB footprint alone. It’s that KittenTTS is Apache-2.0. That combo means you can embed a fully offline voice in Pi Zero-class hardware or even battery-powered toys without worrying about GPUs, cloud calls, or restrictive licenses. In one stroke it turns voice everywhere from a hardware/licensing problem into a packaging problem. Quality tweaks can come later; unlocking that deployment…
> It’s that KittenTTS is Apache-2.0 Have you seen the code[1] in the repo? It uses phonemizer[2] which is GPL-3.0 licensed. In its current state, it's effectively GPL licensed. [1]: https://github.com/KittenML/KittenTTS/blob/main/kittentts/on... [2]: https://github.com/bootphon/phonemizer Edit: It looks like I replied to an LLM generated comment.