Pārlūkot izejas kodu

Fix building on windows (#15)

* Fix building on windows

* Update README

* more fixes

* Update README
Fangjun Kuang 2 gadi atpakaļ
vecāks
revīzija
4bb51997d5

+ 8 - 8
.github/workflows/linux-macos-windows.yaml

@@ -143,15 +143,15 @@ jobs:
         shell: bash
         run: |
           cd build
-          cmake --build . --target sherpa-ncnn -- -m:2
+          cmake --build . --config Release -- -m:2
 
-          ls -lh ./bin/Debug/sherpa-ncnn.exe
+          ls -lh ./bin/Release/sherpa-ncnn.exe
 
       - name: Run tests for windows (English)
         if: startsWith(matrix.os, 'windows')
         shell: bash
         run: |
-          ./build/bin/Debug/sherpa-ncnn.exe \
+          ./build/bin/Release/sherpa-ncnn.exe \
             ./sherpa-ncnn-2022-09-05/tokens.txt \
             ./sherpa-ncnn-2022-09-05/bar/encoder_jit_trace-iter-468000-avg-16-pnnx.ncnn.param \
             ./sherpa-ncnn-2022-09-05/bar/encoder_jit_trace-iter-468000-avg-16-pnnx.ncnn.bin \
@@ -161,7 +161,7 @@ jobs:
             ./sherpa-ncnn-2022-09-05/bar/joiner_jit_trace-iter-468000-avg-16-pnnx.ncnn.bin \
             ./sherpa-ncnn-2022-09-05/test_wavs/1089-134686-0001.wav
 
-          ./build/bin/Debug/sherpa-ncnn.exe \
+          ./build/bin/Release/sherpa-ncnn.exe \
             ./sherpa-ncnn-2022-09-05/tokens.txt \
             ./sherpa-ncnn-2022-09-05/bar/encoder_jit_trace-iter-468000-avg-16-pnnx.ncnn.param \
             ./sherpa-ncnn-2022-09-05/bar/encoder_jit_trace-iter-468000-avg-16-pnnx.ncnn.bin \
@@ -171,7 +171,7 @@ jobs:
             ./sherpa-ncnn-2022-09-05/bar/joiner_jit_trace-iter-468000-avg-16-pnnx.ncnn.bin \
             ./sherpa-ncnn-2022-09-05/test_wavs/1221-135766-0001.wav
 
-          ./build/bin/Debug/sherpa-ncnn.exe \
+          ./build/bin/Release/sherpa-ncnn.exe \
             ./sherpa-ncnn-2022-09-05/tokens.txt \
             ./sherpa-ncnn-2022-09-05/bar/encoder_jit_trace-iter-468000-avg-16-pnnx.ncnn.param \
             ./sherpa-ncnn-2022-09-05/bar/encoder_jit_trace-iter-468000-avg-16-pnnx.ncnn.bin \
@@ -185,7 +185,7 @@ jobs:
         if: startsWith(matrix.os, 'windows')
         shell: bash
         run: |
-          ./build/bin/Debug/sherpa-ncnn.exe \
+          ./build/bin/Release/sherpa-ncnn.exe \
               ./sherpa-ncnn-2022-09-30/tokens.txt \
               ./sherpa-ncnn-2022-09-30/encoder_jit_trace-epoch-11-avg-2-pnnx.ncnn.param \
               ./sherpa-ncnn-2022-09-30/encoder_jit_trace-epoch-11-avg-2-pnnx.ncnn.bin \
@@ -195,7 +195,7 @@ jobs:
               ./sherpa-ncnn-2022-09-30/joiner_jit_trace-epoch-11-avg-2-pnnx.ncnn.bin \
               ./sherpa-ncnn-2022-09-30/test_wavs/0.wav
 
-          ./build/bin/Debug/sherpa-ncnn.exe \
+          ./build/bin/Release/sherpa-ncnn.exe \
               ./sherpa-ncnn-2022-09-30/tokens.txt \
               ./sherpa-ncnn-2022-09-30/encoder_jit_trace-epoch-11-avg-2-pnnx.ncnn.param \
               ./sherpa-ncnn-2022-09-30/encoder_jit_trace-epoch-11-avg-2-pnnx.ncnn.bin \
@@ -205,7 +205,7 @@ jobs:
               ./sherpa-ncnn-2022-09-30/joiner_jit_trace-epoch-11-avg-2-pnnx.ncnn.bin \
               ./sherpa-ncnn-2022-09-30/test_wavs/1.wav
 
-          ./build/bin/Debug/sherpa-ncnn.exe \
+          ./build/bin/Release/sherpa-ncnn.exe \
               ./sherpa-ncnn-2022-09-30/tokens.txt \
               ./sherpa-ncnn-2022-09-30/encoder_jit_trace-epoch-11-avg-2-pnnx.ncnn.param \
               ./sherpa-ncnn-2022-09-30/encoder_jit_trace-epoch-11-avg-2-pnnx.ncnn.bin \

+ 53 - 3
README.md

@@ -17,15 +17,14 @@ the following links:
 - Chinese: <https://huggingface.co/csukuangfj/sherpa-ncnn-2022-09-30>
 
 
-# Usage
-
+## Build for Linux/macOS
 
 ```bash
 git clone https://github.com/k2-fsa/sherpa-ncnn
 cd sherpa-ncnn
 mkdir build
 cd build
-cmake ..
+cmake -DCMAKE_BUILD_TYPE=Release ..
 make -j6
 cd ..
 ```
@@ -47,6 +46,47 @@ git clone https://huggingface.co/csukuangfj/sherpa-ncnn-2022-09-30
   ./sherpa-ncnn-2022-09-30/joiner_jit_trace-epoch-11-avg-2-pnnx.ncnn.param \
   ./sherpa-ncnn-2022-09-30/joiner_jit_trace-epoch-11-avg-2-pnnx.ncnn.bin \
   ./sherpa-ncnn-2022-09-30/test_wavs/0.wav
+
+# You will find executables in ./bin/
+```
+
+## Build for Windows
+
+```bash
+git clone https://github.com/k2-fsa/sherpa-ncnn
+cd sherpa-ncnn
+mkdir build
+cd build
+cmake -DCMAKE_BUILD_TYPE=Release ..
+cmake --build . --config Release
+cd ..
+
+# You will find executables in ./bin/Release
+```
+
+## Download the pretrained model (Chinese)
+
+**Caution**: You have to run `git lfs install`. Otherwise, you will be **SAD** later.
+
+```bash
+git lfs install
+git clone https://huggingface.co/csukuangfj/sherpa-ncnn-2022-09-30
+
+./build/bin/sherpa-ncnn \
+  ./sherpa-ncnn-2022-09-30/tokens.txt \
+  ./sherpa-ncnn-2022-09-30/encoder_jit_trace-epoch-11-avg-2-pnnx.ncnn.param \
+  ./sherpa-ncnn-2022-09-30/encoder_jit_trace-epoch-11-avg-2-pnnx.ncnn.bin \
+  ./sherpa-ncnn-2022-09-30/decoder_jit_trace-epoch-11-avg-2-pnnx.ncnn.param \
+  ./sherpa-ncnn-2022-09-30/decoder_jit_trace-epoch-11-avg-2-pnnx.ncnn.bin \
+  ./sherpa-ncnn-2022-09-30/joiner_jit_trace-epoch-11-avg-2-pnnx.ncnn.param \
+  ./sherpa-ncnn-2022-09-30/joiner_jit_trace-epoch-11-avg-2-pnnx.ncnn.bin \
+  ./sherpa-ncnn-2022-09-30/test_wavs/0.wav
+
+# If you are using Windows, please use ./build/bin/Release/sherpa-ncnn
+
+# If you get encoding issues on Windows, please run
+#  CHCP 65001
+# in you commandline window.
 ```
 
 To do speech recognition in real-time with a microphone, run:
@@ -60,6 +100,8 @@ To do speech recognition in real-time with a microphone, run:
   ./sherpa-ncnn-2022-09-30/decoder_jit_trace-epoch-11-avg-2-pnnx.ncnn.bin \
   ./sherpa-ncnn-2022-09-30/joiner_jit_trace-epoch-11-avg-2-pnnx.ncnn.param \
   ./sherpa-ncnn-2022-09-30/joiner_jit_trace-epoch-11-avg-2-pnnx.ncnn.bin
+
+# If you are using Windows, please use ./build/bin/Release/sherpa-ncnn-microphone.exe
 ```
 
 ## Download the pretrained model (English)
@@ -77,6 +119,8 @@ git clone https://huggingface.co/csukuangfj/sherpa-ncnn-2022-09-05
   ./sherpa-ncnn-2022-09-05/bar/joiner_jit_trace-iter-468000-avg-16-pnnx.ncnn.param \
   ./sherpa-ncnn-2022-09-05/bar/joiner_jit_trace-iter-468000-avg-16-pnnx.ncnn.bin \
   ./sherpa-ncnn-2022-09-05/test_wavs/1089-134686-0001.wav
+
+# If you are using Windows, please use ./build/bin/Release/sherpa-ncnn.exe
 ```
 
 To do speech recognition in real-time with a microphone, run:
@@ -90,6 +134,12 @@ To do speech recognition in real-time with a microphone, run:
   ./sherpa-ncnn-2022-09-05/bar/decoder_jit_trace-iter-468000-avg-16-pnnx.ncnn.bin \
   ./sherpa-ncnn-2022-09-05/bar/joiner_jit_trace-iter-468000-avg-16-pnnx.ncnn.param \
   ./sherpa-ncnn-2022-09-05/bar/joiner_jit_trace-iter-468000-avg-16-pnnx.ncnn.bin
+
+# If you are using Windows, please use ./build/bin/Release/sherpa-ncnn-microphone.exe
+
+# If you get encoding issues on Windows, please run
+#  CHCP 65001
+# in you commandline window.
 ```
 
 

+ 2 - 2
cmake/kaldi-native-fbank.cmake

@@ -9,8 +9,8 @@ function(download_kaldi_native_fbank)
 
   include(FetchContent)
 
-  set(kaldi_native_fbank_URL  "https://github.com/csukuangfj/kaldi-native-fbank/archive/refs/tags/v1.4.tar.gz")
-  set(kaldi_native_fbank_HASH "SHA256=771e08cb7edf512c828f4577d0d071a7993991d7e5415b11a843975dcf3e4d2d")
+  set(kaldi_native_fbank_URL  "https://github.com/csukuangfj/kaldi-native-fbank/archive/refs/tags/v1.6.tar.gz")
+  set(kaldi_native_fbank_HASH "SHA256=1142831bfbfd2da3a2f25e10de12cfa76219006ed47f379b7f58d469bbe461eb")
 
   set(KALDI_NATIVE_FBANK_BUILD_TESTS OFF CACHE BOOL "" FORCE)
   set(KALDI_NATIVE_FBANK_BUILD_PYTHON OFF CACHE BOOL "" FORCE)