#!/usr/bin/env bash set -ex if [ ! -d ../build-swift-macos ]; then echo "Please run ../build-swift-macos.sh first!" exit 1 fi if [ ! -d ./sherpa-onnx-streaming-zipformer-bilingual-zh-en-2023-02-20 ]; then echo "Please download the pre-trained model for testing." echo "You can refer to" echo "" echo "https://k2-fsa.github.io/sherpa/onnx/pretrained_models/zipformer-transducer-models.html#sherpa-onnx-streaming-zipformer-bilingual-zh-en-2023-02-20-bilingual-chinese-english" echo "" echo "for help" wget -q https://github.com/k2-fsa/sherpa-onnx/releases/download/asr-models/sherpa-onnx-streaming-zipformer-bilingual-zh-en-2023-02-20.tar.bz2 tar xvf sherpa-onnx-streaming-zipformer-bilingual-zh-en-2023-02-20.tar.bz2 rm sherpa-onnx-streaming-zipformer-bilingual-zh-en-2023-02-20.tar.bz2 fi if [ ! -d ./sherpa-onnx-streaming-zipformer-ctc-multi-zh-hans-2023-12-13 ]; then wget -q https://github.com/k2-fsa/sherpa-onnx/releases/download/asr-models/sherpa-onnx-streaming-zipformer-ctc-multi-zh-hans-2023-12-13.tar.bz2 tar xvf sherpa-onnx-streaming-zipformer-ctc-multi-zh-hans-2023-12-13.tar.bz2 rm sherpa-onnx-streaming-zipformer-ctc-multi-zh-hans-2023-12-13.tar.bz2 fi if [ ! -e ./decode-file ]; then # Note: We use -lc++ to link against libc++ instead of libstdc++ swiftc \ -lc++ \ -I ../build-swift-macos/install/include \ -import-objc-header ./SherpaOnnx-Bridging-Header.h \ ./decode-file.swift ./SherpaOnnx.swift \ -L ../build-swift-macos/install/lib/ \ -l sherpa-onnx \ -l onnxruntime \ -o decode-file strip decode-file else echo "./decode-file exists - skip building" fi export DYLD_LIBRARY_PATH=$PWD/../build-swift-macos/install/lib:$DYLD_LIBRARY_PATH ./decode-file