AwesomeTTS / awesometts-anki-addon

AwesomeTTS text-to-speech add-on for Anki
GNU General Public License v3.0
484 stars 100 forks source link

Presets for Bulk TTS Field Selection #182

Closed kevinjfoley closed 3 years ago

kevinjfoley commented 3 years ago

For my workflow it would be helpful to be able to save presets for the field controls when using Awesome TTS from the card browser.

Some details on my workflow in case it's helpful:

I create notes for verbs, with a field for each conjugation (I, you, etc.). I have a script that creates these cards for me but I have to go in and generate the TTS with AwesomeTTS which can be quite tedious.

Having presets similar to the service presets would make this far easier.

luc-vocab commented 3 years ago

Thank you , this is useful, and I agree there should be more automation here. What is your expectation ? A single button press to generate all the audio ?

Another question: given you'll end up with multiple audio files, which one do you end up playing on your "back" card, all of them ?

kevinjfoley commented 3 years ago

Another question: given you'll end up with multiple audio files, which one do you end up playing on your "back" card, all of them ?

To clarify, all of the audio files should have their own field. For example the conjugation for I would be placed in the I Audio field, You in the You Audio field, etc

What is your expectation ? A single button press to generate all the audio ?

Good question. After some more thought I think there are two features that would be helpful here.

Field Presets

So the initial solution I was thinking, is a drop down for presets for the field settings that should be used. This would still require manual work but would greatly simplify that work. Something like this:

Screen Shot 2021-02-17 at 8 59 43 AM

Add Audio Presets

These would be at a higher level and would map to a card query, service options, and field options, like this:

{
    "add_I_audio": {
        # I field is populated but "I Audio" isn't
        "card_query": '"I Audio:" -I:',
        # These options could be based on presets
        "service_options": {...},
        "field_options": {"source": "I", "destination": "I Audio"},
    }
}

Then users could open a dialog and select which mappings they wish to run.

I can help flesh these ideas out some more if you'd you interesting in adding them. I'm also happy to try to help implement them but it will take me a bit to get up to speed with the code base (I tried putting together the "Fields Preset" feature and hit some walls)

luc-vocab commented 3 years ago

Thanks, this is very close to what I had in mind. And do you always do batch generation, or do you sometimes add audio from the Add Note screen ?

kevinjfoley commented 3 years ago

It's almost always via batch generation. The only time I do it by individual note is if I'm editing a card and change something that requires the audio to change as well.

luc-vocab commented 3 years ago

If you give me a few days, I should be able to show you a prototype with functionality extremely close to what you're looking for.

kevinjfoley commented 3 years ago

That sounds great! Let me know if there's anything I can help with / give input on. I'm also comfortable installing a development branch locally if you'd like feedback on the UX or anything like that as you're working on it.

luc-vocab commented 3 years ago

Check this out. This is not a capture from AwesomeTTS, but from my new addon, called Language Tools (https://ankiweb.net/shared/info/771677663). Essentially, it already provides the automation you are looking for (generate audio for several target / source fields in one shot). It is however a paid addon (you need to be a patreon subscriber). If this is something you're interested in, you can access the addon immediately by becoming a patreon subscriber.

I am planning on bringing these automation features to AwesomeTTS over the coming weeks / months, so if you prefer to stick with AwesomeTTS, the above is just a preview of what's to come.

https://user-images.githubusercontent.com/4581915/108869778-7945ec00-7632-11eb-983d-2f1ade3ada6c.mp4

luc-vocab commented 3 years ago

@kevinjfoley any comments ?

luc-vocab commented 3 years ago

Here's a video demonstrating the feature: https://www.youtube.com/watch?v=OrQTHFxSS0Q

kevinjfoley commented 3 years ago

Apologies for the delayed response. Unfortunately I've fallen behind in my use of Anki the past few weeks. I'm hoping to pick things up next weekend and will try to check out language tools and let you know.

luc-vocab commented 3 years ago

Please feel free to re-open after you have more feedback.