Show HN: FnScribe – Open-source, offline dictation for macOS

20 points
1/21/1970
2 days ago
by modagent

Comments


djx22

You may want to look into different models that are more accurate and maybe an AEC layer to remove background noise. Or at the very least a RNN de-noiser on the mic channel. Also, you may want to stream audio to the model instead of holding it all in memory and transcribe at the very end as that can potentially allow you to take the app much further than it is now.

I see Claude implemented a very crude upsampling/downsampling algorithm, which is what LLMs usually do when prompted to handle such a problem. But I would suggest restraining the model from implementing DSP processing on their own and instead use battle tested libraries. You can use rubato's FFT Resampler.

Audio processing is genuinely a hard engineering problem, LLMs usually don't get it right. If you decide to get deep into it, the knowledge you'll get is very rewarding.

a day ago

roni2k1b

Are you running the Moonshine model via ONNX/CoreML or native ggml/mlx bindings? how is the first token latency and memory footprint compared against Whisper small.en on Apple Silicon

11 hours ago

zackify

https://voxtype.io/

https://tryvoiceink.com/

There's so many of these, at this point I've seen 10 clones make the front page each time as if there never existed local only options before.

Also whisper is pretty outdated vs parakeet

a day ago

modagent

Thanks! Actually starting to move over to a moonshine model. The parakeet models start at ~0.6b params, which adds a lot of startup overhead. Also yeah definitely a ton of them out there. They’re fun to build! Glad to see many other people take it upon themselves to build little local, private utilities.

a day ago

djx22

It's because vibe coded apps have flooded the internet. This one is no exception. The feedback loop is now real: LLMs train from github on their own produced slop which they feed into the apps people build and publish on github to show off their "skills". In 2 years from now LLMs will become dumber and dumber as the rate of quality code vs. slop will be greatly imbalanced so, naturally, the more slop you have the more probable is that the LLM will use it for its answers. The death of software engineering is real.

a day ago

roni2k1b

That model collapse argument assumes pre-training teams are just scraping raw web garbage without curation.

11 hours ago

modagent

I’ve been a software dev for 15 years. Def not trying to show off my skills This is just a little side-project. I have no plans to monetize it. Totally - much of this is vibecoded. It’s been fun building and customizing this for myself rather than paying wisprflow, and thought other people might find it useful

a day ago

djx22

Sorry about that, didn't mean to attack the person behind it. But anyone can build such an app within a day by prompting Claude.

I think what I was more alluding to was the engineering value such a project brings. But once again, sorry about the messaging.

a day ago

ahaferburg

Are you aware of https://handy.computer/?

a day ago

vivzkestrel

- tonnes of these get released daily but I ll give you the guys on HN an awesome idea

- havent seen a single one on HN yet in the last year (i read HN twice a day like brushing my teeth)

- When I input my voice into the mic, I want an AI voice as output converting my words in real time in AI voice

- Use case: gaming, I have a terrible voice and dont want to do a voice over with that but at the same time I would love to if I could

- Know any github projects capable of pulling this off? maybe direct integration as an OBS plugin would make it godtier

a day ago

modagent

I built FnScribe because I'm pretty privacy concious and wanted a wispr flow-like app that kept everything local and on device. Currently works for Mac (sillicon and intel).

It's dead simple. Hold the fn key, speak and release. I use a quantized Wisper small.en model for transcription. It inserts the text into the active application. There's also a hands-free model for longer dictation. Audio transcription is kept in memory. There's no account or transcription history. Clipboard contents are restored after it inserts it. GPLv3, Mac-only, English only..still in alpha. Hope you enjoy it! Would love some feedback.

2 days ago

e40

Are you aware of Spokenly? It has a local mode that uses Apple’s built in services. I bind it to right command and use it frequently for hard to spell words.

a day ago

DzHiBaS

also handy.computer is awesome. local. choose your own model. multilingual. bind to any shortcut. works on arm silica

a day ago

modagent

Thanks! Will check it out

a day ago

itsdesmond

I see that it changes the menu bar icon to indicate status. How is this communicated when windows are full screen and the menu bar isn’t visible?

a day ago

diwash007

nice one.

2 days ago