HyperTTS: spirtual successor to AwesomeTTS

Hi,
I’ve been the maintainer of AwesomeTTS for around two years. I grew frustrated with the old codebase and the difficulty of maintaining it. Around 3 months ago, I set out to write AwesomeTTS 2.0, which I’m calling HyperTTS.

Technically here is what is changing compared to AwesomeTTS:

  • Voices from all services are shown together in the voice selection screen and can be filtered by language.
  • You can listen to a sound preview before loading audio and experiment with voices / settings.
  • Text replacement rules are much more transparent and you can try them in realtime.
  • You’ll be able to add audio with a single click from the editor once you’ve saved a preset.
  • It’ll be much easier to create new services, just create a single file which respects the conventions.
  • the codebase is close to 100% regression-tested with pytest-qt. This will allow me to fix bugs, develop new features with much more confidence. I am hoping this becomes a model in the add-on world. My previous addon, Language Tools, already had a similar level of regression test coverage.

I’m looking for people to test the addon. It currently only supports Google and Azure services, but of course more will be added. Anyone who reports bugs will be rewarded.
The addon can be found here: HyperTTS - Add speech to your flashcards (Beta) - AnkiWeb

9 Likes

Update:

  • Realtime audio (called “on the fly” in AwesomeTTS) is now supported. Adding the TTS tag is much easier than in AwesomeTTS and can be customized with ease.
  • Added Google Translate for those looking for a free option.
2 Likes

Added free service, Collins dictionary.

1 Like

Update: added AWS Polly (premium service) and Naver Papago (free service)

1 Like

Added premium TTS services: Forvo, Naver, VocalWare, Watson, CereProc, FPTAI

1 Like

Hello, I am new to HyperTTS.

It looks very different from the TTS addon I used before.

I have a question while using it, how do I delete TTS MP3?

In the old addon, it was easily deleted, but HyperTTS doesn’t seem to have that function.

If you know a solution, please let me know, thank you so much.

Please tell me in more detail what you are trying to accompling. Note I have a tutorial up here: HyperTTS: Getting Started

I want to know how to remove the voice added with hypertts.

Is there no remove audio function?

I can’t find that function even after reading the manual.

thanks for the quick reply

image

Does the function like the picture above do not exist in hyper tts?

That feature doesn’t exist in HyperTTS. It’s assumed that you want audio and the most it’ll allow you is replace the sound tag. I can add a “remove audio” feature but can you tell me more about your use case ? When do you want to remove audio and not add it back ?

I think the audio removal function is absolutely necessary.

If I accidentally add audio, I also need the audio removal feature and I need to be able to remove it when I no longer need the audio.

I think the audio removal function is a basic function.

It’s cumbersome, but could you please add that function?

I hope that the tts add-on you made becomes more complete.

When will this feature be updated? I hope it doesn’t take long.

I added this issue add a way to remove audio tags · Issue #40 · Language-Tools/anki-hyper-tts · GitHub , thanks for reporting !

Thank you. Bro. If this feature is added, I would appreciate it if you write a reply.

Have a good day.

Hi, I love the addon. However it’s very very clunky in the editor imo. Hence, I’ve changed it such that it fits in much better.

And when you hover over the HyperTTS buttons with the cursor this happens:

I think this fits so much better than the current design. Otherwise I really love everything about this addon. Thanks a lot!

If you like these changes, I’ll gladly share the CSS.

Hi, thanks for sharing this, do you mind elaborating on what’s displayed on your screenshot ? And what was your motivation for changing the CSS? is your editor toolbar too big ?

a video highlighting in what ways HyperTTS differs from AwesomeTTS.

I’d also love the ability to remove audio from cards. I mistakenly added audio to 1000 cards and it’s so much manual work to remove it one by one.

@LouisFWinter I think you might be able to do this with find-and-replace. Have you tried it?

That was the first thing that came to mind, but every sound file has a unique randomly generated ID, so sadly that doesn’t work.

Could you sort the cards by modification date, select the 1000 that you care about (they’re probably contiguous in this ordering) and then find and replace the audio from within only that range?

If the addon generates UUID filenames, they’re probably all the same length, so it would be easy to write a regex that only removes the ones generated by the TTS thing.