Skip to content

Commit c2dcdab

Browse files
authoredMay 15, 2024
Fix sherpa-onnx-node-version in node examples (#879)
1 parent 03c956a commit c2dcdab

19 files changed

+36
-56
lines changed
 

‎.github/scripts/node-addon/README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,5 @@ for usages.
77

88
||Method|Support multiple threads|Minimum required node version|
99
|---|---|---|---|
10-
|this package| https://github.com/nodejs/node-addon-api | Yes | v10|
10+
|this package| https://github.com/nodejs/node-addon-api | Yes | v16|
1111
|https://www.npmjs.com/package/sherpa-onnx| WebAssembly | No | v18|

‎.github/workflows/test-nodejs-addon-npm.yaml

+3-1
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ jobs:
4242
strategy:
4343
fail-fast: false
4444
matrix:
45-
os: [macos-11, macos-14, ubuntu-20.04, ubuntu-22.04, windows-latest]
45+
os: [macos-latest, macos-14, ubuntu-20.04, ubuntu-22.04, windows-latest]
4646
node-version: ["16", "17", "18", "19", "21", "22"]
4747

4848
steps:
@@ -73,6 +73,8 @@ jobs:
7373
7474
export DYLD_LIBRARY_PATH=$PWD/node_modules/sherpa-onnx-darwin-x64:$DYLD_LIBRARY_PATH
7575
export DYLD_LIBRARY_PATH=$PWD/node_modules/sherpa-onnx-darwin-arm64:$DYLD_LIBRARY_PATH
76+
export LD_LIBRARY_PATH=$PWD/node_modules/sherpa-onnx-darwin-x64:$DYLD_LIBRARY_PATH
77+
export LD_LIBRARY_PATH=$PWD/node_modules/sherpa-onnx-darwin-arm64:$DYLD_LIBRARY_PATH
7678
export LD_LIBRARY_PATH=$PWD/node_modules/sherpa-onnx-linux-x64:$LD_LIBRARY_PATH
7779
export LD_LIBRARY_PATH=$PWD/node_modules/sherpa-onnx-linux-arm64:$LD_LIBRARY_PATH
7880

‎nodejs-addon-examples/README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Introduction
22

3-
Note: You need `Node >= 10`.
3+
Note: You need `Node >= 16`.
44

55
This repo contains examples for NodeJS.
66
It uses [node-addon-api](https://github.com/nodejs/node-addon-api) to wrap

‎nodejs-addon-examples/package.json

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
{
22
"dependencies": {
3-
"perf_hooks": "*",
4-
"sherpa-onnx-node": "*"
3+
"sherpa-onnx-node": "^1.0.24"
54
}
65
}

‎nodejs-addon-examples/test_asr_non_streaming_nemo_ctc.js

+2-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
// Copyright (c) 2024 Xiaomi Corporation
22
const sherpa_onnx = require('sherpa-onnx-node');
3-
const performance = require('perf_hooks').performance;
43

54
// Please download test files from
65
// https://github.com/k2-fsa/sherpa-onnx/releases/tag/asr-models
@@ -27,14 +26,14 @@ const waveFilename =
2726

2827
const recognizer = new sherpa_onnx.OfflineRecognizer(config);
2928
console.log('Started')
30-
let start = performance.now();
29+
let start = Date.now();
3130
const stream = recognizer.createStream();
3231
const wave = sherpa_onnx.readWave(waveFilename);
3332
stream.acceptWaveform({sampleRate: wave.sampleRate, samples: wave.samples});
3433

3534
recognizer.decode(stream);
3635
result = recognizer.getResult(stream)
37-
let stop = performance.now();
36+
let stop = Date.now();
3837
console.log('Done')
3938

4039
const elapsed_seconds = (stop - start) / 1000;

‎nodejs-addon-examples/test_asr_non_streaming_paraformer.js

+2-4
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
// Copyright (c) 2024 Xiaomi Corporation
22
const sherpa_onnx = require('sherpa-onnx-node');
3-
const performance = require('perf_hooks').performance;
4-
53

64
// Please download test files from
75
// https://github.com/k2-fsa/sherpa-onnx/releases/tag/asr-models
@@ -26,14 +24,14 @@ const waveFilename =
2624

2725
const recognizer = new sherpa_onnx.OfflineRecognizer(config);
2826
console.log('Started')
29-
let start = performance.now();
27+
let start = Date.now();
3028
const stream = recognizer.createStream();
3129
const wave = sherpa_onnx.readWave(waveFilename);
3230
stream.acceptWaveform({sampleRate: wave.sampleRate, samples: wave.samples});
3331

3432
recognizer.decode(stream);
3533
result = recognizer.getResult(stream)
36-
let stop = performance.now();
34+
let stop = Date.now();
3735
console.log('Done')
3836

3937
const elapsed_seconds = (stop - start) / 1000;

‎nodejs-addon-examples/test_asr_non_streaming_transducer.js

+2-4
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
// Copyright (c) 2024 Xiaomi Corporation
22
const sherpa_onnx = require('sherpa-onnx-node');
3-
const performance = require('perf_hooks').performance;
4-
53

64
// Please download test files from
75
// https://github.com/k2-fsa/sherpa-onnx/releases/tag/asr-models
@@ -30,14 +28,14 @@ const waveFilename = './sherpa-onnx-zipformer-en-2023-04-01/test_wavs/1.wav';
3028

3129
const recognizer = new sherpa_onnx.OfflineRecognizer(config);
3230
console.log('Started')
33-
let start = performance.now();
31+
let start = Date.now();
3432
const stream = recognizer.createStream();
3533
const wave = sherpa_onnx.readWave(waveFilename);
3634
stream.acceptWaveform({sampleRate: wave.sampleRate, samples: wave.samples});
3735

3836
recognizer.decode(stream);
3937
result = recognizer.getResult(stream)
40-
let stop = performance.now();
38+
let stop = Date.now();
4139
console.log('Done')
4240

4341
const elapsed_seconds = (stop - start) / 1000;

‎nodejs-addon-examples/test_asr_non_streaming_whisper.js

+2-4
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
// Copyright (c) 2024 Xiaomi Corporation
22
const sherpa_onnx = require('sherpa-onnx-node');
3-
const performance = require('perf_hooks').performance;
4-
53

64
// Please download test files from
75
// https://github.com/k2-fsa/sherpa-onnx/releases/tag/asr-models
@@ -26,14 +24,14 @@ const waveFilename = './sherpa-onnx-whisper-tiny.en/test_wavs/0.wav';
2624

2725
const recognizer = new sherpa_onnx.OfflineRecognizer(config);
2826
console.log('Started')
29-
let start = performance.now();
27+
let start = Date.now();
3028
const stream = recognizer.createStream();
3129
const wave = sherpa_onnx.readWave(waveFilename);
3230
stream.acceptWaveform({sampleRate: wave.sampleRate, samples: wave.samples});
3331

3432
recognizer.decode(stream);
3533
result = recognizer.getResult(stream)
36-
let stop = performance.now();
34+
let stop = Date.now();
3735
console.log('Done')
3836

3937
const elapsed_seconds = (stop - start) / 1000;

‎nodejs-addon-examples/test_asr_streaming_ctc.js

+2-4
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
// Copyright (c) 2024 Xiaomi Corporation
22
const sherpa_onnx = require('sherpa-onnx-node');
3-
const performance = require('perf_hooks').performance;
4-
53

64
// Please download test files from
75
// https://github.com/k2-fsa/sherpa-onnx/releases/tag/asr-models
@@ -28,7 +26,7 @@ const waveFilename =
2826

2927
const recognizer = new sherpa_onnx.OnlineRecognizer(config);
3028
console.log('Started')
31-
let start = performance.now();
29+
let start = Date.now();
3230
const stream = recognizer.createStream();
3331
const wave = sherpa_onnx.readWave(waveFilename);
3432
stream.acceptWaveform({sampleRate: wave.sampleRate, samples: wave.samples});
@@ -40,7 +38,7 @@ while (recognizer.isReady(stream)) {
4038
recognizer.decode(stream);
4139
}
4240
result = recognizer.getResult(stream)
43-
let stop = performance.now();
41+
let stop = Date.now();
4442
console.log('Done')
4543

4644
const elapsed_seconds = (stop - start) / 1000;

‎nodejs-addon-examples/test_asr_streaming_ctc_hlg.js

+2-4
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
// Copyright (c) 2024 Xiaomi Corporation
22
const sherpa_onnx = require('sherpa-onnx-node');
3-
const performance = require('perf_hooks').performance;
4-
53

64
// Please download test files from
75
// https://github.com/k2-fsa/sherpa-onnx/releases/tag/asr-models
@@ -31,7 +29,7 @@ const waveFilename =
3129

3230
const recognizer = new sherpa_onnx.OnlineRecognizer(config);
3331
console.log('Started')
34-
let start = performance.now();
32+
let start = Date.now();
3533
const stream = recognizer.createStream();
3634
const wave = sherpa_onnx.readWave(waveFilename);
3735
stream.acceptWaveform({sampleRate: wave.sampleRate, samples: wave.samples});
@@ -43,7 +41,7 @@ while (recognizer.isReady(stream)) {
4341
recognizer.decode(stream);
4442
}
4543
result = recognizer.getResult(stream)
46-
let stop = performance.now();
44+
let stop = Date.now();
4745
console.log('Done')
4846

4947
const elapsed_seconds = (stop - start) / 1000;

‎nodejs-addon-examples/test_asr_streaming_paraformer.js

+2-4
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
// Copyright (c) 2024 Xiaomi Corporation
22
const sherpa_onnx = require('sherpa-onnx-node');
3-
const performance = require('perf_hooks').performance;
4-
53

64
// Please download test files from
75
// https://github.com/k2-fsa/sherpa-onnx/releases/tag/asr-models
@@ -29,7 +27,7 @@ const waveFilename =
2927

3028
const recognizer = new sherpa_onnx.OnlineRecognizer(config);
3129
console.log('Started')
32-
let start = performance.now();
30+
let start = Date.now();
3331
const stream = recognizer.createStream();
3432
const wave = sherpa_onnx.readWave(waveFilename);
3533
stream.acceptWaveform({sampleRate: wave.sampleRate, samples: wave.samples});
@@ -41,7 +39,7 @@ while (recognizer.isReady(stream)) {
4139
recognizer.decode(stream);
4240
}
4341
result = recognizer.getResult(stream)
44-
let stop = performance.now();
42+
let stop = Date.now();
4543
console.log('Done')
4644

4745
const elapsed_seconds = (stop - start) / 1000;

‎nodejs-addon-examples/test_asr_streaming_transducer.js

+2-4
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
// Copyright (c) 2024 Xiaomi Corporation
22
const sherpa_onnx = require('sherpa-onnx-node');
3-
const performance = require('perf_hooks').performance;
4-
53

64
// Please download test files from
75
// https://github.com/k2-fsa/sherpa-onnx/releases/tag/asr-models
@@ -32,7 +30,7 @@ const waveFilename =
3230

3331
const recognizer = new sherpa_onnx.OnlineRecognizer(config);
3432
console.log('Started')
35-
let start = performance.now();
33+
let start = Date.now();
3634
const stream = recognizer.createStream();
3735
const wave = sherpa_onnx.readWave(waveFilename);
3836
stream.acceptWaveform({sampleRate: wave.sampleRate, samples: wave.samples});
@@ -44,7 +42,7 @@ while (recognizer.isReady(stream)) {
4442
recognizer.decode(stream);
4543
}
4644
result = recognizer.getResult(stream)
47-
let stop = performance.now();
45+
let stop = Date.now();
4846
console.log('Done')
4947

5048
const elapsed_seconds = (stop - start) / 1000;

‎nodejs-addon-examples/test_audio_tagging_ced.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -38,12 +38,12 @@ const testWaves = [
3838
console.log('------');
3939

4040
for (let filename of testWaves) {
41-
const start = performance.now();
41+
const start = Date.now();
4242
const stream = at.createStream();
4343
const wave = sherpa_onnx.readWave(filename);
4444
stream.acceptWaveform({sampleRate: wave.sampleRate, samples: wave.samples});
4545
const events = at.compute(stream);
46-
const stop = performance.now();
46+
const stop = Date.now();
4747

4848
const elapsed_seconds = (stop - start) / 1000;
4949
const duration = wave.samples.length / wave.sampleRate;

‎nodejs-addon-examples/test_audio_tagging_zipformer.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -41,12 +41,12 @@ const testWaves = [
4141
console.log('------');
4242

4343
for (let filename of testWaves) {
44-
const start = performance.now();
44+
const start = Date.now();
4545
const stream = at.createStream();
4646
const wave = sherpa_onnx.readWave(filename);
4747
stream.acceptWaveform({sampleRate: wave.sampleRate, samples: wave.samples});
4848
const events = at.compute(stream);
49-
const stop = performance.now();
49+
const stop = Date.now();
5050

5151
const elapsed_seconds = (stop - start) / 1000;
5252
const duration = wave.samples.length / wave.sampleRate;

‎nodejs-addon-examples/test_keyword_spotter_transducer.js

+2-4
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
// Copyright (c) 2024 Xiaomi Corporation
22
const sherpa_onnx = require('sherpa-onnx-node');
3-
const performance = require('perf_hooks').performance;
4-
53

64
// Please download test files from
75
// https://github.com/k2-fsa/sherpa-onnx/releases/tag/kws-models
@@ -34,7 +32,7 @@ const waveFilename =
3432

3533
const kws = new sherpa_onnx.KeywordSpotter(config);
3634
console.log('Started')
37-
let start = performance.now();
35+
let start = Date.now();
3836
const stream = kws.createStream();
3937
const wave = sherpa_onnx.readWave(waveFilename);
4038
stream.acceptWaveform({sampleRate: wave.sampleRate, samples: wave.samples});
@@ -50,7 +48,7 @@ while (kws.isReady(stream)) {
5048
}
5149
kws.decode(stream);
5250
}
53-
let stop = performance.now();
51+
let stop = Date.now();
5452

5553
console.log('Done')
5654

‎nodejs-addon-examples/test_tts_non_streaming_vits_coqui_de.js

+2-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
// Copyright (c) 2024 Xiaomi Corporation
22
const sherpa_onnx = require('sherpa-onnx-node');
3-
const performance = require('perf_hooks').performance;
43

54
// please download model files from
65
// https://github.com/k2-fsa/sherpa-onnx/releases/tag/tts-models
@@ -24,9 +23,9 @@ const tts = createOfflineTts();
2423

2524
const text = 'Alles hat ein Ende, nur die Wurst hat zwei.'
2625

27-
let start = performance.now();
26+
let start = Date.now();
2827
const audio = tts.generate({text: text, sid: 0, speed: 1.0});
29-
let stop = performance.now();
28+
let stop = Date.now();
3029
const elapsed_seconds = (stop - start) / 1000;
3130
const duration = audio.samples.length / audio.sampleRate;
3231
const real_time_factor = elapsed_seconds / duration;

‎nodejs-addon-examples/test_tts_non_streaming_vits_piper_en.js

+2-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
// Copyright (c) 2024 Xiaomi Corporation
22
const sherpa_onnx = require('sherpa-onnx-node');
3-
const performance = require('perf_hooks').performance;
43

54
// please download model files from
65
// https://github.com/k2-fsa/sherpa-onnx/releases/tag/tts-models
@@ -27,9 +26,9 @@ const text =
2726
'Today as always, men fall into two groups: slaves and free men. Whoever does not have two-thirds of his day for himself, is a slave, whatever he may be: a statesman, a businessman, an official, or a scholar.'
2827

2928

30-
let start = performance.now();
29+
let start = Date.now();
3130
const audio = tts.generate({text: text, sid: 0, speed: 1.0});
32-
let stop = performance.now();
31+
let stop = Date.now();
3332
const elapsed_seconds = (stop - start) / 1000;
3433
const duration = audio.samples.length / audio.sampleRate;
3534
const real_time_factor = elapsed_seconds / duration;

‎nodejs-addon-examples/test_tts_non_streaming_vits_zh_aishell3.js

+2-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
// Copyright (c) 2024 Xiaomi Corporation
22
const sherpa_onnx = require('sherpa-onnx-node');
3-
const performance = require('perf_hooks').performance;
43

54
// please download model files from
65
// https://github.com/k2-fsa/sherpa-onnx/releases/tag/tts-models
@@ -29,9 +28,9 @@ const tts = createOfflineTts();
2928
const text =
3029
'他在长沙出生,长白山长大,去过长江,现在他是一个银行的行长,主管行政工作。有困难,请拨110,或者13020240513。今天是2024年5月13号, 他上个月的工资是12345块钱。'
3130

32-
let start = performance.now();
31+
let start = Date.now();
3332
const audio = tts.generate({text: text, sid: 88, speed: 1.0});
34-
let stop = performance.now();
33+
let stop = Date.now();
3534
const elapsed_seconds = (stop - start) / 1000;
3635
const duration = audio.samples.length / audio.sampleRate;
3736
const real_time_factor = elapsed_seconds / duration;

‎nodejs-addon-examples/test_tts_non_streaming_vits_zh_ll.js

+2-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
// Copyright (c) 2024 Xiaomi Corporation
22
const sherpa_onnx = require('sherpa-onnx-node');
3-
const performance = require('perf_hooks').performance;
43

54
// please download model files from
65
// https://github.com/k2-fsa/sherpa-onnx/releases/tag/tts-models
@@ -29,9 +28,9 @@ const tts = createOfflineTts();
2928
const text =
3029
'当夜幕降临,星光点点,伴随着微风拂面,我在静谧中感受着时光的流转,思念如涟漪荡漾,梦境如画卷展开,我与自然融为一体,沉静在这片宁静的美丽之中,感受着生命的奇迹与温柔。2024年5月13号,拨打110或者18920240513。123456块钱。'
3130

32-
let start = performance.now();
31+
let start = Date.now();
3332
const audio = tts.generate({text: text, sid: 2, speed: 1.0});
34-
let stop = performance.now();
33+
let stop = Date.now();
3534
const elapsed_seconds = (stop - start) / 1000;
3635
const duration = audio.samples.length / audio.sampleRate;
3736
const real_time_factor = elapsed_seconds / duration;

0 commit comments

Comments
 (0)