Avoid reinstatiation of public API in worker. Bump emscripten 3.1.68 & fix previous size regression
This commit is contained in:
File diff suppressed because one or more lines are too long
Binary file not shown.
File diff suppressed because one or more lines are too long
BIN
Vosklet.wasm
BIN
Vosklet.wasm
Binary file not shown.
@@ -3,8 +3,11 @@
|
|||||||
* @suppress {undefinedVars|checkTypes}
|
* @suppress {undefinedVars|checkTypes}
|
||||||
*/
|
*/
|
||||||
|
|
||||||
let objs = [];
|
if(ENVIRONMENT_IS_WEB) {
|
||||||
let events = ['status', 'partialResult', 'result'];
|
|
||||||
|
// "var" to expose this outside the if
|
||||||
|
var objs = [];
|
||||||
|
var events = ['status', 'partialResult', 'result'];
|
||||||
let storageWorkerURL = URL.createObjectURL(new Blob(['(', (async () => {
|
let storageWorkerURL = URL.createObjectURL(new Blob(['(', (async () => {
|
||||||
let txtDecoder = new TextDecoder();
|
let txtDecoder = new TextDecoder();
|
||||||
let txtEncoder = new TextEncoder();
|
let txtEncoder = new TextEncoder();
|
||||||
@@ -49,7 +52,7 @@ let processorURL = URL.createObjectURL(new Blob(['(', (() => {
|
|||||||
constructor(opts) {
|
constructor(opts) {
|
||||||
super();
|
super();
|
||||||
this.filledSize = 0;
|
this.filledSize = 0;
|
||||||
this.bufferSize = opts.processorOptions;
|
this.bufferSize = opts.processorOptions.bufferSize;
|
||||||
this.buffer = new Float32Array(this.bufferSize);
|
this.buffer = new Float32Array(this.bufferSize);
|
||||||
}
|
}
|
||||||
process(inputs) {
|
process(inputs) {
|
||||||
@@ -162,7 +165,7 @@ Module = {
|
|||||||
numberOfInputs: 1,
|
numberOfInputs: 1,
|
||||||
numberOfOutputs: 0,
|
numberOfOutputs: 0,
|
||||||
channelCount: 1,
|
channelCount: 1,
|
||||||
processorOptions: bufferSize
|
processorOptions: { bufferSize: bufferSize }
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
@@ -180,4 +183,6 @@ Module = {
|
|||||||
|
|
||||||
'createRecognizerWithSpkModel': (model, sampleRate, spkModel) =>
|
'createRecognizerWithSpkModel': (model, sampleRate, spkModel) =>
|
||||||
Recognizer.mk(model.obj, sampleRate, 2, null, spkModel.obj)
|
Recognizer.mk(model.obj, sampleRate, 2, null, spkModel.obj)
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
5
src/make
5
src/make
@@ -24,8 +24,8 @@ if [ "$EMSDK" = ../emsdk ] && [ ! -d "$EMSDK" ]; then
|
|||||||
echo "Installing emsdk + Emscripten..."
|
echo "Installing emsdk + Emscripten..."
|
||||||
git clone --depth=1 https://github.com/emscripten-core/emsdk.git ../emsdk &&
|
git clone --depth=1 https://github.com/emscripten-core/emsdk.git ../emsdk &&
|
||||||
cd ../emsdk &&
|
cd ../emsdk &&
|
||||||
./emsdk install 3.1.67 &&
|
./emsdk install 3.1.68 &&
|
||||||
./emsdk activate 3.1.67
|
./emsdk activate 3.1.68
|
||||||
fi
|
fi
|
||||||
. $(realpath "$EMSDK")/emsdk_env.sh &&
|
. $(realpath "$EMSDK")/emsdk_env.sh &&
|
||||||
export PATH=:$PATH:$(realpath "$EMSDK")/upstream/bin &&
|
export PATH=:$PATH:$(realpath "$EMSDK")/upstream/bin &&
|
||||||
@@ -74,7 +74,6 @@ fi
|
|||||||
cd "$SRC" &&
|
cd "$SRC" &&
|
||||||
em++ Util.cc CommonModel.cc Recognizer.cc Bindings.cc -O3 -std=c++23 -fno-rtti -DEMSCRIPTEN_HAS_UNBOUND_TYPE_NAMES=0 -DMAX_WORKERS="$MAX_THREADS" -sWASMFS -sWASM_BIGINT -sMODULARIZE -sWASM_EXNREF -sTEXTDECODER=2 -sWASM_WORKERS=2 -sEVAL_CTORS=2 -sINITIAL_MEMORY="$INITIAL_MEMORY" -sALLOW_MEMORY_GROWTH -sPOLYFILL=0 -sEXIT_RUNTIME=0 -sINVOKE_RUN=0 -sSUPPORT_LONGJMP=0 -sINCOMING_MODULE_JS_API=wasmMemory,instantiateWasm,wasm -sEXPORT_NAME=loadVosklet -sMALLOC=emmalloc -sENVIRONMENT=web,worker -I. -I"$VOSK"/src -L"$KALDI"/src -l:online2/kaldi-online2.a -l:decoder/kaldi-decoder.a -l:ivector/kaldi-ivector.a -l:gmm/kaldi-gmm.a -l:tree/kaldi-tree.a -l:feat/kaldi-feat.a -l:cudamatrix/kaldi-cudamatrix.a -l:lat/kaldi-lat.a -l:lm/kaldi-lm.a -l:rnnlm/kaldi-rnnlm.a -l:hmm/kaldi-hmm.a -l:nnet3/kaldi-nnet3.a -l:transform/kaldi-transform.a -l:matrix/kaldi-matrix.a -l:fstext/kaldi-fstext.a -l:util/kaldi-util.a -l:base/kaldi-base.a -L"$OPENFST"/lib -l:libfst.a -l:libfstngram.a -L"$CLAPACK_WASM" -l:CBLAS/lib/cblas.a -l:CLAPACK-3.2.1/lapack.a -l:CLAPACK-3.2.1/libcblaswr.a -l:f2c_BLAS-3.8.0/blas.a -l:libf2c/libf2c.a -L"$VOSK"/src -l:vosk.a -lembind -flto -msimd128 -matomics -mbulk-memory -mreference-types -mnontrapping-fptoint -mextended-const -msign-ext -mmutable-globals --pre-js Wrapper.js --closure 1 -o ../Vosklet.js
|
em++ Util.cc CommonModel.cc Recognizer.cc Bindings.cc -O3 -std=c++23 -fno-rtti -DEMSCRIPTEN_HAS_UNBOUND_TYPE_NAMES=0 -DMAX_WORKERS="$MAX_THREADS" -sWASMFS -sWASM_BIGINT -sMODULARIZE -sWASM_EXNREF -sTEXTDECODER=2 -sWASM_WORKERS=2 -sEVAL_CTORS=2 -sINITIAL_MEMORY="$INITIAL_MEMORY" -sALLOW_MEMORY_GROWTH -sPOLYFILL=0 -sEXIT_RUNTIME=0 -sINVOKE_RUN=0 -sSUPPORT_LONGJMP=0 -sINCOMING_MODULE_JS_API=wasmMemory,instantiateWasm,wasm -sEXPORT_NAME=loadVosklet -sMALLOC=emmalloc -sENVIRONMENT=web,worker -I. -I"$VOSK"/src -L"$KALDI"/src -l:online2/kaldi-online2.a -l:decoder/kaldi-decoder.a -l:ivector/kaldi-ivector.a -l:gmm/kaldi-gmm.a -l:tree/kaldi-tree.a -l:feat/kaldi-feat.a -l:cudamatrix/kaldi-cudamatrix.a -l:lat/kaldi-lat.a -l:lm/kaldi-lm.a -l:rnnlm/kaldi-rnnlm.a -l:hmm/kaldi-hmm.a -l:nnet3/kaldi-nnet3.a -l:transform/kaldi-transform.a -l:matrix/kaldi-matrix.a -l:fstext/kaldi-fstext.a -l:util/kaldi-util.a -l:base/kaldi-base.a -L"$OPENFST"/lib -l:libfst.a -l:libfstngram.a -L"$CLAPACK_WASM" -l:CBLAS/lib/cblas.a -l:CLAPACK-3.2.1/lapack.a -l:CLAPACK-3.2.1/libcblaswr.a -l:f2c_BLAS-3.8.0/blas.a -l:libf2c/libf2c.a -L"$VOSK"/src -l:vosk.a -lembind -flto -msimd128 -matomics -mbulk-memory -mreference-types -mnontrapping-fptoint -mextended-const -msign-ext -mmutable-globals --pre-js Wrapper.js --closure 1 -o ../Vosklet.js
|
||||||
cd .. &&
|
cd .. &&
|
||||||
rm -f Vosklet.worker.js
|
|
||||||
|
|
||||||
tr -d '\n' < Vosklet.js | tr -s ' ' > /tmp/hehe && mv /tmp/hehe Vosklet.js &&
|
tr -d '\n' < Vosklet.js | tr -s ' ' > /tmp/hehe && mv /tmp/hehe Vosklet.js &&
|
||||||
|
|
||||||
|
|||||||
4
test
4
test
@@ -24,8 +24,8 @@ if [ "$EMSDK" = emsdk ] && [ ! -d "$EMSDK" ]; then
|
|||||||
echo "Installing emsdk + Emscripten..."
|
echo "Installing emsdk + Emscripten..."
|
||||||
git clone --depth=1 https://github.com/emscripten-core/emsdk.git ../emsdk &&
|
git clone --depth=1 https://github.com/emscripten-core/emsdk.git ../emsdk &&
|
||||||
cd ../emsdk &&
|
cd ../emsdk &&
|
||||||
./emsdk install 3.1.67 &&
|
./emsdk install 3.1.68 &&
|
||||||
./emsdk activate 3.1.67
|
./emsdk activate 3.1.68
|
||||||
fi
|
fi
|
||||||
. $(realpath "$EMSDK")/emsdk_env.sh &&
|
. $(realpath "$EMSDK")/emsdk_env.sh &&
|
||||||
export PATH=:$PATH:$(realpath "$EMSDK")/upstream/bin
|
export PATH=:$PATH:$(realpath "$EMSDK")/upstream/bin
|
||||||
|
|||||||
Reference in New Issue
Block a user