alphacep / vosk-api

Offline speech recognition API for Android, iOS, Raspberry Pi and servers with Python, Java, C# and Node
Apache License 2.0
7.35k stars 1.04k forks source link

Sigsegv on loading the model [java and kotlin jvm] #1557

Open rebokdev opened 2 months ago

rebokdev commented 2 months ago

Hello, i have created a basic compose multiplatform desktop app and i have a LaunchedEffect(Unit) { ... } (launched effect just launches the code as a coroutine when the UI is ready) in it which loads the vosk model by creating an instance of Model providing the path

but when i run my code the jvm sigsegv's if i put vosk model loading outside of the compose code the same thing happens only when i remove all compose stuff then it doesn't sigsegv

from what i checked the problems could be related to mem menagement for ex. in every error log i see free space=1009k where i have much much more free space

i useed visualvm and i got: Size: 220,200,960 B

Used: 99,295,008 B

Max: 4,148,166,656 B

I tested it with the polish model and the minimum in size english model

hs_err_pid10904.log

nshmyrev commented 2 months ago

Hard to guess, you can first check if demo example work for you then add your code gradually.

rebokdev commented 2 months ago

It works if I don't initialize compose

rebokdev commented 2 months ago

maybe it conflicts with coroutines? *as a solution, i'm initializing vosk before compose and then i can use vosk without any problems