Git Product home page Git Product logo

tts-util-app's People

Contributors

1976222027 avatar drmfinlay avatar poussinou avatar woheller69 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

tts-util-app's Issues

Feature request: rename output file

If I'm trying to save more than one long string of text in sequence, the latter will overwrite the previous.

It would be extremely useful to set those output names before execution starts so that multiple jobs can be queued, without waiting for generation, and processing of each, and renaming each manually.

A display issue

Dear developer!
In the process of using, I found a bug in layout / display. As shown in the figure, in the first page, the text in the red box is half blocked. This may be an adaptation problem. I suspect it is because display and font size are set to large (mainly due to display size).
Because of some problems with my eyesight, I often use the largest font and display.
297165ECE247F4EDC808C49B7E0633F7
App version is 2.0.2, my mobile phone is Google nexus 6, screen resolution setting is 1920* 1080, font size and display size are the largest ! ! !, Android system is 8.0.
The above is a description of the problem. The overall experience of the software is good. You can see that the design is very attentive. Thank you very much for the efforts of the developers all the time. I hope to receive a reply.
Thank you!
bug-ttsutil

No speech output using PicoTTS with the "system" language

Thank you @relan for reporting this bug in fdroiddata merge request 5900. I've pasted your report and steps below.

I stumbled upon the following issue initially. I have a tablet with AOSP 8.1. Pico TTS has a language setting set to system, which is none of the supported ones. When I was trying to speak some English text aloud, it didn't work. Steps to reproduce:

  1. Check the languages in the Pico TTS settings. Mine has only English, Spanish, Italian, German and French. Set to System.
  2. Set the system language to any but mentioned above.
  3. Start TTS Util and try to speak some text.
  4. Nothing is spoken, "Speech in progress" notification appears, "Stop speaking" button does nothing. Expected result: an error message saying that I should choose a supported language in the Pico TTS settings.

No TTS engine found despite engine(s) working with other apps

Device: OnePlus 8T (kebab)
OS: LineageOS 18.1, Android 11 with no GooglePlay Services installed

I installed version 4.0.0 via F-Droid. When I click the top right button to initialize, the message first says "initializing text-to-speech" and then "No text-to-speech engine available". Furthermore, when I navigate to the app settings and and click on TTS Engine (first item from the top) I get a dialogue box which says "Select the TTS engine." but doesn't show any items.

The problem is that I have installed both RHVoice and eSpeak. Both engines can be selected in the system settings and at least RHVoice is working inside osmAnd, Librera and FitoTrack. TTS Util seems to be the only app that displays this type of behavior.

insert a custom pause between phrases

I would be nice to add a setting:

  • add a custom pause between phrases (after . ! ? - — – ...)
  • add custom pauses between words

Could be really useful for some people.

Allow selecting the directory where wave files are saved

Selecting the directory where wave files are saved is not possible at the moment. This is a confusing limitation of the app. It was my intention from the start to include this, but I couldn't quite figure out how to bring up a UI for directory selection. I hope to add this in a future version of the app.

Read from URL

It would be great if I could paste an URL, then it downloads the resource and read it.

This app could register itself as an option to open URLs, opening directly into its "Read URL" mode.

Improvements when mime type is text/html or the extension is html:

  • Remove text inside <script> or <style>, remove all tags <[^>]*> and translate &abc; occurrences.
  • Build a simple navigation menu to read only some part or the page, like text below <H#> or inside <article>.

Crashes when Reading File

Hi Dane, congratulations on releasing version 2.0.

Unfortunately, I'm unable to have it 'Read from File'. Doesn't seem to matter which TXT file I choose, short or long, it crashes with the following;
https://imgur.com/a/mLVZCde
As my phone doesn't allow me to select the crash report text, I'm unable to upload it as plain text. If I find a way of extracting it, I'll include it.

I'm running 2.0 from the GitHub releases page, using a Mi 9T phone running Android 10.

Let me know if you need any further information.

Trouble with new versions of this app on the Play Store

As of the time of writing, Google requires that new app releases on their store target SDK level 30 or above, i.e. Android 11. See this article for more information.

The new Android Extension Library (AndroidX) seems to be required to target SDK level 30 for applications that use the support library. The "upgrade" to AndroidX is supposedly easy to do. Unfortunately, I have had quite a bit of trouble with it; moving to AndroidX breaks the application — hence the scare quotes. Since this requirement of Google's has held me back from releasing a new version of TTS Util, new releases on the Play Store will be, at least, staggered. The F-Droid store and the project's Releases page are where users should look for new versions.

If I manage to get AndroidX working, I will make a follow-up comment here.

Feature request: Dark mode

The dark mode if done can support settings like follow system, battery saver or choose a light, dark theme.

Target Android 13 or higher

Android 13 has been here for a while and Android 14 is already on the verge of release. Can you please target Android 13 or higher?

Utility crashes at the last moment when exporting a text file >~90kB

