HN user

C-Loftus

74 karma

https://github.com/C-Loftus/

Email: github@colton.place

Posts4
Comments29
View on HN

I am a part of the Talon community mentioned here, use Orca, have contributed to the Rust atspi bindings and feel like I know Linux accessibility quite well.

It is true to in Wayland you can write protocol extensions or custom compositors to get around these limitations. However, what many fail to realize is that the primary challenge in Linux accessibility is not just a technical problem as it is getting people to actually implement specs and care about it. Even with atspi itself, a standard that has existed for over a decade, major apps like Firefox often do not implement the atspi Collection interface. This is not a criticism but rather a practical statement that accessibility needs to be standardized and easy to implement for it to actually have any use. Orca works on Wayland but only in certain compositors. For assistive technology software developers, this pattern of supporting specific compositors is not feasible. It is important to understand that we need to support assistive tech generally. Not just ad hoc extensions for certain types of disabilities.

Wayland has no concept of global coordinates or global key bindings. The protocol itself is designed around atomicity which is a nice concept, but is fundamentally in conflict to the need of assistive technologies to control the entire state of the desktop globally. As such, atspi methods like get_accessible_at_point are impossible in Wayland.

I agree that X11 cannot be carried on forever, but with the current state of Wayland, the phasing out of X11 will have the effect of drastically harming the accessibility ecosystem. Accessibility is not a "nice to have", it is essential to the mission of community inclusion and wider goals of adopting desktop Linux in education and government.

Awesome work! Often times in the TTS space, human-similarity is given way too much emphasis at the expense of hurting user access. Frankly as long as a voice is clear and you listen to it for a while, the brain filters out most quirks you would perceive on the first pass. Hence why many blind folks still are perfectly fine using espeak-ng. The other properties like speed of generation and size make it worth it.

I've been using a custom AI audiobook generation program [0] with piper for quite a while now and am very excited to look at integrating kitten. Historically piper has been the only good option for a free CPU-only local model so I am super happy to see more competition in the space. Easy installation is a big deal, since piper historically has had issues with that. (Hence why I had to add auto installation support in [0])

[0] https://github.com/C-Loftus/QuickPiperAudiobook

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

Are there any communities of others online dealing with general eye strain? Or other blogs / videos that have helped others? I have had chronic eye pain for a while now and could really benefit from hearing what has helped others. I have not found doctors to be helpful

I have a pretty normal Dell office monitor but not sure if I would benefit from an upgrade. I have relatively normal overhead lighting and try to take breaks or use a screen reader as much as I can, but haven't had much luck reducing pain.

That appears to be a subscription service. Surely there must be something using piper or another offline TTS program that works for free?

Perhaps off topic, not sure, but does anyone have opinions on the easiest way to add bilingual TTS? I am trying to make Mandarin language learning decks and having free automated TTS would be very useful.

I've tried out AwesomeTTS but found it a bit too complicated. Just want to automatically add TTS with one click ideally.

Does this program allow linking the same file to different locations on MacOS vs Linux? I have a few config files like the vscode settings.json that end up in different paths but have the same content. (I see it allows for files that are OS specific but not clear if there is a way to keep them in sync if they are the same, but just need different paths)

I use stow at the moment and it is almost perfect but I don't believe it can do that without multiple symlinks or something messy. Didn't like home manager and other dotfiles solutions seemed too bloated for my case

There is so much market disruption potential for e-readers.

Every one has a pretty big tradeoff if you are looking to use the e-reader as a general study tool (i.e. using it with Anki for language learning)

- boox devices run Android 11, illegally violate the GPL, and have poor customer service

- meebook devices are too underpowered and also run Android 11

- Kindles are too restrictive and anti-consumer; also does not have an Android option

- Kobo is probably the best, but still no Android option

- PineNote or Linux options are too expensive and unstable

For what it is worth, I still listen to and love human-read audiobooks! However, it is particularly useful to have an AI option for books that are too niche for there to be an incentive for an individual to narrate them. Lots of academic and personal texts fall into those categories.

Thank you for the feedback and I'm sorry you had those issues. I cannot replicate at the moment on Ubuntu 24.04 but will check back on this. I presume it is something simple going wrong with how I am getting the home directory in golang and checking if the path exists.

Your feedback on ebook-convert is very valid. I can take a look at breaking it up. (Granted I am not sure how much of a lift that would be)

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

Yeah that is totally fair. In my experience, I feel that after a while your brain starts to tune out some of the inflection differences. Piper models are honestly pretty solid as well. I think in general, AI audiobook solutions like mine are better for non-fiction compared to fiction. Or at least that is what I read the most of

Yes I do have prebuilt rolling releases. Since they are categorized as draft releases, GitHub hides them by default, but they are there and should work fine: https://github.com/C-Loftus/QuickPiperAudiobook/releases/

Examples of Piper generally can be found at https://rhasspy.github.io/piper-samples/ , and I added my program can be found at https://github.com/C-Loftus/QuickPiperAudiobook/tree/master/...

I added this info in the readme for you and anyone else that could benefit from it.

Yes I mainly read non-fiction and I think your point is valid. That being said, I do listen to a fair amount of books that include interviews or travel writing with multiple characters and it still works well for me.

I personally love using Piper to make audiobooks offline. I made a CLI wrapper over it and it works great for me [0] Honestly surprised more people aren't using similar offline tools. I have listened to dozens of audiobooks in the past year through this.

There is a pitfall in thinking that the most natural voice is the most important metric (i.e. many blind users still prefer espeak). Piper has a great balance of natural voice, offline convenience/privacy, and interpretability at high speeds. Still have not seen anything better as an overall audiobook solution.

https://github.com/C-Loftus/QuickPiperAudiobook

I am glad this is mentioned since it is so helpful for screen reader use. It is very handy when using a screen reader to instantly jump to the body of the text with the most semantically relevant info. (So being able to skip certain headers, unnecessary info, navigation bars, etc.) Yes, you can also do this simply by jumping between landmarks but having the ability to instantly jump to the main content reduces friction for non-visual use or helps less-tech literate users who just want to get the main content read.

I think this survey is useful for looking at other preferences of screen reader users (even if it is just one survey) https://webaim.org/projects/screenreadersurvey/

Nice work. I am very involved in the Talon community and it is cool to see other projects tackling voice interaction from different perspectives.

I develop a very similar natural language voice interaction tool using the OpenAI API and Talon as the engine[0]. (i.e you apply any voice command transformation with AI on any text, or use it alongside Cursorless for semantically targeting scopes in the AST) You can use my solution with offline LLM models too.

If you are interested in chatting, please reach out[1], as I am very interested and experienced in this space.

[0] https://github.com/c-loftus/talon-ai-tools

[1] https://colton.bio/contact/