From cf332122577e2ac857b9727b6c28a47ed91955dc Mon Sep 17 00:00:00 2001 From: thewh1teagle <61390950+thewh1teagle@users.noreply.github.com> Date: Sat, 18 Jan 2025 02:26:34 +0200 Subject: [PATCH] feat: update update sherpa onnx to v1.10.40 --- .gitignore | 3 +- crates/sherpa-rs-sys/checksum.txt | 113 +++++++++++++++--------------- crates/sherpa-rs-sys/dist.json | 2 +- crates/sherpa-rs-sys/sherpa-onnx | 2 +- crates/sherpa-rs/src/tts.rs | 43 +++++++++--- 5 files changed, 93 insertions(+), 70 deletions(-) diff --git a/.gitignore b/.gitignore index 6e92722..cf19ae2 100644 --- a/.gitignore +++ b/.gitignore @@ -24,4 +24,5 @@ vits-* sherpa-onnx-kws-* .tmp/ jniLibs/ -build/ \ No newline at end of file +build/ +kokoro-en-*/ diff --git a/crates/sherpa-rs-sys/checksum.txt b/crates/sherpa-rs-sys/checksum.txt index 869438e..af13efb 100644 --- a/crates/sherpa-rs-sys/checksum.txt +++ b/crates/sherpa-rs-sys/checksum.txt @@ -1,57 +1,56 @@ -sherpa-onnx-1.10.36.aar dee07a1ecb0885c992458d2283a178c7a72e85fc7f310e149b1c5eb432b1d40b -sherpa-onnx-non-streaming-asr-x64-v1.10.36.exe d0b418048411c7c7256b39e509f8c7da5363842b3d636cc0a462e7b1ef88403b -sherpa-onnx-non-streaming-asr-x86-v1.10.36.exe 1fc3519aa1c3e2e90a1482d8da92ed8949e6746737305a4ea19cad727961a93c -sherpa-onnx-non-streaming-tts-x64-v1.10.36.exe 6d28bbe3076170cbfab526144ddee2f58e13de1a9b67938a470ad5a22e3ba95d -sherpa-onnx-non-streaming-tts-x86-v1.10.36.exe 4c1332184976820850fa5740589592ba59755cf6001f9ae17798a4d80987f196 -sherpa-onnx-static-link-onnxruntime-1.10.36.aar a528f0fd03b20d6763e130b715acd9403f2ed09f0505face32233a88710a5177 -sherpa-onnx-streaming-asr-x64-v1.10.36.exe 26002febd26f6db60eeaca3e7602c9871028fc91ca10b8514678afe675d6813b -sherpa-onnx-streaming-asr-x86-v1.10.36.exe 680a85aafaff9491da71d003277b88f24b760daeea396953a576f1d4b823d46b -sherpa-onnx-v1.10.36-android-static-link-onnxruntime.tar.bz2 32e4d19064194eca105291f46900e12ecae11c455ad47bbe63a06ca92d87d917 -sherpa-onnx-v1.10.36-android.tar.bz2 358f4b9eeedfd8ac888962624167a61a9d94569fdd3a03e11cdad993e036869b -sherpa-onnx-v1.10.36-ios-no-tts.tar.bz2 3ea2a06889f0799a0fb3d4c0fe9f08c3eaca1576ec0cbbd1eff87d3881401353 -sherpa-onnx-v1.10.36-ios.tar.bz2 da82f2bb62beac3f3c01e31cd2437e0d2dbc1a69bfadcde4b12aa36e81064c8d -sherpa-onnx-v1.10.36-java11.jar d95785df563d422f4e8efc77952f8543b8a1b1e4ee7c183512d84cdad78defa8 -sherpa-onnx-v1.10.36-java16.jar 3d6ff52fae3c0a572d38781cccc1ca45e9a9342a6738ecd2e9c2676796d3c1d2 -sherpa-onnx-v1.10.36-java17.jar 4816ada283edbeea279492a3c798de8d3bd36c800eddba3cd561a6ecb79529d6 -sherpa-onnx-v1.10.36-java21.jar 8c6da77771b6d215220c7aacf48041c0b5b5848c5e2494cba20c1e87a7624e3e -sherpa-onnx-v1.10.36-java8.jar 02847a54ea4cd6728b6442838cbeea6ccda45f755cd4a4080916dbb0e35cb04b -sherpa-onnx-v1.10.36-linux-aarch64-jni.tar.bz2 327e0ebc96b701371d01ab0c3839eaff7cde55df5fcc74c6c675cab9911048a7 -sherpa-onnx-v1.10.36-linux-riscv64-shared.tar.bz2 082d8a390ac43855344c5c95504df32ca235ecc1e9edbe5c1ac57efd5efd7785 -sherpa-onnx-v1.10.36-linux-x64-gpu.tar.bz2 459daeef67b1a266ae5e65125e374d85af3bc50a1ea6ab935fbdc05c62ca4930 -sherpa-onnx-v1.10.36-linux-x64-jni.tar.bz2 7e4fdf59331097e469183de661cebc14f4efb322b6746e2a5cbe591c063619b5 -sherpa-onnx-v1.10.36-linux-x64-shared.tar.bz2 4f5d9707a3940a698bf8471fa3871cc419b55624c517e66066905a401e35cfe4 -sherpa-onnx-v1.10.36-linux-x64-static.tar.bz2 726c6b64b2d8df8cac16ee3219410caaf1bc08d96f5d964ae72198c600f706a6 -sherpa-onnx-v1.10.36-macos-xcframework-static.tar.bz2 19b4656d2026cf45499cc8fe7a1677746a27acad05aa3e983e49e165a5dadbc2 -sherpa-onnx-v1.10.36-ohos-arm64-v8a.tar.bz2 b1399139d83e9e48ee35f8395e22b1b4cedc4b7ee9681b57809b3af54db86884 -sherpa-onnx-v1.10.36-ohos-armeabi-v7a.tar.bz2 16a3ebb9ded3c9f886ef5388bbbb56ed356d00c7855477ee13fedb0be9d6b8ff -sherpa-onnx-v1.10.36-ohos-x86_64.tar.bz2 ee793dfc04c3699e63daeaf95515ff5132edc0fb8106c37cc07ec04ee2ba4b35 -sherpa-onnx-v1.10.36-osx-arm64-jni.tar.bz2 a687809073e75e1d3742ea903c4350b5888b7a8c6506b0fe96c9dcff7c39367d -sherpa-onnx-v1.10.36-osx-universal2-shared-no-tts.tar.bz2 7093edc3afad4a5ca8b4fbaac5fef53f6a19efcb377f832d4f2a6441c10dd6a3 -sherpa-onnx-v1.10.36-osx-universal2-shared.tar.bz2 95b9483e8cb8edc6d07ff5bc7b2445d45f9011b862cbd93b21e3aa9e1600f586 -sherpa-onnx-v1.10.36-osx-universal2-static-no-tts.tar.bz2 045f2ed5a0df254e81497595070294b8546d67c9642ddc1ebc0dda3680aaae11 -sherpa-onnx-v1.10.36-osx-universal2-static.tar.bz2 207981a2acb9a6db9a13700248d8a04311a7b513a787b9367d91729302113dd8 -sherpa-onnx-v1.10.36-osx-x86_64-jni.tar.bz2 ec05bc62c008ccd63bf4a61f478a64d232454e45e6a7a08569aac8be7139184a -sherpa-onnx-v1.10.36-win-x64-cuda.tar.bz2 042b96e1bf56de707bc86b41b51a8c2a0b14c743e58ad64b2a45e4d9a1112967 -sherpa-onnx-v1.10.36-win-x64-jni.tar.bz2 40935c923ed487f4d536528e1f6d4a7e2fbb636b7c1a46cb8a4b4487c7cbd7d5 -sherpa-onnx-v1.10.36-win-x64-shared.tar.bz2 2c69724631cfdc67ed581e31b2a7c3f59c54b39b5870a7604f237b23e97ece7a -sherpa-onnx-v1.10.36-win-x64-static.tar.bz2 1730fe558e8f10a6e580089eb9665ba7df96bce2498c5b676acdfa01acb2bdb6 -sherpa-onnx-v1.10.36.jar 8c6da77771b6d215220c7aacf48041c0b5b5848c5e2494cba20c1e87a7624e3e -sherpa-onnx-wasm-simd-1.10.36-vad-asr-en-moonshine_tiny.tar.bz2 0c229f68612ae2df913c416445a32fe5224999b86ded8bbdc383d809d3e537cc -sherpa-onnx-wasm-simd-1.10.36-vad-asr-en-whisper_tiny.tar.bz2 213b96947de943394ae5b98769a54e1bc4a5b65e1350a8b4933f16836ddde3cc -sherpa-onnx-wasm-simd-1.10.36-vad-asr-en-zipformer_gigaspeech.tar.bz2 ea67368887567773bea0bf8ba03d59a1182d4b68bdfba017791916ec0cf19e0c -sherpa-onnx-wasm-simd-1.10.36-vad-asr-ja-zipformer_reazonspeech.tar.bz2 a2ed3be6ae2a211863bdbbc5882cc35ad91e5414fe980059df95209673fada00 -sherpa-onnx-wasm-simd-1.10.36-vad-asr-th-zipformer_gigaspeech2.tar.bz2 30e1ed1e09df1ea409b0763fd654e8c0aa69690bb1dcbed06ec6a28c0b446f47 -sherpa-onnx-wasm-simd-1.10.36-vad-asr-zh-telespeech.tar.bz2 c117c15bf1cabd2018fac41e8d0cc7db348f9cf7e2f5dfd89fe26d16b817d2b8 -sherpa-onnx-wasm-simd-1.10.36-vad-asr-zh-zipformer_wenetspeech.tar.bz2 d729e7853b9b0a06f71145b2f145a9f9a1e8213fa878d34421e7259be6dcf7f8 -sherpa-onnx-wasm-simd-1.10.36-vad-asr-zh_en-paraformer_large.tar.bz2 29c9884f6be1fc36d4c648ae0dc2ae30069196c489347c7c0c2a0d73a1537c6a -sherpa-onnx-wasm-simd-1.10.36-vad-asr-zh_en-paraformer_small.tar.bz2 67a9a82f509c646245f9bc0616b552f160c9ec8f39163f9ee352b8c6f28072d4 -sherpa-onnx-wasm-simd-1.10.36-vad-asr-zh_en_ja_ko_cantonese-sense_voice_small.tar.bz2 4553874a830ec8f4042a8ec06e48e7cedde99799507495854f965d22000abf56 -sherpa-onnx-wasm-simd-v1.10.36-de-tts.tar.bz2 2685e8b7431f706f5d8695eae1fb072a77cd042b88da449ad4b9802af3556604 -sherpa-onnx-wasm-simd-v1.10.36-en-asr-zipformer.tar.bz2 73f0e9c3c2df19230cf3226978aae39b5232b5363b806ba2588d7cde033fedaf -sherpa-onnx-wasm-simd-v1.10.36-en-tts.tar.bz2 e960fadb29f95b2b944bf649d7b7ac31da50487d90ceb607393a8642f6ac0580 -sherpa-onnx-wasm-simd-v1.10.36-speaker-diarization.tar.bz2 f9a80bec431378a7ab3fe2705e4edb799697d15a60d1a457d7c24a67b6fcd134 -sherpa-onnx-wasm-simd-v1.10.36-vad.tar.bz2 4bc3ec8d5e10a117b6f34ed1f1805bc2aaa7468cd6f54d1f035e8d39d669c016 -sherpa-onnx-wasm-simd-v1.10.36-zh-cantonese-en-asr-paraformer.tar.bz2 553e785082ae54a33cd97689b3eda458c559b08084df003fc078984fa5886050 -sherpa-onnx-wasm-simd-v1.10.36-zh-en-asr-paraformer.tar.bz2 01888806c7baaf7d6793b92cc8a7e65f694095c3d261051376dd3be8094b04e4 -sherpa-onnx-wasm-simd-v1.10.36-zh-en-asr-zipformer.tar.bz2 c5d3f38c89d80971c3f76a63d08b9802a67c9c2ce65f60f52a9f3db0b707d476 -sherpa_onnx-v1.10.36.har c3ea01929e3bb476fd811e368db5d3c0ca200789b16492e5f391acaf93d933cc +sherpa-onnx-1.10.40.aar abb553b8c8c3c903e772f5c051a1cd0f482b30775b89441d5009f8dc5493306c +sherpa-onnx-non-streaming-asr-x64-v1.10.40.exe a90e8773eaa0a8a7ccede64127a210a3137c92c603f60bb97438c201f44ce0f4 +sherpa-onnx-non-streaming-asr-x86-v1.10.40.exe 7a40d37d748ba496ab23ede4be2d96ea349a619cac0b833681470f1f6b5fc393 +sherpa-onnx-non-streaming-tts-x64-v1.10.40.exe cdb2cc6a03e71f9681bbb3e2912d2f8144b0523ef62ef11fde8240f94bc11f7f +sherpa-onnx-non-streaming-tts-x86-v1.10.40.exe bdc4c8a13a8b07f9cd6630b7c342028d97402a6d9ced658821eb77b5106c4121 +sherpa-onnx-static-link-onnxruntime-1.10.40.aar a98b2b47d88ccd872cbbf5bc74d689856e88ccddabcd6d76ff508582b6239bb8 +sherpa-onnx-streaming-asr-x64-v1.10.40.exe 41ed87cfcc77bc5136dc5deba27cc69338fb22d7a155e2bbb1bddd89417cfdda +sherpa-onnx-streaming-asr-x86-v1.10.40.exe 54ff887aba77d6a0aab31458f28d8f6836bb1d4610c613ae407756115b4efdea +sherpa-onnx-v1.10.40-android-static-link-onnxruntime.tar.bz2 40dc15e71faa387ff6219c8fc2b9690f7a061ed57945c9f1a33b1314046fb6b0 +sherpa-onnx-v1.10.40-android.tar.bz2 1e8a45fea03abc829a7394c81f4e7b93f5415c23afd0110317cf207fa3662cc2 +sherpa-onnx-v1.10.40-ios-no-tts.tar.bz2 7e806c9bff7807fc3c09c674fb9fe63bbd997fdc56b1c19b75c65d0c81d19133 +sherpa-onnx-v1.10.40-ios.tar.bz2 d74ee06cee5df43ab9f2d994e7a8175b1d8d5c35ffaee635286e21d294a0fcca +sherpa-onnx-v1.10.40-java11.jar 2ab8e6f80fe8a6fba4af99e769404bf3b7c13cebb2ac48854223ce2a28da97b9 +sherpa-onnx-v1.10.40-java16.jar 39cbe26c31638896f7d8856716a30e915f07c6e8a9ad368f090b54c13f6cea25 +sherpa-onnx-v1.10.40-java17.jar 4d49e8281f48bbfb5e033a8a96b73199ed31299df32c21491e8fd2f2dad509f5 +sherpa-onnx-v1.10.40-java21.jar 1ef7674150dfca913bc735219ed1f0469bd88df20de782f197049ec72ea6baea +sherpa-onnx-v1.10.40-java8.jar 3fc1f862b15dcaaa31d491c52bd9b959ef9efcf58aecc685029cb0d5caa175cf +sherpa-onnx-v1.10.40-linux-aarch64-jni.tar.bz2 1cff3bc8bebcfc7ca36c4756423c206fe9fcb9e7d895286278e1b24b70b48bb6 +sherpa-onnx-v1.10.40-linux-riscv64-shared.tar.bz2 56cdef9ec6698e31133b23ed96fb2c605c0324e1a303a5a68151557e7580baad +sherpa-onnx-v1.10.40-linux-x64-gpu.tar.bz2 7c62fed47571c8ca028a15aea44c4044cc27c118d5a177710eb81e7c295b6604 +sherpa-onnx-v1.10.40-linux-x64-jni.tar.bz2 09418fca2e89b628751e00e969a0c1e608e3e742598b623dbee9e6b9f103c6e0 +sherpa-onnx-v1.10.40-linux-x64-shared.tar.bz2 0869723acce6b5679c72470f29339d4e71983899d13fdcf66ddeaa18a86d9f95 +sherpa-onnx-v1.10.40-linux-x64-static.tar.bz2 3f3f29c193e553fd1b05d1955a97275b53e8f237df472d651ba7a913b6d2ab4e +sherpa-onnx-v1.10.40-macos-xcframework-static.tar.bz2 692965fe19495bfd8bbf6b3e8ba1d31566500617dad5638eedc699095683741a +sherpa-onnx-v1.10.40-ohos-arm64-v8a.tar.bz2 285b89542f2c7c11e7624208cf72bd4a57455536cbd47160c47a2cdabcd65ff6 +sherpa-onnx-v1.10.40-ohos-armeabi-v7a.tar.bz2 061b8016adb9448f115c5eda15f28fbb0dd79b0e7aa0823ea1fcdf9fa7a19084 +sherpa-onnx-v1.10.40-ohos-x86_64.tar.bz2 428aaf1547aec3f714871ff69f148c7423749f35bb975f13a7417eb1b69647d2 +sherpa-onnx-v1.10.40-osx-arm64-jni.tar.bz2 b3c2660753fedbdcd86fbdfb04cd9e9096ab9f7c51d70c254d6a06dd337c9dc9 +sherpa-onnx-v1.10.40-osx-universal2-shared-no-tts.tar.bz2 0d60a5386358a96c71ed79390e5e1059717ecdd96b9a37bbf3a8e46bdeb9448d +sherpa-onnx-v1.10.40-osx-universal2-shared.tar.bz2 d260e6a967ea5011867273a5825ec7dd59d8cbac7a17012143d4a15e42426623 +sherpa-onnx-v1.10.40-osx-universal2-static-no-tts.tar.bz2 2e1a29847d98698d084b58d1044333d750530b9767cbfdcb2e2c36611ac8cfca +sherpa-onnx-v1.10.40-osx-universal2-static.tar.bz2 bae985ccc4aedc31436eb68df1d254f05c4e81701af3470aaf9fc91071c07467 +sherpa-onnx-v1.10.40-osx-x86_64-jni.tar.bz2 d2ff8e2edc9b371ddb41fa0236f8cfa36268e1ee96382e2bee4bd2e4dd7f7284 +sherpa-onnx-v1.10.40-win-x64-cuda.tar.bz2 a0870a32aaf702b70f7a40e1ef2d2471a3bb07dbd952d6fe84af6e2b0f1dc8df +sherpa-onnx-v1.10.40-win-x64-jni.tar.bz2 ee02c396ed8aaa90dea0f448f98adcc76d4cce5ecd5f676539a9aa39ef5b18f2 +sherpa-onnx-v1.10.40-win-x64-shared.tar.bz2 d6a6340aa5300da440423ff746cc62b69f400226479962fbfaeee12194ae734f +sherpa-onnx-v1.10.40-win-x64-static.tar.bz2 c503a0c9c9d3f40a06231eb8865a56450834b7e084c99d8dd6b70feea77b1fde +sherpa-onnx-v1.10.40.jar 1ef7674150dfca913bc735219ed1f0469bd88df20de782f197049ec72ea6baea +sherpa-onnx-wasm-simd-1.10.40-vad-asr-en-moonshine_tiny.tar.bz2 c8882c3bcca56ad47d97e7021d20a5d85f2c70e0aad7324b81d6ec16bfe7a5df +sherpa-onnx-wasm-simd-1.10.40-vad-asr-en-whisper_tiny.tar.bz2 005917cd1d12e6c4a66a1b65c525657ffe074b4be77f059bff07e68bcd60e072 +sherpa-onnx-wasm-simd-1.10.40-vad-asr-en-zipformer_gigaspeech.tar.bz2 5fe83d13b3dabb5b0018ddd273ee8749f9adc71c4c201cfaf8a6b198e0d29d2a +sherpa-onnx-wasm-simd-1.10.40-vad-asr-ja-zipformer_reazonspeech.tar.bz2 a9f2eacbad423aa9e5c8f433a2429bd185ae774621b264632be808eb52155600 +sherpa-onnx-wasm-simd-1.10.40-vad-asr-th-zipformer_gigaspeech2.tar.bz2 63fa1d8f6d831966b48c5cb8735f919e9456d85e3dbc2b5abf7dda405581f31a +sherpa-onnx-wasm-simd-1.10.40-vad-asr-zh-telespeech.tar.bz2 6e347078a2acd31bb2ad1d3d5ad1302d2db36e95545928b0aef732016bd27ef2 +sherpa-onnx-wasm-simd-1.10.40-vad-asr-zh_en-paraformer_large.tar.bz2 a94e00c577678f23c6858315f6980cf56f946a7cbace0529206b8943f70ebae3 +sherpa-onnx-wasm-simd-1.10.40-vad-asr-zh_en-paraformer_small.tar.bz2 8821aed4e70edbb26566bcb69f10cf0b989a7ca0f9750cbc99644824c85d458c +sherpa-onnx-wasm-simd-1.10.40-vad-asr-zh_en_ja_ko_cantonese-sense_voice_small.tar.bz2 8771adb1ff1e15b867bc4c51b5c9ba51d8c5344cd36e3c36b16396032b1af328 +sherpa-onnx-wasm-simd-v1.10.40-de-tts.tar.bz2 27b2eef1dd499b5b4bd43a61f18cdb89043fc0c54858c28fcf25f445f74b8e1e +sherpa-onnx-wasm-simd-v1.10.40-en-asr-zipformer.tar.bz2 aff6b40c749840015206619e79f840330e21a5bafb1166e02a076116a6f16390 +sherpa-onnx-wasm-simd-v1.10.40-en-tts.tar.bz2 38c3f194a4be6e0d4999799791ce305cab5e4464c34c9fc56aa1e64fdb7fedcf +sherpa-onnx-wasm-simd-v1.10.40-speaker-diarization.tar.bz2 32119d9c7712e2d29aeeb72ce68d9c00dda74fa6fc59ea20b546b4b5001ca7c1 +sherpa-onnx-wasm-simd-v1.10.40-vad.tar.bz2 edad0b65ad14441564d8bf8c1fd3e02b84ff68a8a563913634c3f067640c1f43 +sherpa-onnx-wasm-simd-v1.10.40-zh-cantonese-en-asr-paraformer.tar.bz2 a3c042c17bb3850e7ed775400d9f9bb1a315603b22ef10e1a08d003229a93f37 +sherpa-onnx-wasm-simd-v1.10.40-zh-en-asr-paraformer.tar.bz2 e0ef617925e12e3a66f74060a85680b63de16d9c928b4a74b66b4e5edcc95559 +sherpa-onnx-wasm-simd-v1.10.40-zh-en-asr-zipformer.tar.bz2 93e6ba8cfb3bb729a27e8d76454583cc0b05b8a8bf2897415fbf557d5b6c48cb +sherpa_onnx-v1.10.40.har 0f66c6583ecfeec27559e42a359410cddaea17eac4b69f82b238909816efd060 diff --git a/crates/sherpa-rs-sys/dist.json b/crates/sherpa-rs-sys/dist.json index 3836ff0..a43c07c 100644 --- a/crates/sherpa-rs-sys/dist.json +++ b/crates/sherpa-rs-sys/dist.json @@ -1,5 +1,5 @@ { - "tag": "v1.10.36", + "tag": "v1.10.40", "url": "https://github.com/k2-fsa/sherpa-onnx/releases/download/{tag}/{archive}", "targets": { "x86_64-pc-windows-msvc": { diff --git a/crates/sherpa-rs-sys/sherpa-onnx b/crates/sherpa-rs-sys/sherpa-onnx index 30a17b9..2df43b3 160000 --- a/crates/sherpa-rs-sys/sherpa-onnx +++ b/crates/sherpa-rs-sys/sherpa-onnx @@ -1 +1 @@ -Subproject commit 30a17b96fa15821ec52e56282d0eb362dbebb39d +Subproject commit 2df43b378827ba36fd5d9f3ef88dc4117139e161 diff --git a/crates/sherpa-rs/src/tts.rs b/crates/sherpa-rs/src/tts.rs index de6e1f0..ac0f6ff 100644 --- a/crates/sherpa-rs/src/tts.rs +++ b/crates/sherpa-rs/src/tts.rs @@ -1,6 +1,8 @@ -use crate::{get_default_provider, utils::RawCStr}; -use eyre::{bail, Result}; -use hound::{WavSpec, WavWriter}; +use std::ptr::null; + +use crate::{ get_default_provider, utils::RawCStr }; +use eyre::{ bail, Result }; +use hound::{ WavSpec, WavWriter }; #[derive(Debug)] pub struct OfflineTtsConfig { @@ -55,7 +57,7 @@ impl Default for OfflineTtsConfig { #[derive(Debug)] pub struct OfflineTts { - pub(crate) tts: *mut sherpa_rs_sys::SherpaOnnxOfflineTts, + pub(crate) tts: *const sherpa_rs_sys::SherpaOnnxOfflineTts, } impl OfflineTts { @@ -74,6 +76,23 @@ impl OfflineTts { let tts_config = sherpa_rs_sys::SherpaOnnxOfflineTtsConfig { max_num_sentences: config.max_num_sentences, model: sherpa_rs_sys::SherpaOnnxOfflineTtsModelConfig { + kokoro: sherpa_rs_sys::SherpaOnnxOfflineTtsKokoroModelConfig { + model: null(), + voices: null(), + tokens: null(), + data_dir: null(), + length_scale: 0.0, + }, + matcha: sherpa_rs_sys::SherpaOnnxOfflineTtsMatchaModelConfig { + acoustic_model: null(), + vocoder: null(), + lexicon: null(), + tokens: null(), + data_dir: null(), + noise_scale: 0.0, + length_scale: 0.0, + dict_dir: null(), + }, vits: sherpa_rs_sys::SherpaOnnxOfflineTtsVitsModelConfig { data_dir: data_dir.as_ptr(), dict_dir: dict_dir.as_ptr(), @@ -99,24 +118,28 @@ impl OfflineTts { pub fn generate(&mut self, text: String, sid: i32, speed: f32) -> Result { unsafe { let text = RawCStr::new(&text); - let audio_ptr = - sherpa_rs_sys::SherpaOnnxOfflineTtsGenerate(self.tts, text.as_ptr(), sid, speed); + let audio_ptr = sherpa_rs_sys::SherpaOnnxOfflineTtsGenerate( + self.tts, + text.as_ptr(), + sid, + speed + ); if audio_ptr.is_null() { - bail!("audio is null") + bail!("audio is null"); } let audio = audio_ptr.read(); if audio.n.is_negative() { - bail!("no samples found") + bail!("no samples found"); } if audio.samples.is_null() { - bail!("audio samples are null") + bail!("audio samples are null"); } let samples: &[f32] = std::slice::from_raw_parts(audio.samples, audio.n as usize); let samples = samples.to_vec(); let sample_rate = audio.sample_rate; - let duration = samples.len() as i32 / sample_rate; + let duration = (samples.len() as i32) / sample_rate; // Free sherpa_rs_sys::SherpaOnnxDestroyOfflineTtsGeneratedAudio(audio_ptr);