Hello, just what the title says. I tested it on a Samsung tablet as well as various AVD, it is 100% reproducible for a given file but I don't know if there's a limit on the file size or spoken length or what. For files above ~90-100kB, as soon as the text to speech conversion is 99% in the bar, the TTS Util app crashes and no file is saved.

tts-util-app is a keyboard that will be cool

hello Danesprite
I would like to have tts-util-app Function keyboard

Applied to language learning. Pronunciation correction
Learning a foreign language. Example Russian German I don't know how to speak, TTS taught me to speak
Text-to-Speech Always speak typed keys speak Phonetic letters are spoken when long pressing on keyboard keys and navigating by character.

example,
l only want to talk when you press keys on the keyboard, not to read the screen
https://play.google.com/store/apps/details?id=com.google.android.marvin.talkback

3.mp4

https://www.youtube.com/watch?v=YPBn6D6pf78&t=207s

1.MP4

l only want to talk when you press keys on the keyboard, not to read the screen

Getting crashed during app run in Android 6.0. (Details inside)

I saw this error just after downloading and running the project on an Android 6.0 device.

Did a little change before run - "distributionUrl=https://services.gradle.org/distributions/gradle-7.2-bin.zip" Also tried without changes

after this change, I got this error during the app run

2023-10-07 19:11:07.457 2589-2691 WorkSourceUtil com.google.android.gms E Could not find package: com.danefinlay.ttsutil
2023-10-07 19:11:07.599 2589-9292 FA-SVC com.google.android.gms E Error deleting application data. appId, error: com.danefinlay.ttsutil, android.database.sqlite.SQLiteException: no such table: trigger_uris (code 1): , while compiling: DELETE FROM trigger_uris WHERE app_id=?: bgrr.w(:com.google.android.gms@[email protected] (040400-570218080):100)
.
.
.
.
.
2023-10-07 19:11:53.933 10118-10198 JavaBinder com.danefinlay.ttsutil E *** Uncaught remote exception! (Exceptions are not yet supported across processes.)
java.lang.NoSuchMethodError: No super method onRangeStart(Ljava/lang/String;III)V in class Landroid/speech/tts/UtteranceProgressListener; or its super classes (declaration of 'android.speech.tts.UtteranceProgressListener' appears in /system/framework/framework.jar)
at com.danefinlay.ttsutil.TTSTask.onRangeStart(TTSTasks.kt:431)
at com.danefinlay.ttsutil.TTSTask.onStart(TTSTasks.kt:425)
at android.speech.tts.TextToSpeech$Connection$1.onStart(TextToSpeech.java:2106)
at android.speech.tts.ITextToSpeechCallback$Stub.onTransact(ITextToSpeechCallback.java:55)
at android.os.Binder.execTransact(Binder.java:458)
.
.
.
.
2023-10-07 19:11:53.938 10118-10198 JavaBinder com.danefinlay.ttsutil E Forcefully exiting
.

TTS keeps stopping

Whenever I try to open the TTS Util app it keeps stopping.

I'm running version 1.0 on a Xiaomi Pocophone F1 Beryllium with LineageOS 17.1-20200413-NIGHTLY-beryllium ( Android 10) with all expected permissions allowed.

Playback on input

Hi,
with activated "playback on input" option it plays immediatley each letter i entered. And after finishing the word with an additonal space it speaks the hole word.
I would prefer the behaviour of only speaking the hole word instead of each letter seperatley.
Best, Carl

Exclude from voicing

It would be nice if it were possible to exclude a voice from reading:

  • URL
  • Tags (#)
  • Emoji

I think that such options can be made in the settings.

Starting a TTS job externally through adb.

Would it be possible to pass text to TTS Util using adb and an intent? I'm just curious because I'm using Waydroid on Linux and I'm exploring options to pass text to Waydroid in various ways. There's not a lot that can easily be done because everything under Waydroid is owned by Root. Port forwarding could work but then I can't pause TTS playback. It would be nice to use ADB to pass text to tts util.

Thank you for your work, I get a lot of use and enjoyment out of it while I listen to novels all day and night lol

Feature request: Add the ability to generate wave files from input text

A user of TTS Util has been in touch with me and asked whether the app can be updated to generate wave files from input text. It shouldn't be too difficult to add this functionality, either through an additional button on the Read text screen or with an additional panel item and screen, e.g. Write text to file.

This functionality should be made to work for clipboard text too.

Character limit + text highlighting

It shows "There was an error during speech synthesis" toast message..... Does it have limit for characters ? which we can paste and [speak text]

Feature Request: Pause and resume

Hi there!,

First of all, I want to thank you for the time and effort you've spent to develop this program, as I find it really useful.

I think it would be great to have an option to pause and resume the current reading. For example, it could be implemented as a new button next to the stop icon which would pause the reading the first time you press it, and it would resume it with the next press. Or, you could transform the play button after pressing it into a pause icon, and once you've pressed the pause icon change it back to a play icon.

In a second iteration, maybe this could be implemented by syncing the current playback with a moving cursor in the text box, so it would move forward as it reads the text. With this feature it would be possible to go some words (or paragraphs) backward (or forward) just by pausing, replacing the cursor to a previous (or following) position, and then resuming the play.

Thank you very much.

Problem of system language

When the system language is English (United States), open the app, its text-to-speech language is always the same even after changing it in the setting.
When the system language is German (Germany), open the app, it doesn't work, saying “Neither the selected nor the system speaker languages are available”.
Other system languages may also have such problems.

The model is SM-A9200, engine is Google Text-to-speech Engine.

Feature: Add buttons for common phrases

Because of an accident that I had recently, I am unable to speak for the next few weeks and I started using this app as a tool for communication. I like that the app is simple and clutter free, but I would suggest one addition and that is to give the user the possibility to save common phrases like "Yes" or "I'm ok with that" and have multiple buttons below the EditText for quick access to those phrases.

Cheers :)

