mirror of
https://github.com/k2-fsa/sherpa-onnx.git
synced 2026-11-10 13:04:05 +08:00
Add API to get onnxruntime version. (#3810)
This commit is contained in:
1 parent
0a03d8546f
commit
ccdaef8bba
57 files changed
+411
-2
No files matched your search
@@ -8,6 +8,9 @@ log() {
|
||||
echo -e "$(date '+%Y-%m-%d %H:%M:%S') (${fname}:${BASH_LINENO[0]}:${FUNCNAME[1]}) $*"
|
||||
}
|
||||
|
||||
log "test version"
|
||||
./build/bin/version-c-api
|
||||
|
||||
echo "SLID_EXE is $SLID_EXE"
|
||||
echo "SID_EXE is $SID_EXE"
|
||||
echo "AT_EXE is $AT_EXE"
|
||||
|
||||
@@ -4,6 +4,11 @@ set -ex
|
||||
|
||||
cd dart-api-examples
|
||||
|
||||
echo '----------Version----------'
|
||||
pushd version
|
||||
./run.sh
|
||||
popd
|
||||
|
||||
pushd non-streaming-asr
|
||||
|
||||
echo '----------Cohere Transcribe----------'
|
||||
|
||||
@@ -8,6 +8,9 @@ log() {
|
||||
echo -e "$(date '+%Y-%m-%d %H:%M:%S') (${fname}:${BASH_LINENO[0]}:${FUNCNAME[1]}) $*"
|
||||
}
|
||||
|
||||
log "test version"
|
||||
python3 ./python-api-examples/version-test.py
|
||||
|
||||
log "test Cohere Transcribe"
|
||||
|
||||
curl -SL -O https://github.com/k2-fsa/sherpa-onnx/releases/download/asr-models/sherpa-onnx-cohere-transcribe-14-lang-int8-2026-04-01.tar.bz2
|
||||
|
||||
@@ -92,6 +92,19 @@ jobs:
|
||||
echo "LD_LIBRARY_PATH=$PWD/build/install/lib:$LD_LIBRARY_PATH" >> $GITHUB_ENV
|
||||
echo "DYLD_LIBRARY_PATH=$PWD/build/install/lib:$DYLD_LIBRARY_PATH" >> $GITHUB_ENV
|
||||
|
||||
- name: Test version
|
||||
shell: bash
|
||||
run: |
|
||||
name=version-c-api
|
||||
gcc -o $name ./c-api-examples/$name.c \
|
||||
-I ./build/install/include \
|
||||
-L ./build/install/lib/ \
|
||||
-l sherpa-onnx-c-api \
|
||||
-l onnxruntime
|
||||
|
||||
ls -lh $name
|
||||
./$name
|
||||
|
||||
- name: Test Cohere Transcribe
|
||||
shell: bash
|
||||
run: |
|
||||
|
||||
@@ -107,6 +107,20 @@ jobs:
|
||||
echo "LD_LIBRARY_PATH=$PWD/build/install/lib:$LD_LIBRARY_PATH" >> $GITHUB_ENV
|
||||
echo "DYLD_LIBRARY_PATH=$PWD/build/install/lib:$DYLD_LIBRARY_PATH" >> $GITHUB_ENV
|
||||
|
||||
- name: Test version
|
||||
shell: bash
|
||||
run: |
|
||||
name=version-cxx-api
|
||||
g++ -std=c++17 -o $name ./cxx-api-examples/$name.cc \
|
||||
-I ./build/install/include \
|
||||
-L ./build/install/lib/ \
|
||||
-l sherpa-onnx-cxx-api \
|
||||
-l sherpa-onnx-c-api \
|
||||
-l onnxruntime
|
||||
|
||||
ls -lh $name
|
||||
./$name
|
||||
|
||||
- name: Test Cohere Transcribe
|
||||
shell: bash
|
||||
run: |
|
||||
|
||||
@@ -118,6 +118,7 @@ jobs:
|
||||
cp -v install/lib/*.dll ../pascal-api-examples/tts
|
||||
cp -v install/lib/*.dll ../pascal-api-examples/vad
|
||||
cp -v install/lib/*.dll ../pascal-api-examples/vad-with-non-streaming-asr
|
||||
cp -v install/lib/*.dll ../pascal-api-examples/version
|
||||
|
||||
cp -v ../sherpa-onnx/pascal-api/*.pas ../pascal-api-examples/non-streaming-asr
|
||||
cp -v ../sherpa-onnx/pascal-api/*.pas ../pascal-api-examples/read-wav
|
||||
@@ -130,8 +131,18 @@ jobs:
|
||||
cp -v ../sherpa-onnx/pascal-api/*.pas ../pascal-api-examples/tts
|
||||
cp -v ../sherpa-onnx/pascal-api/*.pas ../pascal-api-examples/vad
|
||||
cp -v ../sherpa-onnx/pascal-api/*.pas ../pascal-api-examples/vad-with-non-streaming-asr
|
||||
cp -v ../sherpa-onnx/pascal-api/*.pas ../pascal-api-examples/version
|
||||
fi
|
||||
|
||||
- name: Run Pascal version test
|
||||
shell: bash
|
||||
run: |
|
||||
cd ./pascal-api-examples
|
||||
|
||||
pushd version
|
||||
./run.sh
|
||||
popd
|
||||
|
||||
- name: Run Pascal test (Cohere Transcribe)
|
||||
shell: bash
|
||||
run: |
|
||||
|
||||
@@ -132,6 +132,7 @@ jobs:
|
||||
cp scripts/dart/streaming-speech-enhancement-gtcrn-pubspec.yaml dart-api-examples/streaming-speech-enhancement-gtcrn/pubspec.yaml
|
||||
cp scripts/dart/streaming-speech-enhancement-dpdfnet-pubspec.yaml dart-api-examples/streaming-speech-enhancement-dpdfnet/pubspec.yaml
|
||||
cp scripts/dart/slid-pubspec.yaml dart-api-examples/spoken-language-identification/pubspec.yaml
|
||||
cp scripts/dart/version-pubspec.yaml dart-api-examples/version/pubspec.yaml
|
||||
|
||||
cp scripts/dart/sherpa-onnx-pubspec.yaml flutter/sherpa_onnx/pubspec.yaml
|
||||
|
||||
|
||||
@@ -127,6 +127,7 @@ jobs:
|
||||
cp -v ../scripts/go/_internal/lib/x86_64-pc-windows-gnu/*.dll ../scripts/go/_internal/zero-shot-pocket-tts
|
||||
cp -v ../scripts/go/_internal/lib/x86_64-pc-windows-gnu/*.dll ../scripts/go/_internal/source-separation
|
||||
cp -v ../scripts/go/_internal/lib/x86_64-pc-windows-gnu/*.dll ../scripts/go/_internal/supertonic-tts
|
||||
cp -v ../scripts/go/_internal/lib/x86_64-pc-windows-gnu/*.dll ../scripts/go/_internal/version
|
||||
|
||||
cp -v ../scripts/go/_internal/lib/x86_64-pc-windows-gnu/*.dll $upload_dir
|
||||
else
|
||||
@@ -155,6 +156,18 @@ jobs:
|
||||
name: ${{ matrix.os }}-libs
|
||||
path: to-upload/
|
||||
|
||||
- name: Test version
|
||||
shell: bash
|
||||
run: |
|
||||
cd scripts/go/_internal/version
|
||||
ls -lh
|
||||
go mod tidy
|
||||
cat go.mod
|
||||
go build
|
||||
ls -lh
|
||||
|
||||
./run.sh
|
||||
|
||||
- name: Test source separation (Spleeter & UVR)
|
||||
shell: bash
|
||||
run: |
|
||||
|
||||
@@ -1,6 +1,9 @@
|
||||
include(cargs)
|
||||
|
||||
include_directories(${PROJECT_SOURCE_DIR})
|
||||
add_executable(version-c-api version-c-api.c)
|
||||
target_link_libraries(version-c-api sherpa-onnx-c-api)
|
||||
|
||||
add_executable(decode-file-c-api decode-file-c-api.c)
|
||||
target_link_libraries(decode-file-c-api sherpa-onnx-c-api cargs)
|
||||
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
// c-api-examples/version-c-api.c
|
||||
//
|
||||
// Copyright (c) 2026 Xiaomi Corporation
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
#include "sherpa-onnx/c-api/c-api.h"
|
||||
|
||||
int32_t main() {
|
||||
printf("sherpa-onnx version : %s\n", SherpaOnnxGetVersionStr());
|
||||
printf("sherpa-onnx Git SHA1: %s\n", SherpaOnnxGetGitSha1());
|
||||
printf("sherpa-onnx Git date: %s\n", SherpaOnnxGetGitDate());
|
||||
printf("onnxruntime version : %s\n", SherpaOnnxGetOnnxruntimeVersionStr());
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -1,5 +1,8 @@
|
||||
include_directories(${PROJECT_SOURCE_DIR})
|
||||
|
||||
add_executable(version-cxx-api ./version-cxx-api.cc)
|
||||
target_link_libraries(version-cxx-api sherpa-onnx-cxx-api)
|
||||
|
||||
add_executable(streaming-zipformer-cxx-api ./streaming-zipformer-cxx-api.cc)
|
||||
target_link_libraries(streaming-zipformer-cxx-api sherpa-onnx-cxx-api)
|
||||
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
// cxx-api-examples/version-cxx-api.cc
|
||||
//
|
||||
// Copyright (c) 2026 Xiaomi Corporation
|
||||
|
||||
#include <iostream>
|
||||
|
||||
#include "sherpa-onnx/c-api/cxx-api.h"
|
||||
|
||||
auto main() -> int {
|
||||
std::cout << "sherpa-onnx version : " << sherpa_onnx::GetVersionStr()
|
||||
<< "\n";
|
||||
std::cout << "sherpa-onnx Git SHA1: " << sherpa_onnx::GetGitSha1() << "\n";
|
||||
std::cout << "sherpa-onnx Git date: " << sherpa_onnx::GetGitDate() << "\n";
|
||||
std::cout << "onnxruntime version : " << sherpa_onnx::GetOnnxruntimeVersionStr()
|
||||
<< "\n";
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
// Copyright (c) 2026 Xiaomi Corporation
|
||||
|
||||
import 'package:sherpa_onnx/src/version.dart' as sherpa_onnx;
|
||||
|
||||
void main() {
|
||||
print('sherpa-onnx version: ${sherpa_onnx.getVersion()}');
|
||||
print('sherpa-onnx git sha1: ${sherpa_onnx.getGitSha1()}');
|
||||
print('sherpa-onnx git date: ${sherpa_onnx.getGitDate()}');
|
||||
print('onnxruntime version: ${sherpa_onnx.getOnnxruntimeVersion()}');
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
name: version
|
||||
description: >
|
||||
Print sherpa-onnx version info.
|
||||
|
||||
version: 1.0.0
|
||||
|
||||
environment:
|
||||
sdk: ">=3.0.0 <4.0.0"
|
||||
|
||||
dependencies:
|
||||
sherpa_onnx: ^1.13.4
|
||||
|
||||
dev_dependencies:
|
||||
lints: ^3.0.0
|
||||
Executable
+7
@@ -0,0 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -ex
|
||||
|
||||
dart pub get
|
||||
|
||||
dart run ./bin/main.dart
|
||||
@@ -8,9 +8,11 @@ class VersionTestDemo
|
||||
var version = VersionInfo.Version;
|
||||
var gitSha1 = VersionInfo.GitSha1;
|
||||
var gitDate = VersionInfo.GitDate;
|
||||
var onnxruntimeVersion = VersionInfo.OnnxruntimeVersion;
|
||||
|
||||
Console.WriteLine("sherpa-onnx version: {0}", version);
|
||||
Console.WriteLine("sherpa-onnx gitSha1: {0}", gitSha1);
|
||||
Console.WriteLine("sherpa-onnx gitDate: {0}", gitDate);
|
||||
Console.WriteLine("onnxruntime version: {0}", onnxruntimeVersion);
|
||||
}
|
||||
}
|
||||
@@ -1860,6 +1860,9 @@ typedef SherpaOnnxGetGitSha1 = SherpaOnnxGetGitSha1Native;
|
||||
typedef SherpaOnnxGetGitDateNative = Pointer<Utf8> Function();
|
||||
typedef SherpaOnnxGetGitDate = SherpaOnnxGetGitDateNative;
|
||||
|
||||
typedef SherpaOnnxGetOnnxruntimeVersionStrNative = Pointer<Utf8> Function();
|
||||
typedef SherpaOnnxGetOnnxruntimeVersionStr = SherpaOnnxGetOnnxruntimeVersionStrNative;
|
||||
|
||||
class SherpaOnnxBindings {
|
||||
static SherpaOnnxCreateOfflineSpeechDenoiser?
|
||||
sherpaOnnxCreateOfflineSpeechDenoiser;
|
||||
@@ -2102,6 +2105,7 @@ class SherpaOnnxBindings {
|
||||
static SherpaOnnxGetVersionStr? getVersionStr;
|
||||
static SherpaOnnxGetGitSha1? getGitSha1;
|
||||
static SherpaOnnxGetGitDate? getGitDate;
|
||||
static SherpaOnnxGetOnnxruntimeVersionStr? getOnnxruntimeVersionStr;
|
||||
|
||||
static void init(DynamicLibrary dynamicLibrary) {
|
||||
sherpaOnnxCreateOfflineSpeechDenoiser ??= dynamicLibrary
|
||||
@@ -2882,5 +2886,11 @@ class SherpaOnnxBindings {
|
||||
'SherpaOnnxGetGitDate',
|
||||
)
|
||||
.asFunction();
|
||||
|
||||
getOnnxruntimeVersionStr ??= dynamicLibrary
|
||||
.lookup<NativeFunction<SherpaOnnxGetOnnxruntimeVersionStrNative>>(
|
||||
'SherpaOnnxGetOnnxruntimeVersionStr',
|
||||
)
|
||||
.asFunction();
|
||||
}
|
||||
}
|
||||
@@ -32,3 +32,14 @@ String getGitDate() {
|
||||
|
||||
return gitDate.toDartString();
|
||||
}
|
||||
|
||||
/// Return the onnxruntime version string used by the native library.
|
||||
String getOnnxruntimeVersion() {
|
||||
Pointer<Utf8> version =
|
||||
SherpaOnnxBindings.getOnnxruntimeVersionStr?.call() ?? nullptr;
|
||||
if (version == nullptr) {
|
||||
return '';
|
||||
}
|
||||
|
||||
return version.toDartString();
|
||||
}
|
||||
@@ -12,6 +12,7 @@ func main() {
|
||||
log.Printf("sherpa-onnx version: %v\n", sherpa.GetVersion())
|
||||
log.Printf("sherpa-onnx gitSha1: %v\n", sherpa.GetGitSha1())
|
||||
log.Printf("sherpa-onnx gitDate: %v\n", sherpa.GetGitDate())
|
||||
log.Printf("onnxruntime version: %v\n", sherpa.GetOnnxruntimeVersion())
|
||||
|
||||
log.SetFlags(log.LstdFlags | log.Lmicroseconds)
|
||||
|
||||
|
||||
@@ -10,8 +10,11 @@ void InitVersion(Napi::Env env, Napi::Object exports) {
|
||||
Napi::String version = Napi::String::New(env, SherpaOnnxGetVersionStr());
|
||||
Napi::String git_sha1 = Napi::String::New(env, SherpaOnnxGetGitSha1());
|
||||
Napi::String git_date = Napi::String::New(env, SherpaOnnxGetGitDate());
|
||||
Napi::String onnxruntime_version =
|
||||
Napi::String::New(env, SherpaOnnxGetOnnxruntimeVersionStr());
|
||||
|
||||
exports.Set(Napi::String::New(env, "version"), version);
|
||||
exports.Set(Napi::String::New(env, "gitSha1"), git_sha1);
|
||||
exports.Set(Napi::String::New(env, "gitDate"), git_date);
|
||||
exports.Set(Napi::String::New(env, "onnxruntimeVersion"), onnxruntime_version);
|
||||
}
|
||||
@@ -7,5 +7,6 @@ public class VersionTest {
|
||||
System.out.printf("sherpa-onnx version: %s\n", VersionInfo.getVersion());
|
||||
System.out.printf("sherpa-onnx gitSha1: %s\n", VersionInfo.getGitSha1());
|
||||
System.out.printf("sherpa-onnx gitDate: %s\n", VersionInfo.getGitDate());
|
||||
System.out.printf("onnxruntime version: %s\n", VersionInfo.getOnnxruntimeVersion());
|
||||
}
|
||||
}
|
||||
+1
@@ -9,5 +9,6 @@ public class VersionTest {
|
||||
System.out.printf("sherpa-onnx version: %s\n", VersionInfo.getVersion());
|
||||
System.out.printf("sherpa-onnx gitSha1: %s\n", VersionInfo.getGitSha1());
|
||||
System.out.printf("sherpa-onnx gitDate: %s\n", VersionInfo.getGitDate());
|
||||
System.out.printf("onnxruntime version: %s\n", VersionInfo.getOnnxruntimeVersion());
|
||||
}
|
||||
}
|
||||
+1
@@ -9,5 +9,6 @@ public class VersionTest {
|
||||
System.out.printf("sherpa-onnx version: %s\n", VersionInfo.getVersion());
|
||||
System.out.printf("sherpa-onnx gitSha1: %s\n", VersionInfo.getGitSha1());
|
||||
System.out.printf("sherpa-onnx gitDate: %s\n", VersionInfo.getGitDate());
|
||||
System.out.printf("onnxruntime version: %s\n", VersionInfo.getOnnxruntimeVersion());
|
||||
}
|
||||
}
|
||||
+1
@@ -9,5 +9,6 @@ public class VersionTest {
|
||||
System.out.printf("sherpa-onnx version: %s\n", VersionInfo.getVersion());
|
||||
System.out.printf("sherpa-onnx gitSha1: %s\n", VersionInfo.getGitSha1());
|
||||
System.out.printf("sherpa-onnx gitDate: %s\n", VersionInfo.getGitDate());
|
||||
System.out.printf("onnxruntime version: %s\n", VersionInfo.getOnnxruntimeVersion());
|
||||
}
|
||||
}
|
||||
@@ -4,5 +4,6 @@ fun main() {
|
||||
println("sherpa-onnx version: ${VersionInfo.version}");
|
||||
println("sherpa-onnx gitSha1: ${VersionInfo.gitSha1}");
|
||||
println("sherpa-onnx gitDate: ${VersionInfo.gitDate}");
|
||||
println("onnxruntime version: ${VersionInfo.onnxruntimeVersion}");
|
||||
}
|
||||
|
||||
Executable
+35
@@ -0,0 +1,35 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -ex
|
||||
|
||||
SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
|
||||
SHERPA_ONNX_DIR=$(cd $SCRIPT_DIR/../.. && pwd)
|
||||
|
||||
echo "SHERPA_ONNX_DIR: $SHERPA_ONNX_DIR"
|
||||
|
||||
if [[ ! -f ../../build/install/lib/libsherpa-onnx-c-api.dylib && ! -f ../../build/install/lib/libsherpa-onnx-c-api.so && ! -f ../../build/install/lib/sherpa-onnx-c-api.dll ]]; then
|
||||
mkdir -p ../../build
|
||||
pushd ../../build
|
||||
cmake \
|
||||
-DCMAKE_INSTALL_PREFIX=./install \
|
||||
-DSHERPA_ONNX_ENABLE_PYTHON=OFF \
|
||||
-DSHERPA_ONNX_ENABLE_TESTS=OFF \
|
||||
-DSHERPA_ONNX_ENABLE_CHECK=OFF \
|
||||
-DBUILD_SHARED_LIBS=ON \
|
||||
-DSHERPA_ONNX_ENABLE_PORTAUDIO=OFF \
|
||||
..
|
||||
|
||||
cmake --build . --target install --config Release
|
||||
popd
|
||||
fi
|
||||
|
||||
fpc \
|
||||
-dSHERPA_ONNX_USE_SHARED_LIBS \
|
||||
-Fu$SHERPA_ONNX_DIR/sherpa-onnx/pascal-api \
|
||||
-Fl$SHERPA_ONNX_DIR/build/install/lib \
|
||||
./version.pas
|
||||
|
||||
export LD_LIBRARY_PATH=$SHERPA_ONNX_DIR/build/install/lib:$LD_LIBRARY_PATH
|
||||
export DYLD_LIBRARY_PATH=$SHERPA_ONNX_DIR/build/install/lib:$DYLD_LIBRARY_PATH
|
||||
|
||||
./version
|
||||
@@ -0,0 +1,15 @@
|
||||
// pascal-api-examples/version/version.pas
|
||||
//
|
||||
// Copyright (c) 2026 Xiaomi Corporation
|
||||
|
||||
program version;
|
||||
|
||||
uses
|
||||
sherpa_onnx;
|
||||
|
||||
begin
|
||||
WriteLn('sherpa-onnx version : ', SherpaOnnxGetVersionStr());
|
||||
WriteLn('sherpa-onnx Git SHA1: ', SherpaOnnxGetGitSha1());
|
||||
WriteLn('sherpa-onnx Git date: ', SherpaOnnxGetGitDate());
|
||||
WriteLn('onnxruntime version : ', SherpaOnnxGetOnnxruntimeVersionStr());
|
||||
end.
|
||||
@@ -0,0 +1,16 @@
|
||||
#!/usr/bin/env python3
|
||||
|
||||
# Copyright (c) 2026 Xiaomi Corporation
|
||||
|
||||
import sherpa_onnx
|
||||
|
||||
|
||||
def main():
|
||||
print(f"sherpa-onnx version: {sherpa_onnx.version}")
|
||||
print(f"sherpa-onnx git sha1: {sherpa_onnx.git_sha1}")
|
||||
print(f"sherpa-onnx git date: {sherpa_onnx.git_date}")
|
||||
print(f"onnxruntime version: {sherpa_onnx.onnxruntime_version}")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
@@ -4,4 +4,5 @@ fn main() {
|
||||
println!("Version : {}", sherpa_onnx::version());
|
||||
println!("Git SHA1: {}", sherpa_onnx::git_sha1());
|
||||
println!("Git date: {}", sherpa_onnx::git_date());
|
||||
println!("Onnxruntime version: {}", sherpa_onnx::onnxruntime_version());
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
name: version
|
||||
|
||||
description: >
|
||||
Print sherpa-onnx version info.
|
||||
|
||||
version: 1.0.0
|
||||
|
||||
environment:
|
||||
sdk: ">=3.0.0 <4.0.0"
|
||||
|
||||
dependencies:
|
||||
sherpa_onnx:
|
||||
path: ../../flutter/sherpa_onnx
|
||||
|
||||
dev_dependencies:
|
||||
lints: ^3.0.0
|
||||
@@ -107,6 +107,42 @@ namespace SherpaOnnx
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Return the onnxruntime version string used by the library.
|
||||
/// </summary>
|
||||
public static String OnnxruntimeVersion
|
||||
{
|
||||
get
|
||||
{
|
||||
IntPtr p = SherpaOnnxGetOnnxruntimeVersionStr();
|
||||
|
||||
string s = "";
|
||||
int length = 0;
|
||||
|
||||
unsafe
|
||||
{
|
||||
byte* b = (byte*)p;
|
||||
if (b != null)
|
||||
{
|
||||
while (*b != 0)
|
||||
{
|
||||
++b;
|
||||
length += 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (length > 0)
|
||||
{
|
||||
byte[] stringBuffer = new byte[length];
|
||||
Marshal.Copy(p, stringBuffer, 0, length);
|
||||
s = Encoding.UTF8.GetString(stringBuffer);
|
||||
}
|
||||
|
||||
return s;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
[DllImport(Dll.Filename)]
|
||||
private static extern IntPtr SherpaOnnxGetVersionStr();
|
||||
@@ -116,5 +152,8 @@ namespace SherpaOnnx
|
||||
|
||||
[DllImport(Dll.Filename)]
|
||||
private static extern IntPtr SherpaOnnxGetGitDate();
|
||||
|
||||
[DllImport(Dll.Filename)]
|
||||
private static extern IntPtr SherpaOnnxGetOnnxruntimeVersionStr();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
module version
|
||||
|
||||
go 1.17
|
||||
|
||||
replace github.com/k2-fsa/sherpa-onnx-go/sherpa_onnx => ../
|
||||
@@ -0,0 +1,14 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"log"
|
||||
|
||||
sherpa "github.com/k2-fsa/sherpa-onnx-go/sherpa_onnx"
|
||||
)
|
||||
|
||||
func main() {
|
||||
log.Printf("sherpa-onnx version: %v\n", sherpa.GetVersion())
|
||||
log.Printf("sherpa-onnx gitSha1: %v\n", sherpa.GetGitSha1())
|
||||
log.Printf("sherpa-onnx gitDate: %v\n", sherpa.GetGitDate())
|
||||
log.Printf("onnxruntime version: %v\n", sherpa.GetOnnxruntimeVersion())
|
||||
}
|
||||
Executable
+6
@@ -0,0 +1,6 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -ex
|
||||
|
||||
go build
|
||||
./version
|
||||
@@ -2750,6 +2750,11 @@ func GetGitDate() string {
|
||||
return C.GoString(C.SherpaOnnxGetGitDate())
|
||||
}
|
||||
|
||||
// GetOnnxruntimeVersion returns the onnxruntime version string used by the library.
|
||||
func GetOnnxruntimeVersion() string {
|
||||
return C.GoString(C.SherpaOnnxGetOnnxruntimeVersionStr())
|
||||
}
|
||||
|
||||
type OfflineSourceSeparationSpleeterModelConfig struct {
|
||||
Vocals string
|
||||
Accompaniment string
|
||||
|
||||
@@ -45,4 +45,5 @@ module.exports = {
|
||||
version : addon.version,
|
||||
gitSha1 : addon.gitSha1,
|
||||
gitDate : addon.gitDate,
|
||||
onnxruntimeVersion : addon.onnxruntimeVersion,
|
||||
}
|
||||
@@ -94,6 +94,12 @@ function getGitDate() {
|
||||
return wasmModule.UTF8ToString(v);
|
||||
}
|
||||
|
||||
// Return the onnxruntime version string used by the library.
|
||||
function getOnnxruntimeVersion() {
|
||||
const v = wasmModule._SherpaOnnxGetOnnxruntimeVersionStr();
|
||||
return wasmModule.UTF8ToString(v);
|
||||
}
|
||||
|
||||
// Note: online means streaming and offline means non-streaming here.
|
||||
// Both of them don't require internet connection.
|
||||
module.exports = {
|
||||
@@ -114,4 +120,5 @@ module.exports = {
|
||||
version: getVersion(),
|
||||
gitSha1: getGitSha1(),
|
||||
gitDate: getGitDate(),
|
||||
onnxruntimeVersion: getOnnxruntimeVersion(),
|
||||
};
|
||||
@@ -53,6 +53,9 @@
|
||||
const char *SherpaOnnxGetVersionStr() { return sherpa_onnx::GetVersionStr(); }
|
||||
const char *SherpaOnnxGetGitSha1() { return sherpa_onnx::GetGitSha1(); }
|
||||
const char *SherpaOnnxGetGitDate() { return sherpa_onnx::GetGitDate(); }
|
||||
const char *SherpaOnnxGetOnnxruntimeVersionStr() {
|
||||
return sherpa_onnx::GetOnnxruntimeVersionStr();
|
||||
}
|
||||
|
||||
struct SherpaOnnxOnlineRecognizer {
|
||||
std::unique_ptr<sherpa_onnx::OnlineRecognizer> impl;
|
||||
|
||||
@@ -150,6 +150,16 @@ SHERPA_ONNX_API const char *SherpaOnnxGetGitSha1();
|
||||
*/
|
||||
SHERPA_ONNX_API const char *SherpaOnnxGetGitDate();
|
||||
|
||||
/**
|
||||
* @brief Return the onnxruntime version string used by the library.
|
||||
*
|
||||
* The returned pointer refers to statically allocated memory owned by the
|
||||
* library. Do not free it and do not modify it.
|
||||
*
|
||||
* @return Onnxruntime version string, for example `"1.22.0"`.
|
||||
*/
|
||||
SHERPA_ONNX_API const char *SherpaOnnxGetOnnxruntimeVersionStr();
|
||||
|
||||
/**
|
||||
* @brief Check whether a file exists.
|
||||
*
|
||||
|
||||
@@ -1052,6 +1052,10 @@ std::string GetGitSha1() { return SherpaOnnxGetGitSha1(); }
|
||||
|
||||
std::string GetGitDate() { return SherpaOnnxGetGitDate(); }
|
||||
|
||||
std::string GetOnnxruntimeVersionStr() {
|
||||
return SherpaOnnxGetOnnxruntimeVersionStr();
|
||||
}
|
||||
|
||||
bool FileExists(const std::string &filename) {
|
||||
return SherpaOnnxFileExists(filename.c_str());
|
||||
}
|
||||
|
||||
@@ -1492,6 +1492,8 @@ SHERPA_ONNX_API std::string GetVersionStr();
|
||||
SHERPA_ONNX_API std::string GetGitSha1();
|
||||
/** @brief Return the build Git date as a C++ string. */
|
||||
SHERPA_ONNX_API std::string GetGitDate();
|
||||
/** @brief Return the onnxruntime version string as a C++ string. */
|
||||
SHERPA_ONNX_API std::string GetOnnxruntimeVersionStr();
|
||||
/** @brief Return `true` if a file exists. */
|
||||
SHERPA_ONNX_API bool FileExists(const std::string &filename);
|
||||
|
||||
|
||||
@@ -87,6 +87,7 @@ _SherpaOnnxGetOfflineStreamResult
|
||||
_SherpaOnnxGetOfflineStreamResultAsJson
|
||||
_SherpaOnnxGetOnlineStreamResult
|
||||
_SherpaOnnxGetOnlineStreamResultAsJson
|
||||
_SherpaOnnxGetOnnxruntimeVersionStr
|
||||
_SherpaOnnxGetVersionStr
|
||||
_SherpaOnnxIsKeywordStreamReady
|
||||
_SherpaOnnxIsOnlineStreamReady
|
||||
|
||||
@@ -544,6 +544,7 @@ if(SHERPA_ONNX_ENABLE_BINARY)
|
||||
sherpa-onnx-vad
|
||||
sherpa-onnx-vad-with-offline-asr
|
||||
sherpa-onnx-vad-with-online-asr
|
||||
sherpa-onnx-version
|
||||
)
|
||||
if(SHERPA_ONNX_ENABLE_TTS)
|
||||
list(APPEND main_exes
|
||||
@@ -585,7 +586,6 @@ if(SHERPA_ONNX_ENABLE_BINARY)
|
||||
install(
|
||||
TARGETS
|
||||
${main_exes}
|
||||
sherpa-onnx-version
|
||||
DESTINATION
|
||||
bin
|
||||
)
|
||||
|
||||
@@ -12,6 +12,7 @@ int32_t main() {
|
||||
printf("sherpa-onnx version : %s\n", sherpa_onnx::GetVersionStr());
|
||||
printf("sherpa-onnx Git SHA1: %s\n", sherpa_onnx::GetGitSha1());
|
||||
printf("sherpa-onnx Git date: %s\n", sherpa_onnx::GetGitDate());
|
||||
printf("onnxruntime version : %s\n", sherpa_onnx::GetOnnxruntimeVersionStr());
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -4,6 +4,8 @@
|
||||
|
||||
#include "sherpa-onnx/csrc/version.h"
|
||||
|
||||
#include "onnxruntime_c_api.h" // NOLINT
|
||||
|
||||
namespace sherpa_onnx {
|
||||
|
||||
const char *GetGitDate() {
|
||||
@@ -21,4 +23,8 @@ const char *GetVersionStr() {
|
||||
return version;
|
||||
}
|
||||
|
||||
const char *GetOnnxruntimeVersionStr() {
|
||||
return OrtGetApiBase()->GetVersionString();
|
||||
}
|
||||
|
||||
} // namespace sherpa_onnx
|
||||
@@ -24,6 +24,9 @@ const char *GetGitSha1();
|
||||
// The memory pointed by the returned pointer is statically allocated.
|
||||
const char *GetGitDate();
|
||||
|
||||
// The memory pointed by the returned pointer is statically allocated.
|
||||
const char *GetOnnxruntimeVersionStr();
|
||||
|
||||
} // namespace sherpa_onnx
|
||||
|
||||
#endif // SHERPA_ONNX_CSRC_VERSION_H_
|
||||
@@ -17,7 +17,13 @@ public class VersionInfo {
|
||||
return getGitDate2();
|
||||
}
|
||||
|
||||
public static String getOnnxruntimeVersion() {
|
||||
LibraryLoader.maybeLoad();
|
||||
return getOnnxruntimeVersionStr2();
|
||||
}
|
||||
|
||||
private static native String getVersionStr2();
|
||||
private static native String getGitSha12();
|
||||
private static native String getGitDate2();
|
||||
private static native String getOnnxruntimeVersionStr2();
|
||||
}
|
||||
@@ -121,9 +121,11 @@ _Java_com_k2fsa_sherpa_onnx_Vad_pop
|
||||
_Java_com_k2fsa_sherpa_onnx_Vad_reset
|
||||
_Java_com_k2fsa_sherpa_onnx_VersionInfo_00024Companion_getGitDate2
|
||||
_Java_com_k2fsa_sherpa_onnx_VersionInfo_00024Companion_getGitSha12
|
||||
_Java_com_k2fsa_sherpa_onnx_VersionInfo_00024Companion_getOnnxruntimeVersionStr2
|
||||
_Java_com_k2fsa_sherpa_onnx_VersionInfo_00024Companion_getVersionStr2
|
||||
_Java_com_k2fsa_sherpa_onnx_VersionInfo_getGitDate2
|
||||
_Java_com_k2fsa_sherpa_onnx_VersionInfo_getGitSha12
|
||||
_Java_com_k2fsa_sherpa_onnx_VersionInfo_getOnnxruntimeVersionStr2
|
||||
_Java_com_k2fsa_sherpa_onnx_VersionInfo_getVersionStr2
|
||||
_Java_com_k2fsa_sherpa_onnx_WaveReader_00024Companion_readWaveFromAsset
|
||||
_Java_com_k2fsa_sherpa_onnx_WaveReader_00024Companion_readWaveFromFile
|
||||
|
||||
@@ -46,4 +46,18 @@ JNIEXPORT jstring JNICALL Java_com_k2fsa_sherpa_onnx_VersionInfo_getGitDate2(
|
||||
return SafeNewStringUTF(env, GetGitDate());
|
||||
}
|
||||
|
||||
SHERPA_ONNX_EXTERN_C
|
||||
JNIEXPORT jstring JNICALL
|
||||
Java_com_k2fsa_sherpa_onnx_VersionInfo_00024Companion_getOnnxruntimeVersionStr2(
|
||||
JNIEnv *env, jclass /*cls*/) {
|
||||
return SafeNewStringUTF(env, GetOnnxruntimeVersionStr());
|
||||
}
|
||||
|
||||
SHERPA_ONNX_EXTERN_C
|
||||
JNIEXPORT jstring JNICALL
|
||||
Java_com_k2fsa_sherpa_onnx_VersionInfo_getOnnxruntimeVersionStr2(
|
||||
JNIEnv *env, jclass /*cls*/) {
|
||||
return SafeNewStringUTF(env, GetOnnxruntimeVersionStr());
|
||||
}
|
||||
|
||||
} // namespace sherpa_onnx
|
||||
@@ -15,8 +15,12 @@ class VersionInfo {
|
||||
val gitDate: String
|
||||
get() = getGitDate2()
|
||||
|
||||
val onnxruntimeVersion: String
|
||||
get() = getOnnxruntimeVersionStr2()
|
||||
|
||||
external fun getVersionStr2(): String
|
||||
external fun getGitSha12(): String
|
||||
external fun getGitDate2(): String
|
||||
external fun getOnnxruntimeVersionStr2(): String
|
||||
}
|
||||
}
|
||||
@@ -805,6 +805,7 @@ type
|
||||
function SherpaOnnxGetVersionStr(): AnsiString;
|
||||
function SherpaOnnxGetGitSha1(): AnsiString;
|
||||
function SherpaOnnxGetGitDate(): AnsiString;
|
||||
function SherpaOnnxGetOnnxruntimeVersionStr(): AnsiString;
|
||||
|
||||
implementation
|
||||
|
||||
@@ -1364,6 +1365,14 @@ begin
|
||||
Result := SherpaOnnxGetGitDateWrapper();
|
||||
end;
|
||||
|
||||
function SherpaOnnxGetOnnxruntimeVersionStrWrapper(): PAnsiChar; cdecl;
|
||||
external SherpaOnnxLibName name 'SherpaOnnxGetOnnxruntimeVersionStr';
|
||||
|
||||
function SherpaOnnxGetOnnxruntimeVersionStr(): AnsiString;
|
||||
begin
|
||||
Result := SherpaOnnxGetOnnxruntimeVersionStrWrapper();
|
||||
end;
|
||||
|
||||
procedure SherpaOnnxDestroyLinearResampler(P: Pointer); cdecl;
|
||||
external SherpaOnnxLibName;
|
||||
|
||||
|
||||
@@ -14,12 +14,15 @@ void PybindVersion(py::module *m) {
|
||||
m->attr("version") = std::string(GetVersionStr());
|
||||
m->attr("git_sha1") = std::string(GetGitSha1());
|
||||
m->attr("git_date") = std::string(GetGitDate());
|
||||
m->attr("onnxruntime_version") = std::string(GetOnnxruntimeVersionStr());
|
||||
|
||||
m->attr("__doc_version") = "str: The version of sherpa-onnx.";
|
||||
m->attr("__doc_git_sha1") =
|
||||
"str: The git commit SHA1 used to build sherpa-onnx.";
|
||||
m->attr("__doc_git_date") =
|
||||
"str: The git commit date used to build sherpa-onnx.";
|
||||
m->attr("__doc_onnxruntime_version") =
|
||||
"str: The version of onnxruntime used by sherpa-onnx.";
|
||||
}
|
||||
|
||||
} // namespace sherpa_onnx
|
||||
@@ -20,7 +20,6 @@ from sherpa_onnx.lib._sherpa_onnx import (
|
||||
OfflineDolphinModelConfig,
|
||||
OfflineFireRedAsrModelConfig,
|
||||
OfflineFunASRNanoModelConfig,
|
||||
OfflineQwen3ASRModelConfig,
|
||||
OfflineLMConfig,
|
||||
OfflineModelConfig,
|
||||
OfflineMoonshineModelConfig,
|
||||
@@ -29,6 +28,7 @@ from sherpa_onnx.lib._sherpa_onnx import (
|
||||
OfflinePunctuation,
|
||||
OfflinePunctuationConfig,
|
||||
OfflinePunctuationModelConfig,
|
||||
OfflineQwen3ASRModelConfig,
|
||||
OfflineRecognizerConfig,
|
||||
OfflineSenseVoiceModelConfig,
|
||||
OfflineSourceSeparation,
|
||||
@@ -85,6 +85,7 @@ from sherpa_onnx.lib._sherpa_onnx import (
|
||||
VoiceActivityDetector,
|
||||
git_date,
|
||||
git_sha1,
|
||||
onnxruntime_version,
|
||||
version,
|
||||
write_wave,
|
||||
)
|
||||
|
||||
@@ -8,6 +8,7 @@ extern "C" {
|
||||
pub fn SherpaOnnxGetVersionStr() -> *const c_char;
|
||||
pub fn SherpaOnnxGetGitSha1() -> *const c_char;
|
||||
pub fn SherpaOnnxGetGitDate() -> *const c_char;
|
||||
pub fn SherpaOnnxGetOnnxruntimeVersionStr() -> *const c_char;
|
||||
pub fn SherpaOnnxFileExists(filename: *const c_char) -> i32;
|
||||
}
|
||||
|
||||
|
||||
@@ -36,6 +36,12 @@ pub fn git_date() -> &'static str {
|
||||
c_str_to_static_str(ptr)
|
||||
}
|
||||
|
||||
/// Return the onnxruntime version string used by the native library.
|
||||
pub fn onnxruntime_version() -> &'static str {
|
||||
let ptr = unsafe { sys::SherpaOnnxGetOnnxruntimeVersionStr() };
|
||||
c_str_to_static_str(ptr)
|
||||
}
|
||||
|
||||
/// Return `true` if `filename` exists according to the native helper.
|
||||
pub fn file_exists(filename: &str) -> bool {
|
||||
let cstr = match CString::new(filename) {
|
||||
|
||||
@@ -2108,6 +2108,11 @@ func getSherpaOnnxGitSha1() -> String {
|
||||
func getSherpaOnnxGitDate() -> String {
|
||||
return String(cString: SherpaOnnxGetGitDate())
|
||||
}
|
||||
|
||||
/// Return the onnxruntime version string used by the library.
|
||||
func getSherpaOnnxOnnxruntimeVersion() -> String {
|
||||
return String(cString: SherpaOnnxGetOnnxruntimeVersionStr())
|
||||
}
|
||||
//---------------------------
|
||||
// Source separation
|
||||
//---------------------------
|
||||
|
||||
@@ -2,9 +2,11 @@ func run() {
|
||||
let version = getSherpaOnnxVersion()
|
||||
let gitSha1 = getSherpaOnnxGitSha1()
|
||||
let gitDate = getSherpaOnnxGitDate()
|
||||
let onnxruntimeVersion = getSherpaOnnxOnnxruntimeVersion()
|
||||
print("sherpa-onnx version: \(version)")
|
||||
print("sherpa-onnx gitSha1: \(gitSha1)")
|
||||
print("sherpa-onnx gitDate: \(gitDate)")
|
||||
print("onnxruntime version: \(onnxruntimeVersion)")
|
||||
}
|
||||
|
||||
@main
|
||||
|
||||
Reference in new issue
Block a user