fxzWenet\app\src\main\assets\final.zip
fxzWenet\app\release\app-release.apk
fxzWenet\app\build\pytorch_android-1.10.0.aar
fxzWenet\app\build\wenet-openfst-android-1.0.2.aar
fxzWenet\app\build\intermediates
This Android demo shows we can run on-device streaming ASR with WeNet. You can download our prebuilt APK or build your APK from source code.
- Chinese ASR Demo APK, with model trained on AIShell data 离线
- English ASR Demo APK, with model trained on GigaSpeech data
You can use our pretrained model (click the following link to download):
中文(WenetSpeech) | English(GigaSpeech)
Or you can train your own model using WeNet training pipeline on your data.
When your model is ready, put final.zip
and units.txt
into Android assets (app/src/main/assets
) folder,
then just build and run the APK. Here is a gif demo, which shows how our on-device streaming e2e ASR runs with low latency.
Please note the wifi and data has been disabled in the demo so there is no network connection ^_^.
Step 1, connect your Android phone, and use adb push
把文件从电脑移到手机上的指令 command to push your model, wav scp, and waves to the sdcard.
Step 2, build the binary and the APK with Android Studio directly, or with the commands as follows:
cd runtime/android
./gradlew build
Step 3, push your binary and the dynamic library to /data/local/tmp
as follows:
adb push app/.cxx/cmake/release/arm64-v8a/decoder_main /data/local/tmp
adb push app/build/pytorch_android-1.10.0.aar/jni/arm64-v8a/* /data/local/tmp
Step 4, change to the directory /data/local/tmp
of your phone, and export the library path by:
adb shell
cd /data/local/tmp
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:.
Step 5, execute the same command as the x86 demo to run the binary to decode and compute the RTF.