Feature Request: Option to output as mp3 or other compressed format instead of wave.

If the option to output to a compressed format such as mp3, aac etc was offered then folks could actually create audiobooks from ebooks in txt format such as from Project Gutenberg and then listen to them in the car. Vocalizer voices (UK Malcolm) has a great voice and works well with this app.

Will the recording include any alert sounds such as email etc that occur while the text is being read to wave?

Add simple markup language for changing the voice, voice pitch and voice rate

I have received via e-mail a request to add to this application the ability to change the current text-to-speech language via markup in the input text. For example:

[lang="pl"] Text in Polish.
Text in Polish - next line.
[lang="en"] Text in English.
Text in English - next line.

The preferred voice for the language, if set in the application or system settings, can be used. An index might also be specified. For example:

[voice="pl-1"] Text in Polish voice one.
[voice="pl-2"] Text in Polish voice two.

Setting the voice pitch and rate might be done in the same way:

[pitch=0.75] Text spoken with a pitch of 0.75.
[rate=2.0] Text spoken with a rate of 2.0.

These options could be combined:

[lang="pl", pitch=0.75, rate=2.0]

The application settings should be restored at the end of audio playback or file synthesis.

I would say this is related to issues #17 and possibly #18, since markup text would not be included in the output.

Text limit constraint and other thoughts

Hello Danesprite
I really like this app and thanks for creating it and make it open source!

I had personally tried to creat a similar (toy) app that does similar stuff. Instead of using the share action. I opted to use the text action (my use case is use the app to read long articles), so I can select all text (in reader mode in firefox) and then click on the read to have the article read to me.

Due to nature of most of the articles, I found the built-in text limit for android tts too low for most of them, therefore I used a splitter to split long text (by new line) to work around that limit.

Just wondering, would you accept pull request that

  1. work around the text to speech limit like I described above?
  2. add a text action that is similar to sharing but one less click? 😄

Allow selecting and processing multiple text files

The ability to select and process multiple text files would be a nice feature to have. I have in fact received requests concerning this feature via e-mail.

It is implemented now and will be released in the next version. Multiple text files may be read, or processed into wave files, in the order in which they are shown in the file manager.

Update: Android 13 screen freezes when tts begins reading [same as 12 - original post]

update 10-7-23 - phone just upgraded to A13 - thought maybe the issue might go away with 13 but not to be - 13 is doing exactly the same as 12 did (described below); fyi

nobody else having this problem?


Android 12 phone - screen freezing issue when tts begins to read:

  1. Open TTS Util app click read from clipboard the text loads normally
  2. Click start the tts reader begins normally then after 5-10 seconds the screen will freeze and become totally unresponsive
  3. If i do nothing the tts reader will continue to read normally to the end of the text while screen remains frozen
  4. If i try to click buttons or menu (no buttons will work, menu will not open) after a 10-15 second delay the app will pause and 'TTS Util isn't responding' popup (see attached image) will appear - pushing wait the app still does not respond again
  5. If not using the popup to close app then swiping up is the only way to close it after freezing (after swiping away to close - the app still continues reading - reopening the app only way to stop the reading if it did not get to end of text; app is reset upon opening)
  6. If i open the app but do not start the tts reader to read from screen everything else works normally - it will write to a wave file and record it normally - also will read from a file normally (as the text/file does not show on screen)
  7. Have cleared cache, data, uninstalled - reinstalled, etc. - tried different keyboard/clipboard - all no difference

That describes the issue clear as can. Hopefully it would be an easy fix.. but have to say seems surprising if this issue has not come up before - unless it's just me (?). Fantastic app though - use it everyday Thank you for it..

A12 moto edge+ 2022
Screenshot_20230920-111414

Text-to-speech settings in the app

Android's TextToSpeech API allows setting per-app settings including the preferred TTS engine, language/voice, voice pitch and speech rate (i.e. speed). If set, these settings will override the system settings.

Configurable settings for these things have been implemented in PR #5 and will be available in the next release soon.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.