From cb1623df1c00372b6e8307908f48f7c70c9b1899 Mon Sep 17 00:00:00 2001 From: zhaohe Date: Fri, 6 Jan 2023 20:02:48 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=89=93=E5=8C=85=E8=84=9A?= =?UTF-8?q?=E6=9C=AC=EF=BC=8C=E6=89=93=E5=8C=85=E5=94=A4=E9=86=92=E8=AF=8D?= =?UTF-8?q?=E5=BC=95=E6=93=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 3 ++- README.md | 20 ++++++++++++++++++++ sh/envsetup_pc.sh | 5 +++++ sh/envsetup_rk3328.sh | 11 +++++++++++ sh/iflytool.sh | 13 ++++--------- sh/packet.sh | 43 +++++++++++++++++++++++++++++++++++++++---- 6 files changed, 81 insertions(+), 14 deletions(-) create mode 100755 sh/envsetup_pc.sh create mode 100755 sh/envsetup_rk3328.sh diff --git a/.gitignore b/.gitignore index 7769fb9..3e26eaf 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ build lib -out \ No newline at end of file +out +.cache \ No newline at end of file diff --git a/README.md b/README.md index 1e264ed..b90dc93 100644 --- a/README.md +++ b/README.md @@ -31,6 +31,26 @@ build/ 应用程序编译目录 ``` +## 唤醒词引擎环境测试 + +```bash +# 下载唤醒词引擎 +wget 192.168.1.2:8021/manufacturer_mycroft/mycroft-precise-release/precise-all_0.3.0_aarch64.tar.gz +tar -xvf precise-all_0.3.0_aarch64.tar.gz + +# 下载唤醒词模型 +wget ftp://zftpuser:zftpzwsd@192.168.1.2/zwsd/manufacturer_mycroft/hotworld/xiaomaoxiaomao/xiaomaoxiaomao_module_20220519.tar.gz +tar -xvf xiaomaoxiaomao_module_20220519.tar.gz -C./ +mv xiaomaoxiaomao/* . + +# 下载唤醒词语音 +wget 192.168.1.2:8021/manufacturer_mycroft/hotworld/xiaomaoxiaomao/test_xiaomaoxiaomao.wav + +# 测试 +./precise/precise-engine xiaomaoxiaomao.pb 2048 < test_xiaomaoxiaomao.wav + +``` + ``` 应用开发约定 1.嵌入式Linux开发板应用存放路径为/app diff --git a/sh/envsetup_pc.sh b/sh/envsetup_pc.sh new file mode 100755 index 0000000..38f9b9d --- /dev/null +++ b/sh/envsetup_pc.sh @@ -0,0 +1,5 @@ +# 构造build.sh +echo "cmake ../ \\" >${PROJECT_PATH}/build/build.sh +echo "-DCMAKE_C_COMPILER=gcc \\" >>${PROJECT_PATH}/build/build.sh +echo "-DCMAKE_CXX_COMPILER=g++ \\" >>${PROJECT_PATH}/build/build.sh +chmod +x ${PROJECT_PATH}/build/build.sh diff --git a/sh/envsetup_rk3328.sh b/sh/envsetup_rk3328.sh new file mode 100755 index 0000000..8b4f7cc --- /dev/null +++ b/sh/envsetup_rk3328.sh @@ -0,0 +1,11 @@ +#!/bin/bash +# 下载编译器 +cd ${PROJECT_PATH}/build +wget -c "ftp://zftpuser:zftpzwsd@192.168.1.2/zwsd/gnu_gcc_release/gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu.tar.gz" +tar -xvf "gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu.tar.gz" + +# 构造build.sh +echo "cmake ../ \\" >${PROJECT_PATH}/build/build.sh +echo "-DCMAKE_C_COMPILER=${PROJECT_PATH}/build/gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-gcc \\" >>${PROJECT_PATH}/build/build.sh +echo "-DCMAKE_CXX_COMPILER=${PROJECT_PATH}/build/gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-g++ \\" >>${PROJECT_PATH}/build/build.sh +chmod +x ${PROJECT_PATH}/build/build.sh diff --git a/sh/iflytool.sh b/sh/iflytool.sh index c97a9da..e367f3f 100755 --- a/sh/iflytool.sh +++ b/sh/iflytool.sh @@ -1,6 +1,6 @@ #!/bin/bash - +<${PROJECT_PATH}/build/build.sh @@ -22,6 +22,7 @@ function do_envsetup_rk3328() { chmod +x ${PROJECT_PATH}/build/build.sh } +BLOCK function do_flash_to_targetboard() { scp -r out/${PROJECT_NAME}.tar.gz ${TARGET_USER}@${IP}:/ @@ -145,15 +146,9 @@ if [ "$is_envsetup" = true ]; then echo "PROJECT_NAME=$PROJECT_NAME" >>${PROJECT_PATH}/build/buildenv + ${PROJECT_PATH}/sh/envsetup_${BUILDFOR}.sh - if [ "$BUILDFOR" = "pc" ]; then - do_envsetup_pc - elif [ "$BUILDFOR" = "rk3328" ]; then - do_envsetup_rk3328 - else - echo "unknow build for $BUILDFOR" - exit 1 - fi + echo "envsetup success !" exit 0 fi diff --git a/sh/packet.sh b/sh/packet.sh index bd257f3..cef5be2 100755 --- a/sh/packet.sh +++ b/sh/packet.sh @@ -1,12 +1,33 @@ #!/bin/bash +# +# wget_and_unzip 解压后的文件名 url +# +function wget_and_unzip() { + # 下载压缩包,解压,并删除压缩包 + # cd $PACKET_DIR/ + mkdir -p $PROJECT_PATH/.cache + cd $PROJECT_PATH/.cache + # ftp://zftpuser:zftpzwsd@192.168.1.2/zwsd/manufacturer_mycroft/hotworld/xiaomaoxiaomao/xiaomaoxiaomao_module_20220519.tar.gz + wget -c $2 + tar -xvf $(basename $2) + mv $PROJECT_PATH/.cache/$1 $PACKET_DIR/ +} + +function wget_and_cpy() { + # 下载压缩包,解压,并删除压缩包 + # cd $PACKET_DIR/ + mkdir -p $PROJECT_PATH/.cache + cd $PROJECT_PATH/.cache + wget -c $1 + cp $PROJECT_PATH/.cache/$(basename $1) $PACKET_DIR/ +} set -e set -x -export PROJECT_PATH=`pwd` +export PROJECT_PATH=$(pwd) source ${PROJECT_PATH}/build/buildenv - #打包目录 PACKET_DIR=$PROJECT_PATH/out/app @@ -30,12 +51,26 @@ cp -rf $PROJECT_PATH/webapp $PACKET_DIR/ #4 拷贝配置文件 cd $PROJECT_PATH/env/ && cp --path -rf ./* $PACKET_DIR/ +#################################################################### +########################打包自定义的东西############################## +#################################################################### +# 下载唤醒词模型 +wget_and_unzip xiaomaoxiaomao ftp://zftpuser:zftpzwsd@192.168.1.2/zwsd/manufacturer_mycroft/hotworld/xiaomaoxiaomao/xiaomaoxiaomao_module_20220519.tar.gz +# 下载唤醒词引擎 +if [ "$BUILDFOR" == "rk3328" ]; then + wget_and_unzip precise 192.168.1.2:8021/manufacturer_mycroft/mycroft-precise-release/precise-all_0.3.0_aarch64.tar.gz +fi +# 下载唤醒词语音 +wget_and_cpy 192.168.1.2:8021/manufacturer_mycroft/hotworld/xiaomaoxiaomao/test_xiaomaoxiaomao.wav +#################################################################### +#################################################################### + #5 打包 -cur_date="`date +%Y%m%d`" +cur_date="$(date +%Y%m%d)" cd $PACKET_DIR/../ tar -czvf ${PACKET_DIR}_${cur_date}.tar.gz app cp ${PACKET_DIR}_${cur_date}.tar.gz ${PACKET_DIR}.tar.gz echo "Brief:" echo "generate ${PACKET_DIR}_${cur_date}.tar.gz..................." -echo "generate ${PACKET_DIR}.tar.gz..................." \ No newline at end of file +echo "generate ${PACKET_DIR}.tar.gz..................."