diff --git a/sh/iflytool.sh b/sh/iflytool.sh deleted file mode 100755 index ee243eb..0000000 --- a/sh/iflytool.sh +++ /dev/null @@ -1,245 +0,0 @@ -#!/bin/bash - -<${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 -} - -function do_envsetup_rk3328() { - # 下载交叉编译工具 - 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" - - # 构造编译脚本 - 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 - -} -BLOCK - -function do_flash_to_targetboard() { - scp -r out/${PROJECT_NAME}.tar.gz ${TARGET_USER}@${IP}:/ - #如果存在shutdown.sh,则先执行shutdown.sh - ssh ${TARGET_USER}@${IP} 'if [ -f "/${PROJECT_NAME}/shutdown.sh" ];then /${PROJECT_NAME}/shutdown.sh;fi' - ssh ${TARGET_USER}@${IP} "cd / && tar -xvf app.tar.gz -C /" - ssh ${TARGET_USER}@${IP} "cd / && rm -rf app.tar.gz" -} - -function do_flashapp_to_targetboard() { - # 杀死目标程序 - set +e - ssh ${TARGET_USER}@${IP} "killall app.out" - set -e - # 拷贝目标程序 - scp -r ${PROJECT_PATH}/build/app/*.out ${TARGET_USER}@${IP}:/app/ -} - -function do_flashwebapp_to_targetboard() { - ssh ${TARGET_USER}@${IP} "rm -rf /webapp" - scp -r ${PROJECT_PATH}/webapp ${TARGET_USER}@${IP}:/app/webapp -} - -############################################################################## -# -# Main: -# -############################################################################## - -# -# iflytool.sh envsetup rk3328 -# -# iflytool.sh --ip 192.168.8.100 build -# iflytool.sh --ip 192.168.8.100 --user root build -# iflytool.sh --ip 192.168.8.100 --user root ssh_copy_id ssh_clear_id -# - -# 解析指令判断指令是否是 envsetup iflytool.sh envsetup rk3328 - -set -e - -is_build=false -is_flash=false -is_reboot=false -is_envsetup=false -is_buildpc=false - -export PROJECT_PATH=$(pwd) - -for i in "$@"; do - case $i in - envsetup) - is_envsetup=true - shift - ;; - build) - is_build=true - shift - ;; - flash) - is_flash=true - shift - ;; - reboot) - is_reboot=true - shift - ;; - packet) - is_packet=true - shift - ;; - ssh_copy_id) - is_ssh_copy_id=true - shift - ;; - ssh_clear_id) - is_ssh_clear_id=true - shift - ;; - flashapp) - is_flashapp=true - shift - ;; - flashwebapp) - is_flashwebapp=true - shift - ;; - --user) - shift - TARGET_USER=$1 - shift - ;; - --ip) - shift - IP=$1 - shift - ;; - buildpc) - is_buildpc=true - shift - ;; - *) - # unknown option - ;; - - esac -done - -# 判断是否是envsetup -if [ "$is_envsetup" = true ]; then - echo "mkdir -p ${PROJECT_PATH}/build" - echo "mkdir -p ${PROJECT_PATH}/buildpc" - mkdir -p ${PROJECT_PATH}/build - mkdir -p ${PROJECT_PATH}/buildpc - - # 构造环境变量 - - #从CmakeLists.txt中读取项目名称 project(app) - PROJECT_NAME=$(grep "project(" ${PROJECT_PATH}/CMakeLists.txt) - PROJECT_NAME=${STR#*\(} - PROJECT_NAME=${PROJECT_NAME%\)*} - - #从字符串中 project(app)解析出app - STR="project(app)" - PROJECT_NAME=${STR#*\(} - PROJECT_NAME=${PROJECT_NAME%\)*} - - echo "PROJECT_NAME=$PROJECT_NAME" >>${PROJECT_PATH}/build/buildenv - echo "PROJECT_NAME=$PROJECT_NAME" >>${PROJECT_PATH}/buildpc/buildenv - - ${PROJECT_PATH}/sh/envsetup.sh - ${PROJECT_PATH}/sh/envsetuppc.sh - - echo "envsetup success !" - exit 0 -fi - -# 如果没有指定用户名,则默认用户名为 root -if [ -z "$TARGET_USER" ]; then - TARGET_USER=root -fi - -#如果flash 则默认编译打包 -if [ "$is_flash" = true ]; then - is_build=true - is_packet=true -fi -#如果打包,则默认编译 -if [ "$is_packet" = true ]; then - is_build=true -fi -#如果部署则默认需要IP -if [ "$is_flash" = true ] || [ "$is_reboot" = true ]; then - if [ -z "$IP" ]; then - echo "please input ip" - exit 1 - fi -fi -# flashapp -if [ "$is_flashapp" = true ]; then - is_build=true -fi -# 检查build目录是否存在 -if [ ! -d "${PROJECT_PATH}/build" ]; then - echo "build directory not exist, please run envsetup first" - exit 1 -fi - -# 初始化环境变量 -source ${PROJECT_PATH}/build/buildenv - -# 编译 -if [ "$is_build" = true ]; then - echo "build" - cd ${PROJECT_PATH}/build - # 根据当前电脑线程数,调用make - ./build.sh && make -j$(nproc) install -fi - -if [ "$is_buildpc" = true ]; then - echo "buildpc" - cd ${PROJECT_PATH}/buildpc - # 根据当前电脑线程数,调用make - ./build.sh && make -j$(nproc) install -fi - -# 打包 -if [ "$is_packet" = true ]; then - cd ${PROJECT_PATH} - ${PROJECT_PATH}/sh/packet.sh -fi - -# 部署 -if [ "$is_flash" = true ]; then - do_flash_to_targetboard -fi - -# flashapp -if [ "$is_flashapp" = true ]; then - do_flashapp_to_targetboard -fi - -# flashwebapp -if [ "$is_flashwebapp" = true ]; then - do_flashwebapp_to_targetboard -fi -# 重启 -if [ "$is_reboot" = true ]; then - ssh ${TARGET_USER}@${IP} "reboot" -fi - -#ssh_copy_id -if [ "$is_ssh_copy_id" = true ]; then - ssh-copy-id ${TARGET_USER}@${IP} -fi - -#ssh_clear_id -if [ "$is_ssh_clear_id" = true ]; then - ssh ${TARGET_USER}@${ip} "rm -rf ~/.ssh/authorized_keys" -fi diff --git a/sh/iflytool.sh b/sh/iflytool.sh new file mode 120000 index 0000000..1eadf77 --- /dev/null +++ b/sh/iflytool.sh @@ -0,0 +1 @@ +../buildtools/iflytool.sh \ No newline at end of file diff --git a/src/configs/zconfig.hpp b/src/configs/gconfig.hpp similarity index 91% rename from src/configs/zconfig.hpp rename to src/configs/gconfig.hpp index ac5ed54..1a9158f 100644 --- a/src/configs/zconfig.hpp +++ b/src/configs/gconfig.hpp @@ -23,9 +23,10 @@ marco(string /* */, wakeup_module_path, "xiaomaoxiaomao/xiaomaoxiaomao.pb") /*唤醒词配置*/ \ marco(string /* */, wakeup_lib_module, "./precise/precise-engine") /*唤醒词配置*/ \ marco(string /* */, wakeup_chunk_length, "1280") /*唤醒词配置,对应80ms*/ \ + marco(int /* */, wakeup_source, 0.9) /*唤醒词配置*/ \ marco(bool /* */, voice_logger_enable, true) /*是否记录语音配置*/ \ marco(string /* */, aiui_appid, "5938b7c7") /*aiui*/ \ - marco(string /* */, aiui_appkey, "19c1f7becc78eedc7826b485aabe30de") /*aiui*/ \ + marco(string /* */, aiui_appkey, "") /*aiui*/ \ marco(string /* */, aiui_auth_id, "ac30105366ea460f9ff08ddac0c4f71e") /*aiui:产品未量产前使用次ID*/ \ marco(string /* */, aiui_scene, "main_box") /*aiui*/ \ marco(string /* */, device_io_uart_path, "/dev/ttyUSB1") /*唤醒词配置,对应50ms*/ \ @@ -37,6 +38,6 @@ marco(int /* */, lightAutoCloseMin, 0) /**/ configTemplateDEFILE_CONFIG_SERVICE2( // - ZConfig, // + GConfig, // ConfigELEMENT_LIST, // "./configs/config.json", {}); diff --git a/src/main.cpp b/src/main.cpp index a714521..f16160f 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -8,7 +8,7 @@ #include "zlinuxcomponents/alsaplayer/smart_soundbox_player.hpp" #include "zlinuxcomponents/zmainhelper.hpp" // -#include "configs/zconfig.hpp" +#include "configs/gconfig.hpp" #include "iflytopcpp/core/spdlogfactory/logger.hpp" #include "iflytopcpp/core/thread/thread.hpp" #include "version.hpp" @@ -95,9 +95,9 @@ void Main::appSetup(int argc, char *argv[]) { // BUILD_AND_REG_SERRVICE(Config); logger->info("build {}.....", "Config"); - BUILD_AND_REG_SERRVICE(ZConfig); - GET_SERVICE(ZConfig)->initialize(); - if (!g_device_id.empty()) GET_SERVICE(ZConfig)->set_deviceId(g_device_id); + BUILD_AND_REG_SERRVICE(GConfig); + GET_SERVICE(GConfig)->initialize(); + if (!g_device_id.empty()) GET_SERVICE(GConfig)->set_deviceId(g_device_id); } void Main::updateRootfs() { @@ -122,7 +122,7 @@ void Main::buildDeviceIOService() { /** * @brief DeviceIOService初始化 */ - auto config = GET_SERVICE(ZConfig); + auto config = GET_SERVICE(GConfig); #if 1 BUILD_AND_REG_SERRVICE(DeviceIOService); @@ -137,7 +137,7 @@ void Main::buildVoiceProcessService() { * @brief 音频处理相关组建初始化 */ - auto config = GET_SERVICE(ZConfig); + auto config = GET_SERVICE(GConfig); BUILD_AND_REG_SERRVICE(Soundbox4micVoicePreProcess); GET_SERVICE(Soundbox4micVoicePreProcess)->initialize(); diff --git a/src/service/device_io_service.hpp b/src/service/device_io_service.hpp index 7a01802..80dd522 100644 --- a/src/service/device_io_service.hpp +++ b/src/service/device_io_service.hpp @@ -13,10 +13,10 @@ #include #include -#include "configs/zconfig.hpp" +#include "configs/gconfig.hpp" #include "iflytopcpp/core/spdlogfactory/logger.hpp" // -#include "configs/zconfig.hpp" +#include "configs/gconfig.hpp" #include "iflytopcpp/core/basic/nod/nod.hpp" #include "iflytopcpp/core/components/modbus/modbus.hpp" #include "iflytopcpp/core/thread/thread.hpp" diff --git a/src/service/light_control_service.hpp b/src/service/light_control_service.hpp index 93b3b7e..0414489 100644 --- a/src/service/light_control_service.hpp +++ b/src/service/light_control_service.hpp @@ -13,10 +13,10 @@ #include #include -#include "configs/zconfig.hpp" +#include "configs/gconfig.hpp" #include "iflytopcpp/core/spdlogfactory/logger.hpp" // -#include "configs/zconfig.hpp" +#include "configs/gconfig.hpp" #include "iflytopcpp/core/thread/thread.hpp" #include "service/device_io_service.hpp" #include "zservice_container/zservice_container.hpp" @@ -35,7 +35,7 @@ using namespace core; class LightControlService : public enable_shared_from_this { ENABLE_LOGGER(LightControlService); - shared_ptr config; + shared_ptr config; unique_ptr thread; shared_ptr deviceIoService; diff --git a/src/service/main_control_service.cpp b/src/service/main_control_service.cpp index b3dd531..6fed447 100644 --- a/src/service/main_control_service.cpp +++ b/src/service/main_control_service.cpp @@ -69,11 +69,13 @@ void MainControlService::initializeVoiceProcess() { * @brief 唤醒词触发回调 */ m_wakeupProcesser->onWakeupSignal.connect([this](float wakeup_score) { - logger->info("onWakeupSignal wakeup_score {}", wakeup_score); - /** - * @brief 触发唤醒,构造session - */ - m_workQueue->enQueue([this]() { constructSession(); }); + if (wakeup_score > m_zconfig->get_wakeup_source()) { + logger->info("onWakeupSignal wakeup_score {}", wakeup_score); + /** + * @brief 触发唤醒,构造session + */ + m_workQueue->enQueue([this]() { constructSession(); }); + } }); m_aiuiService->onMessage.connect([&](json& rxjson) { @@ -214,6 +216,7 @@ void MainControlService::initialize() { GET_TO_SERVICE(m_smartSoundboxPlayer); GET_TO_SERVICE(m_aiuiService); GET_TO_SERVICE(m_soundbox4micVoicePreProcess); + GET_TO_SERVICE(m_zconfig); // GET_TO_SERVICE(m_commonVoiceProcesser); diff --git a/src/service/main_control_service.hpp b/src/service/main_control_service.hpp index 222b225..953a3b6 100644 --- a/src/service/main_control_service.hpp +++ b/src/service/main_control_service.hpp @@ -13,10 +13,10 @@ #include #include -#include "configs/zconfig.hpp" +#include "configs/gconfig.hpp" #include "iflytopcpp/core/spdlogfactory/logger.hpp" // -#include "configs/zconfig.hpp" +#include "configs/gconfig.hpp" #include "service/device_io_service.hpp" #include "service/voiceprocess/audio_logging_service.hpp" #include "service/voiceprocess/audio_recoder_service.hpp" @@ -28,6 +28,7 @@ #include "zwebservice/zwebservice.hpp" // +#include "configs/gconfig.hpp" #include "iflytopcpp/core/components/jobs/work_queue.hpp" #include "iflytopcpp/core/components/timer/simple_timer.hpp" #include "iflytopvoicecpp/soundbox4mic_voice_pre_process.hpp" @@ -55,6 +56,7 @@ class MainControlService : public enable_shared_from_this { shared_ptr m_zwebService; shared_ptr m_deviceIOService; + shared_ptr m_zconfig; // shared_ptr m_beforeWakeupVoiceProcesser; // shared_ptr m_beforeasrVoiceProcesser; diff --git a/src/service/report_service.hpp b/src/service/report_service.hpp index 70815a0..c1df3d6 100644 --- a/src/service/report_service.hpp +++ b/src/service/report_service.hpp @@ -13,7 +13,7 @@ #include #include -#include "configs/zconfig.hpp" +#include "configs/gconfig.hpp" #include "iflytopcpp/core/spdlogfactory/logger.hpp" // #include "iflytopcpp/core/thread/thread.hpp" @@ -38,7 +38,7 @@ using namespace core; class ReportService : public enable_shared_from_this { ENABLE_LOGGER(ReportService); - shared_ptr config; + shared_ptr config; unique_ptr thread; shared_ptr deviceIoService; diff --git a/src/test/test_H8922S_gps_info_reader.cpp b/src/test/test_H8922S_gps_info_reader.cpp index 28603b7..c02997b 100644 --- a/src/test/test_H8922S_gps_info_reader.cpp +++ b/src/test/test_H8922S_gps_info_reader.cpp @@ -1,6 +1,6 @@ #include "zlinuxcomponents/zmainhelper.hpp" // -#include "configs/zconfig.hpp" +#include "configs/gconfig.hpp" #include "iflytopcpp/core/spdlogfactory/logger.hpp" #include "iflytopcpp/core/thread/thread.hpp" #include "spdlog/spdlog.h" diff --git a/src/test/test_iflytop_voice.cpp b/src/test/test_iflytop_voice.cpp index 46c1783..cdffd2d 100644 --- a/src/test/test_iflytop_voice.cpp +++ b/src/test/test_iflytop_voice.cpp @@ -3,7 +3,7 @@ #include "zlinuxcomponents/zmainhelper.hpp" // -#include "configs/zconfig.hpp" +#include "configs/gconfig.hpp" #include "iflytopcpp/core/spdlogfactory/logger.hpp" #include "iflytopcpp/core/thread/thread.hpp" #include "spdlog/spdlog.h" diff --git a/src/test/test_soundbox4mic_voice_processer.cpp b/src/test/test_soundbox4mic_voice_processer.cpp index 42bd3d8..dec8d08 100644 --- a/src/test/test_soundbox4mic_voice_processer.cpp +++ b/src/test/test_soundbox4mic_voice_processer.cpp @@ -1,6 +1,6 @@ #include "zlinuxcomponents/zmainhelper.hpp" // -#include "configs/zconfig.hpp" +#include "configs/gconfig.hpp" #include "iflytopcpp/core/spdlogfactory/logger.hpp" #include "iflytopcpp/core/thread/thread.hpp" #include "spdlog/spdlog.h"