Unable to load model
my model is not added i am getting Error: vosk-model-small-en-us-0.15/uuid and i am download zip from https://alphacephei.com/vosk/models how can i fix this issue
Hi @ap9086013 Some questions: Are you using Expo? If so, are you building natively or through EAS?
I have the same problem I use cli
add this on your android/build.gradle, also make sure your models folder start with "model", for example, "model-en", "model-fr".
tasks.register('genUUID') {
doLast {
def searchDir = rootDir.toPath()
fileTree(dir: "$searchDir/app/src/main/assets", include: ['model*']).visit { fileDetails ->
if (fileDetails.directory) {
def outDir = fileDetails.file
def outFile = new File(outDir, "uuid")
outDir.mkdirs()
if (!outFile.exists()) {
outFile.text = UUID.randomUUID().toString()
println("UUID already exists: ${outDir.name}")
} else {
println("UUID created: ${outDir.name}")
}
}
}
}
}
gradle.projectsEvaluated {
if (project(":app").tasks.findByName("preBuild")) {
project(":app").preBuild.dependsOn(tasks.named("genUUID"))
}
}
So your build.gradle should look like this:
buildscript {
ext {
buildToolsVersion = findProperty('android.buildToolsVersion') ?: '34.0.0'
minSdkVersion = Integer.parseInt(findProperty('android.minSdkVersion') ?: '23')
compileSdkVersion = Integer.parseInt(findProperty('android.compileSdkVersion') ?: '34')
targetSdkVersion = Integer.parseInt(findProperty('android.targetSdkVersion') ?: '34')
kotlinVersion = findProperty('android.kotlinVersion') ?: '1.9.23'
supportLibVersion = "28.0.0"
ndkVersion = "26.1.10909125"
}
repositories {
google()
mavenCentral()
}
dependencies {
classpath('com.android.tools.build:gradle')
classpath('com.facebook.react:react-native-gradle-plugin')
classpath('org.jetbrains.kotlin:kotlin-gradle-plugin')
classpath 'com.google.gms:google-services:4.4.2'
}
}
apply plugin: "com.facebook.react.rootproject"
allprojects {
repositories {
maven {
// All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
url(new File(['node', '--print', "require.resolve('react-native/package.json')"].execute(null, rootDir).text.trim(), '../android'))
}
maven {
// Android JSC is installed from npm
url(new File(['node', '--print', "require.resolve('jsc-android/package.json', { paths: [require.resolve('react-native/package.json')] })"].execute(null, rootDir).text.trim(), '../dist'))
}
google()
mavenCentral()
maven { url 'https://www.jitpack.io' }
}
}
tasks.register('genUUID') {
doLast {
def searchDir = rootDir.toPath()
fileTree(dir: "$searchDir/app/src/main/assets", include: ['model*']).visit { fileDetails ->
if (fileDetails.directory) {
def outDir = fileDetails.file
def outFile = new File(outDir, "uuid")
outDir.mkdirs()
if (!outFile.exists()) {
outFile.text = UUID.randomUUID().toString()
println("UUID created: ${outDir.name}")
} else {
println("UUID already exists: ${outDir.name}")
}
}
}
}
}
gradle.projectsEvaluated {
if (project(":app").tasks.findByName("preBuild")) {
project(":app").preBuild.dependsOn(tasks.named("genUUID"))
}
}
Thank you, renaming vosk-model-small-en-us-0.15 to model-small-en-us-0.15 helped me