Nice work

#1
by Aryanne - opened

thanks for sharing the apks, great workπŸ€—, I notice that on my phone Galaxy M52(Samsung), I selected the the app as the default tts, but it crashes the settings app and doesn't produce any speech outside the app itself.
updated: the app needs to be open(on the background to not crash the settings and generate audio, is there a way for you to improve that?

If it's not too much to ask, if possible can you organize with folders(versions, arch, language) the apks, it's hard to find my language

Please find the APKs at
https://k2-fsa.github.io/sherpa/onnx/tts/apk.html
and
https://k2-fsa.github.io/sherpa/onnx/tts/apk-engine.html


Could you describe which apk you are using and what is the default language of your phone?

Please give the exact file name of the apk.

Please find the APKs at
https://k2-fsa.github.io/sherpa/onnx/tts/apk.html
and
https://k2-fsa.github.io/sherpa/onnx/tts/apk-engine.html


Could you describe which apk you are using and what is the default language of your phone?

Please give the exact file name of the apk.

sherpa-onnx-1.9.7-arm64-v8a-pt-tts-engine-vits-piper-pt_BR-edresson-low.apk
but it's the same thing with the others(tts engine) I think(tested just around 6 apks with other languages too), my language is pt-br.

but it crashes the settings app and doesn't produce any speech outside the app itself.

Are you able to get logcat logs?

Also, are you able to run the English TTS apks with piper models?

but it crashes the settings app and doesn't produce any speech outside the app itself.

Are you able to get logcat logs?

Also, are you able to run the English TTS apks with piper models?

it runs fine
sherpa-onnx-1.9.7-arm64-v8a-en-tts-engine-vits-piper-en_US-libritts-high.apk
I enter the app, if I close it and go to settings to change the tts it crashes, but if I left it open(in the background) and go to settings it doesn't crash. Is it normal?
I'm not a root user, but I used a playstore app to show some logs:

01-04 23:20:18.425 15669 15669 I ViewRootImpl@283aa12[ActivityMain]: updateBlastSurfaceIfNeeded mBlastBufferQueue=null isSameSurfaceControl=false

01-04 23:20:18.426 15669 15669 I BLASTBufferQueue: new BLASTBufferQueue, mName= ViewRootImpl@283aa12[ActivityMain] mNativeObject= 0xb400006e0f8f8110 sc.mNativeObject= 0xb400006d9f96a640 caller= android.view.ViewRootImpl.updateBlastSurfaceIfNeeded:2909 android.view.ViewRootImpl.relayoutWindow:9847 android.view.ViewRootImpl.performTraversals:3884 android.view.ViewRootImpl.doTraversal:3116 android.view.ViewRootImpl$TraversalRunnable.run:10885 android.view.Choreographer$CallbackRecord.run:1301 android.view.Choreographer$CallbackRecord.run:1309 android.view.Choreographer.doCallbacks:923 android.view.Choreographer.doFrame:852 android.view.Choreographer$FrameDisplayEventReceiver.run:1283 

01-04 23:20:18.426 15669 15669 I BLASTBufferQueue: update, w= 1080 h= 2400 mName = ViewRootImpl@283aa12[ActivityMain] mNativeObject= 0xb400006e0f8f8110 sc.mNativeObject= 0xb400006d9f96a640 format= -1 caller= android.graphics.BLASTBufferQueue.<init>:84 android.view.ViewRootImpl.updateBlastSurfaceIfNeeded:2909 android.view.ViewRootImpl.relayoutWindow:9847 android.view.ViewRootImpl.performTraversals:3884 android.view.ViewRootImpl.doTraversal:3116 android.view.ViewRootImpl$TraversalRunnable.run:10885 

01-04 23:20:18.427 15669 15669 I ViewRootImpl@283aa12[ActivityMain]: Relayout returned: old=(0,0,1080,2400) new=(0,0,1080,2400) req=(1080,2400)0 dur=13 res=0x3 s={true 0xb400006e9f8f3b60} ch=true seqId=0

01-04 23:20:18.427 15669 15669 I ViewRootImpl@283aa12[ActivityMain]: mThreadedRenderer.initialize() mSurface={isValid=true 0xb400006e9f8f3b60} hwInitialized=true

01-04 23:20:18.427 15669 15722 I AdrenoGLES-0: QUALCOMM build                   : cac6e6f805, I5187d04b75

01-04 23:20:18.427 15669 15722 I AdrenoGLES-0: Build Date                       : 11/22/21

01-04 23:20:18.427 15669 15722 I AdrenoGLES-0: OpenGL ES Shader Compiler Version: EV031.35.01.10

01-04 23:20:18.427 15669 15722 I AdrenoGLES-0: Local Branch                     : 

01-04 23:20:18.427 15669 15722 I AdrenoGLES-0: Remote Branch                    : 

01-04 23:20:18.427 15669 15722 I AdrenoGLES-0: Remote Branch                    : 

01-04 23:20:18.427 15669 15722 I AdrenoGLES-0: Reconstruct Branch               : 

01-04 23:20:18.427 15669 15722 I AdrenoGLES-0: Build Config                     : S P 10.0.7 AArch64

01-04 23:20:18.428 15669 15722 I AdrenoGLES-0: Driver Path                      : /vendor/lib64/egl/libGLESv2_adreno.so

01-04 23:20:18.434 15669 15722 I AdrenoGLES-0: PFP: 0x016dc094, ME: 0x00000000

01-04 23:20:18.450 15669 15669 I ViewRootImpl@283aa12[ActivityMain]: reportNextDraw android.view.ViewRootImpl.performTraversals:4438 android.view.ViewRootImpl.doTraversal:3116 android.view.ViewRootImpl$TraversalRunnable.run:10885 android.view.Choreographer$CallbackRecord.run:1301 android.view.Choreographer$CallbackRecord.run:1309 

01-04 23:20:18.451 15669 15669 I ViewRootImpl@283aa12[ActivityMain]: Setup new sync id=1

01-04 23:20:18.451 15669 15669 I ViewRootImpl@283aa12[ActivityMain]: Setting syncFrameCallback

01-04 23:20:18.451 15669 15669 I ViewRootImpl@283aa12[ActivityMain]: registerCallbacksForSync syncBuffer=false

01-04 23:20:18.454 15669 15765 I ViewRootImpl@283aa12[ActivityMain]: Received frameDrawingCallback syncResult=0 frameNum=1.

01-04 23:20:18.454 15669 15765 I ViewRootImpl@283aa12[ActivityMain]: Setting up sync and frameCommitCallback

01-04 23:20:18.468 15669 15722 I BLASTBufferQueue: [ViewRootImpl@283aa12[ActivityMain]#4](f:0,a:0) onFrameAvailable the first frame is available

01-04 23:20:18.469 15669 15722 I ViewRootImpl@283aa12[ActivityMain]: Received frameCommittedCallback lastAttemptedDrawFrameNum=1 didProduceBuffer=true

01-04 23:20:18.469 15669 15669 I ViewRootImpl@283aa12[ActivityMain]: onSyncComplete

01-04 23:20:18.469 15669 15669 I ViewRootImpl@283aa12[ActivityMain]: setupSync seqId=0 mSyncId=1 fn=1 caller=android.view.ViewRootImpl$$ExternalSyntheticLambda11.accept:6 android.window.SurfaceSyncer.lambda$setupSync$1$android-window-SurfaceSyncer:128 android.window.SurfaceSyncer$$ExternalSyntheticLambda1.accept:8 android.window.SurfaceSyncer$SyncSet.checkIfSyncIsComplete:382 android.window.SurfaceSyncer$SyncSet.markSyncReady:359 android.window.SurfaceSyncer.markSyncReady:151 android.view.ViewRootImpl.performTraversals:4503 

01-04 23:20:18.469 15669 15669 I ViewRootImpl@283aa12[ActivityMain]: reportDrawFinished seqId=0 mSyncId=-1 fn=1 mSurfaceChangedTransaction=0xb400006dcf8d6750

01-04 23:20:18.492 15669 15669 I ViewRootImpl@283aa12[ActivityMain]: MSG_WINDOW_FOCUS_CHANGED 1 0

01-04 23:20:18.492 15669 15669 I ViewRootImpl@283aa12[ActivityMain]: mThreadedRenderer.initializeIfNeeded()#2 mSurface={isValid=true 0xb400006e9f8f3b60}

01-04 23:20:18.492 15669 15669 I InputMethodManager: startInputInner - mService.startInputOrWindowGainedFocus

but if I left it open(in the background) and go to settings it doesn't crash. Is it normal?

please leave it open then. One user has reported the same issue before.

I am not familiar with Android and don't know whether it is normal.

but if I left it open(in the background) and go to settings it doesn't crash. Is it normal?

please leave it open then. One user has reported the same issue before.

I am not familiar with Android and don't know whether it is normal.

idk if it uses the gpu, maybe is something gpu related, is there a way of running the app just in cpu? if it doesn't do that already, btw can you bring more pt-br voices? at the moment there aren't any female voices in portuguese brazilian

idk if it uses the gpu

I know that it is definitely not using GPU at present.

btw can you bring more pt-br voices? at the moment there aren't any female voices in portuguese Brazilian

The models are from piper, not trained by use. Sorry that I cannot provide more models. All models from piper have already been included.

idk if it uses the gpu

I know that it is definitely not using GPU at present.

btw can you bring more pt-br voices? at the moment there aren't any female voices in portuguese Brazilian

The models are from piper, not trained by use. Sorry that I cannot provide more models. All models from piper have already been included.

I made more logs(this time with the developer settings) where/how can I share it more safely directly to you?

Here is my email
csukuangfj@gmail.com

Thanks!

Here is my email
csukuangfj@gmail.com

Thanks!

sent

sorry for annoying you I installed sherpa-onnx-1.9.7-arm64-v8a-en-tts-engine-vits-piper-en_US-libritts-high.apk and shows speaker id 0->903 but it has only 3 options to choose, is that expected?

Aryanne changed discussion status to closed

sorry for annoying you I installed sherpa-onnx-1.9.7-arm64-v8a-en-tts-engine-vits-piper-en_US-libritts-high.apk and shows speaker id 0->903 but it has only 3 options to choose, is that expected?

Thanks for reporting. No, it is a bug.

sorry for annoying you I installed sherpa-onnx-1.9.7-arm64-v8a-en-tts-engine-vits-piper-en_US-libritts-high.apk and shows speaker id 0->903 but it has only 3 options to choose, is that expected?

Please redownload the apk, it should be fixed now.

I messed with the developer settings but couldn't make the bug disappear, I couldn't find anything useful but I have some guesses(I'm not a developer but I'm trying to help anyways), can it crash maybe because the sliders(speed and tone) doesn't do anything in the the settings? or the app is not being Initialized(be placed in the background or cache) properly when it enters the tts settings?
Screenshot_20240122_124638_Settings.png

Please redownload the apk, which has been updated.

Also, please don't kill the app when you access the tts settings.

Screenshot 2024-01-25 at 15.16.37.png

The sliders are not for the app, please click by following the arrow in the above figure

The sliders are not for the app, please click by following the arrow in the above figure

oh ok, I notice other thing on some places/apps when trying to select this tts engine, it appears empty, I think the apps try to list the languages of the tts engine but didn't find anything. On chrome that happens, with Google tts it lists all the languages but with this engine appears it appears empty. Isn't possible to implement to select the voices if available on there?
Using google tts as the main tts.

20240125_065200.jpg

And using this app as the main tts.

20240125_065138.jpg

I know that the app has only one language but it should appear there anyways to be selected. And I'm sorry if I am annoying you too much. πŸ˜… Is because I love your app.

Thanks for testing. I think the reason is that we have not overridden some methods so it is empty in the settings.

We will try adding them once we get more familiar with Android.

hi there's a new open source tts here just to let you know, idk if it can be converted to onnx

Sign up or log in to comment