From 9d203a3528c59adfcad637bfb9011036e2e219bd Mon Sep 17 00:00:00 2001 From: 916BGAI <916772719@qq.com> Date: Mon, 23 Dec 2024 15:02:56 +0800 Subject: [PATCH] fix pybind11 errors and speech crash --- components/ext_dev/include/maix_axp2101.hpp | 2 +- components/nn/CMakeLists.txt | 3 + components/nn/include/maix_nn_speech.hpp | 768 +----------------- components/nn/lib/libms_asr_sg2002.so | Bin 518752 -> 522904 bytes .../nn/port/linux/maix_nn_speech_linux.cpp | 110 +++ .../port/maixcam/maix_nn_speech_maixcam.cpp | 460 +++++++++++ 6 files changed, 602 insertions(+), 741 deletions(-) create mode 100644 components/nn/port/linux/maix_nn_speech_linux.cpp create mode 100644 components/nn/port/maixcam/maix_nn_speech_maixcam.cpp diff --git a/components/ext_dev/include/maix_axp2101.hpp b/components/ext_dev/include/maix_axp2101.hpp index d922c653..6506f1ea 100644 --- a/components/ext_dev/include/maix_axp2101.hpp +++ b/components/ext_dev/include/maix_axp2101.hpp @@ -157,7 +157,7 @@ namespace maix::ext_dev::axp2101 { /** * @brief Get the battery voltage. * @return uint16_t type, return battery voltage. - * @maixpy maix.ext_dev.axp2101.AXP2101.get_charger_status + * @maixpy maix.ext_dev.axp2101.AXP2101.get_bat_vol */ uint16_t get_bat_vol(); diff --git a/components/nn/CMakeLists.txt b/components/nn/CMakeLists.txt index c8827880..864ba2a9 100644 --- a/components/nn/CMakeLists.txt +++ b/components/nn/CMakeLists.txt @@ -5,9 +5,12 @@ append_srcs_dir(ADD_SRCS "src") list(APPEND ADD_REQUIREMENTS basic ini vision clipper2) if(PLATFORM_MAIXCAM) + append_srcs_dir(ADD_SRCS "port/maixcam") list(APPEND ADD_REQUIREMENTS maixcam_lib alsa_lib) list(APPEND ADD_DYNAMIC_LIB "lib/libms_asr_sg2002.so") list(APPEND ADD_DEFINITIONS -DDR_WAV_IMPLEMENTATION) +else() + append_srcs_dir(ADD_SRCS "port/linux") endif() register_component() diff --git a/components/nn/include/maix_nn_speech.hpp b/components/nn/include/maix_nn_speech.hpp index 3cf63b5d..e82b4402 100644 --- a/components/nn/include/maix_nn_speech.hpp +++ b/components/nn/include/maix_nn_speech.hpp @@ -39,17 +39,13 @@ enum class SpeechDevice { * @maixpy maix.nn.SpeechDecoder */ enum class SpeechDecoder { - DECODER_RAW = 1, - DECODER_DIG = 2, + DECODER_RAW = 1, + DECODER_DIG = 2, DECODER_LVCSR = 4, - DECODER_KWS = 8, - DECODER_ALL = 65535, + DECODER_KWS = 8, + DECODER_ALL = 65535, }; -#ifdef PLATFORM_MAIXCAM - - static bool _is_skip_frames {false}; - /** * Speech * @maixpy maix.nn.Speech @@ -64,32 +60,9 @@ enum class SpeechDecoder { * @maixpy maix.nn.Speech.__init__ * @maixcdk maix.nn.Speech.Speech */ - Speech(const string &model = "") - { - _model = nullptr; - if (!model.empty()) - { - err::Err e = load(model); - if (e != err::ERR_NONE) - { - throw err::Exception(e, "load model failed"); - } - } - signal(SIGINT, _signal_handle); - } + Speech(const string &model = ""); - ~Speech() - { - if (_dev_type != SpeechDevice::DEVICE_NONE) { - this->deinit(); - } - - if (_model) - { - delete _model; - _model = nullptr; - } - } + ~Speech(); /** * Load model from file @@ -97,81 +70,7 @@ enum class SpeechDecoder { * @return err::Err * @maixpy maix.nn.Speech.load */ - err::Err load(const string &model) - { - if (_model) - { - delete _model; - _model = nullptr; - } - _model = new nn::NN(model); - if (!_model) - { - return err::ERR_NO_MEM; - } - _extra_info = _model->extra_info(); - if (_extra_info.find("model_type") != _extra_info.end()) - { - if (_extra_info["model_type"] != "speech") - { - log::error("model_type not match, expect 'speech', but got '%s'.", _extra_info["model_type"].c_str()); - return err::ERR_ARGS; - } - } - else - { - log::error("model_type key not found."); - return err::ERR_ARGS; - } - if (_extra_info.find("mean") != _extra_info.end()) - { - std::string mean_str = _extra_info["mean"]; - std::vector mean_strs = split(mean_str, ","); - for (auto &it : mean_strs) - { - try - { - this->mean.push_back(std::stof(it)); - } - catch (std::exception &e) - { - log::error("mean value error, should float."); - return err::ERR_ARGS; - } - } - } - else - { - log::error("mean key not found."); - return err::ERR_ARGS; - } - if (_extra_info.find("scale") != _extra_info.end()) - { - std::string scale_str = _extra_info["scale"]; - std::vector scale_strs = split(scale_str, ","); - for (auto &it : scale_strs) - { - try - { - this->scale.push_back(std::stof(it)); - } - catch (std::exception &e) - { - log::error("scale value error, should float."); - return err::ERR_ARGS; - } - } - } - else - { - log::error("scale key not found."); - return err::ERR_ARGS; - } - _inputs = _model->inputs_info(); - _input_size = image::Size(_inputs[0].shape[2], _inputs[0].shape[1]); - _model_path = model; - return err::ERR_NONE; - } + err::Err load(const string &model); /** * Init the ASR library and select the type and name of the audio device. @@ -182,48 +81,7 @@ enum class SpeechDecoder { * @return err::Err type, if init success, return err::ERR_NONE * @maixpy maix.nn.Speech.init */ - err::Err init(nn::SpeechDevice dev_type, const string &device_name = "") - { - string _device_name = device_name; - - if (_model_path == "") { - log::error("please load am model first."); - throw err::Exception(err::ERR_NOT_IMPL); - } - - am_args_t am_args = {(char*)_model_path.c_str(), 192, 6, 6, CN_PNYTONE, 1}; - - if (this->dev_type() != SpeechDevice::DEVICE_NONE) { - log::error("device has been initialized, please use maix.nn.Speech.devive to reset devive."); - return err::ERR_RUNTIME; - } - - if((int)dev_type > 2) { - log::error("not support device %d.", dev_type); - throw err::Exception(err::ERR_NOT_IMPL); - } else if (dev_type == SpeechDevice::DEVICE_MIC && device_name == "") { - _dev_type = dev_type; - _device_name = "hw:0,0"; - } else if (dev_type == SpeechDevice::DEVICE_PCM && device_name == "") { - log::error("please enter the correct path to the PCM file."); - return err::ERR_ARGS; - } else if (dev_type == SpeechDevice::DEVICE_WAV && device_name == "") { - log::error("please enter the correct path to the WAV file."); - return err::ERR_ARGS; - } else { - _dev_type = dev_type; - _device_name = device_name; - } - - int ret = ms_asr_init((int)_dev_type, (char*)_device_name.c_str(), &am_args, 0); - if(ret) { - log::error("asr init error!"); - _dev_type = SpeechDevice::DEVICE_NONE; - return err::ERR_NOT_IMPL; - } - - return err::ERR_NONE; - } + err::Err init(nn::SpeechDevice dev_type, const string &device_name = ""); /** * Reset the device, usually used for PCM/WAV recognition, @@ -234,24 +92,7 @@ enum class SpeechDecoder { * @return err::Err type, if init success, return err::ERR_NONE * @maixpy maix.nn.Speech.devive */ - err::Err devive(nn::SpeechDevice dev_type, const string &device_name) - { - if((int)dev_type > 2) { - log::error("not support device %d.", dev_type); - throw err::Exception(err::ERR_NOT_IMPL); - } else { - _dev_type = dev_type; - } - - int ret = ms_asr_set_dev((int)_dev_type, (char*)device_name.c_str()); - if(ret) { - log::error("set devive error!\n"); - _dev_type = SpeechDevice::DEVICE_NONE; - return err::ERR_NOT_IMPL; - } - - return err::ERR_NONE; - } + err::Err devive(nn::SpeechDevice dev_type, const string &device_name); /** * Deinit the decoder. @@ -260,34 +101,7 @@ enum class SpeechDecoder { * @throw If device is not supported, will throw err::ERR_NOT_IMPL. * @maixpy maix.nn.Speech.dec_deinit */ - void dec_deinit(nn::SpeechDecoder decoder) - { - ms_asr_decoder_cfg((int)decoder, NULL , NULL, 0); - switch (decoder) - { - case nn::SpeechDecoder::DECODER_RAW: - _decoder_raw = false; - break; - case nn::SpeechDecoder::DECODER_DIG: - _decoder_dig = false; - break; - case nn::SpeechDecoder::DECODER_LVCSR: - _decoder_lvcsr = false; - break; - case nn::SpeechDecoder::DECODER_KWS: - _decoder_kws = false; - break; - case nn::SpeechDecoder::DECODER_ALL: - _decoder_raw = false; - _decoder_dig = false; - _decoder_lvcsr = false; - _decoder_kws = false; - break; - default: - log::error("not support decoder %d.", decoder); - throw err::Exception(err::ERR_NOT_IMPL); - } - } + void dec_deinit(nn::SpeechDecoder decoder); /** * Init raw decoder, it will output the prediction results of the original AM. @@ -295,30 +109,14 @@ enum class SpeechDecoder { * @return err::Err type, if init success, return err::ERR_NONE * @maixpy maix.nn.Speech.raw */ - err::Err raw(std::function>, int)> callback) - { - if (this->dev_type() == SpeechDevice::DEVICE_NONE) { - log::error("please init a type of audio device first."); - return err::ERR_NOT_INIT; - } - - _raw_callback = callback; - int ret = ms_asr_decoder_cfg((int)nn::SpeechDecoder::DECODER_RAW, raw_callback_wrapper , NULL, 0); - if (ret != 0) { - log::error("raw decoder init error."); - return err::ERR_RUNTIME; - } else { - _decoder_raw = true; - return err::ERR_NONE; - } - } + err::Err raw(std::function>, int)> callback); /** * Get raw decoder status * @return bool, raw decoder status - * @maixpy maix.nn.Speech.raw + * @maixcdk maix.nn.Speech.raw */ - bool raw() { return _decoder_raw; } + bool raw(); /** * Init digit decoder, it will output the Chinese digit recognition results within the last 4 seconds. @@ -327,34 +125,14 @@ enum class SpeechDecoder { * @return err::Err type, if init success, return err::ERR_NONE * @maixpy maix.nn.Speech.digit */ - err::Err digit(int blank, std::function callback) - { - if (this->dev_type() == SpeechDevice::DEVICE_NONE) { - log::error("please init a type of audio device first."); - return err::ERR_NOT_INIT; - } - - size_t decoder_args[10]; - decoder_args[0] = blank; - - _digit_callback = callback; - - int ret = ms_asr_decoder_cfg((int)nn::SpeechDecoder::DECODER_DIG, digit_callback_wrapper, &decoder_args, 1); - if (ret != 0) { - log::error("digit decoder init error."); - return err::ERR_RUNTIME; - } else { - _decoder_dig = true; - return err::ERR_NONE; - } - } + err::Err digit(int blank, std::function callback); /** * Get digit decoder status * @return bool, digit decoder status - * @maixpy maix.nn.Speech.digit + * @maixcdk maix.nn.Speech.digit */ - bool digit() { return _decoder_dig; } + bool digit(); /** * Init kws decoder, it will output a probability list of all registered keywords in the latest frame, @@ -367,57 +145,14 @@ enum class SpeechDecoder { * @return err::Err type, if init success, return err::ERR_NONE * @maixpy maix.nn.Speech.kws */ - err::Err kws(std::vector kw_tbl, std::vector kw_gate, std::function, int)> callback, bool auto_similar = true) - { - if (this->dev_type() == SpeechDevice::DEVICE_NONE) { - log::error("please init a type of audio device first."); - return err::ERR_NOT_INIT; - } - - if (kw_tbl.size() != kw_gate.size()) { - log::error("kw_tbl num must equal to kw_gate num."); - return err::ERR_ARGS; - } - - size_t decoder_args[10]; - char** _kw_tbl = new char*[kw_tbl.size()]; - for (size_t i = 0; i < kw_tbl.size(); ++i) { - _kw_tbl[i] = new char[kw_tbl[i].size() + 1]; - std::strcpy(_kw_tbl[i], kw_tbl[i].c_str()); - } - float* _kw_gate = new float[kw_gate.size()]; - for (size_t i = 0; i < kw_gate.size(); ++i) { - _kw_gate[i] = kw_gate[i]; - } - - decoder_args[0] = (size_t)_kw_tbl; - decoder_args[1] = (size_t)_kw_gate; - decoder_args[2] = kw_tbl.size(); - decoder_args[3] = auto_similar; - _kws_callback = callback; - int ret = ms_asr_decoder_cfg((int)nn::SpeechDecoder::DECODER_KWS, kws_callback_wrapper, &decoder_args, 3); - - delete[] _kw_gate; - for (size_t i = 0; i < kw_tbl.size(); ++i) { - delete[] _kw_tbl[i]; - } - delete[] _kw_tbl; - - if (ret != 0) { - log::error("kws decoder init error."); - return err::ERR_RUNTIME; - } else { - _decoder_kws = true; - return err::ERR_NONE; - } - } + err::Err kws(std::vector kw_tbl, std::vector kw_gate, std::function, int)> callback, bool auto_similar = true); /** * Get kws decoder status * @return bool, kws decoder status - * @maixpy maix.nn.Speech.kws + * @maixcdk maix.nn.Speech.kws */ - bool kws() { return _decoder_kws; } + bool kws(); /** * Init lvcsr decoder, it will output continuous speech recognition results (less than 1024 Chinese characters). @@ -439,40 +174,14 @@ enum class SpeechDecoder { err::Err lvcsr(const string &sfst_name, const string &sym_name, const string &phones_txt, const string &words_txt, std::function, int)> callback, - float beam = 8, float bg_prob = 10, float scale = 0.5, bool mmap = false) - { - if (this->dev_type() == SpeechDevice::DEVICE_NONE) { - log::error("please init a type of audio device first."); - return err::ERR_NOT_INIT; - } - - size_t decoder_args[10]; - decoder_args[0] = (size_t)sfst_name.c_str(); - decoder_args[1] = (size_t)sym_name.c_str(); - decoder_args[2] = (size_t)phones_txt.c_str(); - decoder_args[3] = (size_t)words_txt.c_str(); - memcpy(&decoder_args[4], &(beam), sizeof(float)); - memcpy(&decoder_args[5], &(bg_prob), sizeof(float)); - memcpy(&decoder_args[6], &(scale), sizeof(float)); - decoder_args[7] = mmap; - _lvcsr_callback = callback; - - int ret = ms_asr_decoder_cfg((int)nn::SpeechDecoder::DECODER_LVCSR, lvcsr_callback_wrapper, &decoder_args, 8); - if (ret != 0) { - log::error("lvcsr decoder init error."); - return err::ERR_RUNTIME; - } else { - _decoder_lvcsr = true; - return err::ERR_NONE; - } - } + float beam = 8, float bg_prob = 10, float scale = 0.5, bool mmap = false); /** * Get lvcsr decoder status * @return bool, lvcsr decoder status - * @maixpy maix.nn.Speech.lvcsr + * @maixcdk maix.nn.Speech.lvcsr */ - bool lvcsr() { return _decoder_lvcsr; } + bool lvcsr(); /** * Run speech recognition, user can run 1 frame at a time and do other processing after running, @@ -481,47 +190,20 @@ enum class SpeechDecoder { * @return int type, return actual number of frames in the run. * @maixpy maix.nn.Speech.run */ - int run(int frame) - { - if (!(raw() || digit() || kws() || lvcsr())) { - log::error("please init at least one decoder before running."); - return 0; - } - - raw_callback = this->_raw_callback; - digit_callback = this->_digit_callback; - kws_callback = this->_kws_callback; - lvcsr_callback = this->_lvcsr_callback; - - int frames = ms_asr_run(frame); - - // Set it to nullptr, otherwise MaixPy cannot exit properly. - raw_callback = nullptr; - digit_callback = nullptr; - kws_callback = nullptr; - lvcsr_callback = nullptr; - - return frames; - } + int run(int frame); /** * Reset internal cache operation * @maixpy maix.nn.Speech.clear */ - void clear() - { - ms_asr_clear(); - } + void clear(); /** * Get the time of one frame. * @return int type, return the time of one frame. * @maixpy maix.nn.Speech.frame_time */ - int frame_time() - { - return ms_asr_get_frame_time(); - } + int frame_time(); /** * Manually register mute words, and each pinyin can register up to 10 homophones, @@ -532,33 +214,7 @@ enum class SpeechDecoder { * @return err::Err type, if init success, return err::ERR_NONE * @maixpy maix.nn.Speech.similar */ - err::Err similar(const string &pny, std::vector similar_pnys) - { - if (this->kws() != true) { - log::error("please init kws decoder first."); - return err::ERR_RUNTIME; - } - - char** _similar_pnys = new char*[similar_pnys.size()]; - for (size_t i = 0; i < similar_pnys.size(); ++i) { - _similar_pnys[i] = new char[similar_pnys[i].size() + 1]; - std::strcpy(_similar_pnys[i], similar_pnys[i].c_str()); - } - - int ret = ms_asr_kws_reg_similar((char*)pny.c_str(), _similar_pnys, similar_pnys.size()); - - for (size_t i = 0; i < similar_pnys.size(); ++i) { - delete[] _similar_pnys[i]; - } - delete[] _similar_pnys; - - if (ret != 0) { - log::error("set similar pny error."); - return err::ERR_RUNTIME; - } else { - return err::ERR_NONE; - } - } + err::Err similar(const string &pny, std::vector similar_pnys); /** * Run some frames and drop, this can be used to avoid @@ -566,11 +222,7 @@ enum class SpeechDecoder { * @param num number of frames to run and drop * @maixpy maix.nn.Speech.skip_frames */ - void skip_frames(int num) { - _is_skip_frames = true; - this->run(num); - _is_skip_frames = false; - } + void skip_frames(int num); public: /** @@ -592,16 +244,6 @@ enum class SpeechDecoder { */ nn::SpeechDevice dev_type() { return _dev_type; } - static void _signal_handle(int signal) - { - switch (signal) { - case SIGINT: - maix::app::set_exit_flag(true); - break; - default: break; - } - } - private: nn::NN *_model; std::string _model_path = ""; @@ -619,360 +261,7 @@ enum class SpeechDecoder { std::function, int)> _kws_callback; std::function, int)> _lvcsr_callback; - void deinit() - { - _dev_type = SpeechDevice::DEVICE_NONE; - _decoder_raw = false; - _decoder_dig = false; - _decoder_lvcsr = false; - _decoder_kws = false; - _raw_callback = nullptr; - _digit_callback = nullptr; - _kws_callback = nullptr; - _lvcsr_callback = nullptr; - ms_asr_deinit(); - sys::register_default_signal_handle(); - } - - static void digit_callback_wrapper(void* data, int cnt) { - if (digit_callback && _is_skip_frames == false) { - digit_callback(static_cast(data), cnt); - } - } - - static void kws_callback_wrapper(void* data, int cnt) { - if (kws_callback && _is_skip_frames == false) { - std::vector kws_data; - float* p = (float*) data; - for(int i=0; i> raw_data; - pnyp_t* res = (pnyp_t*)data; - for(int t=0; tidx, pp->p}); - } - raw_callback(raw_data, cnt); - } - } - - static void lvcsr_callback_wrapper(void* data, int cnt) { - if (lvcsr_callback && _is_skip_frames == false) { - char* words = ((char**)data)[0]; - char* pnys = ((char**)data)[1]; - lvcsr_callback({words, pnys}, cnt); - } - } - - static void split0(std::vector &items, const std::string &s, const std::string &delimiter) - { - items.clear(); - size_t pos_start = 0, pos_end, delim_len = delimiter.length(); - std::string token; - - while ((pos_end = s.find(delimiter, pos_start)) != std::string::npos) - { - token = s.substr(pos_start, pos_end - pos_start); - pos_start = pos_end + delim_len; - items.push_back(token); - } - - items.push_back(s.substr(pos_start)); - } - - static std::vector split(const std::string &s, const std::string &delimiter) - { - std::vector tokens; - split0(tokens, s, delimiter); - return tokens; - } - }; - -} // namespace maix::nn -#endif - -#ifdef PLATFORM_LINUX - /** - * Speech - * @maixpy maix.nn.Speech - */ - class Speech - { - public: - /** - * Construct a new Speech object - * @param model model path, default empty, you can load model later by load function. - * @throw If model arg is not empty and load failed, will throw err::Exception. - * @maixpy maix.nn.Speech.__init__ - * @maixcdk maix.nn.Speech.Speech - */ - Speech(const string &model = "") - { - - } - - ~Speech() - { - - } - - /** - * Load model from file - * @param model Model path want to load - * @return err::Err - * @maixpy maix.nn.Speech.load - */ - err::Err load(const string &model) - { - return err::ERR_NONE; - } - - /** - * Init the ASR library and select the type and name of the audio device. - * @param dev_type device type want to detect, can choose between WAV, PCM, or MIC. - * @param device_name device name want to detect, can choose a WAV file, a PCM file, or a MIC device name. - * @throw If am model is not loaded, will throw err::ERR_NOT_IMPL. - * @throw If device is not supported, will throw err::ERR_NOT_IMPL. - * @return err::Err type, if init success, return err::ERR_NONE - * @maixpy maix.nn.Speech.init - */ - err::Err init(nn::SpeechDevice dev_type, const string &device_name = "") - { - return err::ERR_NONE; - } - - /** - * Reset the device, usually used for PCM/WAV recognition, - * such as identifying the next WAV file. - * @param dev_type device type want to detect, can choose between WAV, PCM, or MIC. - * @param device_name device name want to detect, can choose a WAV file, a PCM file, or a MIC device name. - * @throw If device is not supported, will throw err::ERR_NOT_IMPL. - * @return err::Err type, if init success, return err::ERR_NONE - * @maixpy maix.nn.Speech.devive - */ - err::Err devive(nn::SpeechDevice dev_type, const string &device_name) - { - return err::ERR_NONE; - } - - /** - * Deinit the decoder. - * @param decoder decoder type want to deinit - * can choose between DECODER_RAW, DECODER_DIG, DECODER_LVCSR, DECODER_KWS or DECODER_ALL. - * @throw If device is not supported, will throw err::ERR_NOT_IMPL. - * @maixpy maix.nn.Speech.dec_deinit - */ - void dec_deinit(nn::SpeechDecoder decoder) - { - - } - - /** - * Init raw decoder, it will output the prediction results of the original AM. - * @param callback raw decoder user callback. - * @return err::Err type, if init success, return err::ERR_NONE - * @maixpy maix.nn.Speech.raw - */ - err::Err raw(std::function>, int)> callback) - { - return err::ERR_NONE; - } - - /** - * Get raw decoder status - * @return bool, raw decoder status - * @maixpy maix.nn.Speech.raw - */ - bool raw() { return _decoder_raw; } - - /** - * Init digit decoder, it will output the Chinese digit recognition results within the last 4 seconds. - * @param blank If it exceeds this value, insert a '_' in the output result to indicate idle mute. - * @param callback digit decoder user callback. - * @return err::Err type, if init success, return err::ERR_NONE - * @maixpy maix.nn.Speech.digit - */ - err::Err digit(int blank, std::function callback) - { - return err::ERR_NONE; - } - - /** - * Get digit decoder status - * @return bool, digit decoder status - * @maixpy maix.nn.Speech.digit - */ - bool digit() { return _decoder_dig; } - - /** - * Init kws decoder, it will output a probability list of all registered keywords in the latest frame, - * users can set their own thresholds for wake-up. - * @param kw_tbl Keyword list, filled in with spaces separated by pinyin, for example: xiao3 ai4 tong2 xue2 - * @param kw_gate kw_gate, keyword probability gate table, the number should be the same as kw_tbl - * @param auto_similar Whether to perform automatic homophone processing, - * setting it to true will automatically calculate the probability by using pinyin with different tones as homophones - * @param callback digit decoder user callback. - * @return err::Err type, if init success, return err::ERR_NONE - * @maixpy maix.nn.Speech.kws - */ - err::Err kws(std::vector kw_tbl, std::vector kw_gate, std::function, int)> callback, bool auto_similar = true) - { - return err::ERR_NONE; - } - - /** - * Get kws decoder status - * @return bool, kws decoder status - * @maixpy maix.nn.Speech.kws - */ - bool kws() { return _decoder_kws; } - - /** - * Init lvcsr decoder, it will output continuous speech recognition results (less than 1024 Chinese characters). - * @param sfst_name Sfst file path. - * @param sym_name Sym file path (output symbol table). - * @param phones_txt Path to phones.bin (pinyin table). - * @param words_txt Path to words.bin (dictionary table). - * @param callback lvcsr decoder user callback. - * @param beam The beam size for WFST search is set to 8 by default, and it is recommended to be between 3 and 9. - * The larger the size, the larger the search space, and the more accurate but slower the search. - * @param bg_prob The absolute value of the natural logarithm of the default probability value for background pinyin - * outside of BEAM-CNT is set to 10 by default. - * @param scale acoustics_cost = log(pny_prob)*scale. - * @param mmap use mmap to load the WFST decoding image, - * If set to true, the beam should be less than 5. - * @return err::Err type, if init success, return err::ERR_NONE - * @maixpy maix.nn.Speech.lvcsr - */ - err::Err lvcsr(const string &sfst_name, const string &sym_name, - const string &phones_txt, const string &words_txt, - std::function, int)> callback, - float beam = 8, float bg_prob = 10, float scale = 0.5, bool mmap = false) - { - return err::ERR_NONE; - } - - /** - * Get lvcsr decoder status - * @return bool, lvcsr decoder status - * @maixpy maix.nn.Speech.lvcsr - */ - bool lvcsr() { return _decoder_lvcsr; } - - /** - * Run speech recognition, user can run 1 frame at a time and do other processing after running, - * or it can run continuously within a thread and be stopped by an external thread. - * @param frame The number of frames per run. - * @return int type, return actual number of frames in the run. - * @maixpy maix.nn.Speech.run - */ - int run(int frame) - { - return 0; - } - - /** - * Reset internal cache operation - * @maixpy maix.nn.Speech.clear - */ - void clear() - { - - } - - /** - * Get the time of one frame. - * @return int type, return the time of one frame. - * @maixpy maix.nn.Speech.frame_time - */ - int frame_time() - { - return 0; - } - - /** - * Manually register mute words, and each pinyin can register up to 10 homophones, - * please note that using this interface to register homophones will overwrite, - * the homophone table automatically generated in the "automatic homophone processing" feature. - * @param dev_type device type want to detect, can choose between WAV, PCM, or MIC. - * @param device_name device name want to detect, can choose a WAV file, a PCM file, or a MIC device name. - * @return err::Err type, if init success, return err::ERR_NONE - * @maixpy maix.nn.Speech.similar - */ - err::Err similar(const string &pny, std::vector similar_pnys) - { - return err::ERR_NONE; - } - - /** - * Run some frames and drop, this can be used to avoid - * incorrect recognition results when switching decoders. - * @param num number of frames to run and drop - * @maixpy maix.nn.Speech.skip_frames - */ - void skip_frames(int num) { - return; - } - - public: - /** - * Get mean value, list type - * @maixpy maix.nn.Speech.mean - */ - std::vector mean; - - /** - * Get scale value, list type - * @maixpy maix.nn.Speech.scale - */ - std::vector scale; - - /** - * get device type - * @return nn::SpeechDevice type, see SpeechDevice of this module - * @maixpy maix.nn.Speech.dev_type - */ - nn::SpeechDevice dev_type() { return _dev_type; } - - private: - nn::NN *_model; - std::string _model_path = ""; - std::map _extra_info; - image::Size _input_size; - std::vector _inputs; - nn::SpeechDevice _dev_type = SpeechDevice::DEVICE_NONE; - bool _decoder_raw = false; - bool _decoder_dig = false; - bool _decoder_kws = false; - bool _decoder_lvcsr = false; - - void deinit() - { - return ; - } - - static void digit_callback_wrapper(void* data, int cnt) { - - } - - static void kws_callback_wrapper(void* data, int cnt) { - - } - - static void raw_callback_wrapper(void* data, int cnt) { - - } - - static void lvcsr_callback_wrapper(void* data, int cnt) { - - } + void deinit(); static void split0(std::vector &items, const std::string &s, const std::string &delimiter) { @@ -999,4 +288,3 @@ enum class SpeechDecoder { }; } // namespace maix::nn -#endif diff --git a/components/nn/lib/libms_asr_sg2002.so b/components/nn/lib/libms_asr_sg2002.so index 5a422fce200aa48d94f28afffa1afcc3f606f469..c82b5298c173957241f07b6b252c0e2731b0b79c 100755 GIT binary patch delta 236818 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 G`uz_o1|Glw delta 234675 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, int)> callback) + { + return err::ERR_NOT_IMPL; + } + + bool Speech::raw() { return _decoder_raw; } + + err::Err Speech::digit(int blank, std::function callback) + { + return err::ERR_NOT_IMPL; + } + + bool Speech::digit() { return _decoder_dig; } + + err::Err Speech::kws(std::vector kw_tbl, std::vector kw_gate, std::function, int)> callback, bool auto_similar) + { + return err::ERR_NOT_IMPL; + } + + bool Speech::kws() { return _decoder_kws; } + + err::Err Speech::lvcsr(const string &sfst_name, const string &sym_name, + const string &phones_txt, const string &words_txt, + std::function, int)> callback, + float beam, float bg_prob, float scale, bool mmap) + { + return err::ERR_NOT_IMPL; + } + + bool Speech::lvcsr() { return _decoder_lvcsr; } + + int Speech::run(int frame) + { + return -1; + } + + void Speech::clear() + { + + } + + int Speech::frame_time() + { + return -1; + } + + err::Err Speech::similar(const string &pny, std::vector similar_pnys) + { + return err::ERR_NOT_IMPL; + } + + void Speech::skip_frames(int num) { + return; + } + + void Speech::deinit() + { + _dev_type = SpeechDevice::DEVICE_NONE; + _decoder_raw = false; + _decoder_dig = false; + _decoder_lvcsr = false; + _decoder_kws = false; + _raw_callback = nullptr; + _digit_callback = nullptr; + _kws_callback = nullptr; + _lvcsr_callback = nullptr; + } +} + diff --git a/components/nn/port/maixcam/maix_nn_speech_maixcam.cpp b/components/nn/port/maixcam/maix_nn_speech_maixcam.cpp new file mode 100644 index 00000000..d26a9957 --- /dev/null +++ b/components/nn/port/maixcam/maix_nn_speech_maixcam.cpp @@ -0,0 +1,460 @@ +/** + * @author 916BGAI + * @copyright Sipeed Ltd 2024- + * @license Apache 2.0 + * @update 2024.12.23: Add framework, create this file. + */ + +#include "maix_nn_speech.hpp" + +namespace maix::nn +{ + static bool _is_skip_frames {false}; + + static void _signal_handle(int signal) + { + switch (signal) { + case SIGINT: + maix::app::set_exit_flag(true); + break; + default: break; + } + } + + static void digit_callback_wrapper(void* data, int cnt) { + if (digit_callback && _is_skip_frames == false) { + digit_callback(static_cast(data), cnt); + } + } + + static void kws_callback_wrapper(void* data, int cnt) { + if (kws_callback && _is_skip_frames == false) { + std::vector kws_data; + float* p = (float*) data; + for(int i=0; i> raw_data; + pnyp_t* res = (pnyp_t*)data; + for(int t=0; tidx, pp->p}); + } + raw_callback(raw_data, cnt); + } + } + + static void lvcsr_callback_wrapper(void* data, int cnt) { + if (lvcsr_callback && _is_skip_frames == false) { + char* words = ((char**)data)[0]; + char* pnys = ((char**)data)[1]; + lvcsr_callback({words, pnys}, cnt); + } + } + + Speech::Speech(const string &model) + { + _model = nullptr; + if (!model.empty()) + { + err::Err e = load(model); + if (e != err::ERR_NONE) + { + throw err::Exception(e, "load model failed"); + } + } + signal(SIGINT, _signal_handle); + } + + Speech::~Speech() + { + if (_dev_type != SpeechDevice::DEVICE_NONE) { + this->deinit(); + } + + if (_model) + { + delete _model; + _model = nullptr; + } + } + + err::Err Speech::load(const string &model) + { + if (_model) + { + delete _model; + _model = nullptr; + } + _model = new nn::NN(model); + if (!_model) + { + return err::ERR_NO_MEM; + } + _extra_info = _model->extra_info(); + if (_extra_info.find("model_type") != _extra_info.end()) + { + if (_extra_info["model_type"] != "speech") + { + log::error("model_type not match, expect 'speech', but got '%s'.", _extra_info["model_type"].c_str()); + return err::ERR_ARGS; + } + } + else + { + log::error("model_type key not found."); + return err::ERR_ARGS; + } + if (_extra_info.find("mean") != _extra_info.end()) + { + std::string mean_str = _extra_info["mean"]; + std::vector mean_strs = split(mean_str, ","); + for (auto &it : mean_strs) + { + try + { + this->mean.push_back(std::stof(it)); + } + catch (std::exception &e) + { + log::error("mean value error, should float."); + return err::ERR_ARGS; + } + } + } + else + { + log::error("mean key not found."); + return err::ERR_ARGS; + } + if (_extra_info.find("scale") != _extra_info.end()) + { + std::string scale_str = _extra_info["scale"]; + std::vector scale_strs = split(scale_str, ","); + for (auto &it : scale_strs) + { + try + { + this->scale.push_back(std::stof(it)); + } + catch (std::exception &e) + { + log::error("scale value error, should float."); + return err::ERR_ARGS; + } + } + } + else + { + log::error("scale key not found."); + return err::ERR_ARGS; + } + _inputs = _model->inputs_info(); + _input_size = image::Size(_inputs[0].shape[2], _inputs[0].shape[1]); + _model_path = model; + return err::ERR_NONE; + } + + err::Err Speech::init(nn::SpeechDevice dev_type, const string &device_name) + { + string _device_name = device_name; + + if (_model_path == "") { + log::error("please load am model first."); + throw err::Exception(err::ERR_NOT_IMPL); + } + + am_args_t am_args = {(char*)_model_path.c_str(), 192, 6, 6, CN_PNYTONE, 1}; + + if (this->dev_type() != SpeechDevice::DEVICE_NONE) { + log::error("device has been initialized, please use maix.nn.Speech.devive to reset devive."); + return err::ERR_RUNTIME; + } + + if((int)dev_type > 2) { + log::error("not support device %d.", dev_type); + throw err::Exception(err::ERR_NOT_IMPL); + } else if (dev_type == SpeechDevice::DEVICE_MIC && device_name == "") { + _dev_type = dev_type; + _device_name = "hw:0,0"; + } else if (dev_type == SpeechDevice::DEVICE_PCM && device_name == "") { + log::error("please enter the correct path to the PCM file."); + return err::ERR_ARGS; + } else if (dev_type == SpeechDevice::DEVICE_WAV && device_name == "") { + log::error("please enter the correct path to the WAV file."); + return err::ERR_ARGS; + } else { + _dev_type = dev_type; + _device_name = device_name; + } + + int ret = ms_asr_init((int)_dev_type, (char*)_device_name.c_str(), &am_args, 0); + if(ret) { + log::error("asr init error!"); + _dev_type = SpeechDevice::DEVICE_NONE; + return err::ERR_NOT_IMPL; + } + + return err::ERR_NONE; + } + + err::Err Speech::devive(nn::SpeechDevice dev_type, const string &device_name) + { + if((int)dev_type > 2) { + log::error("not support device %d.", dev_type); + throw err::Exception(err::ERR_NOT_IMPL); + } else { + _dev_type = dev_type; + } + + int ret = ms_asr_set_dev((int)_dev_type, (char*)device_name.c_str()); + if(ret) { + log::error("set devive error!\n"); + _dev_type = SpeechDevice::DEVICE_NONE; + return err::ERR_NOT_IMPL; + } + + return err::ERR_NONE; + } + + void Speech::dec_deinit(nn::SpeechDecoder decoder) + { + ms_asr_decoder_cfg((int)decoder, NULL , NULL, 0); + switch (decoder) + { + case nn::SpeechDecoder::DECODER_RAW: + _decoder_raw = false; + break; + case nn::SpeechDecoder::DECODER_DIG: + _decoder_dig = false; + break; + case nn::SpeechDecoder::DECODER_LVCSR: + _decoder_lvcsr = false; + break; + case nn::SpeechDecoder::DECODER_KWS: + _decoder_kws = false; + break; + case nn::SpeechDecoder::DECODER_ALL: + _decoder_raw = false; + _decoder_dig = false; + _decoder_lvcsr = false; + _decoder_kws = false; + break; + default: + log::error("not support decoder %d.", decoder); + throw err::Exception(err::ERR_NOT_IMPL); + } + } + + err::Err Speech::raw(std::function>, int)> callback) + { + if (this->dev_type() == SpeechDevice::DEVICE_NONE) { + log::error("please init a type of audio device first."); + return err::ERR_NOT_INIT; + } + + _raw_callback = callback; + int ret = ms_asr_decoder_cfg((int)nn::SpeechDecoder::DECODER_RAW, raw_callback_wrapper , NULL, 0); + if (ret != 0) { + log::error("raw decoder init error."); + return err::ERR_RUNTIME; + } else { + _decoder_raw = true; + return err::ERR_NONE; + } + } + + bool Speech::raw() { return _decoder_raw; } + + err::Err Speech::digit(int blank, std::function callback) + { + if (this->dev_type() == SpeechDevice::DEVICE_NONE) { + log::error("please init a type of audio device first."); + return err::ERR_NOT_INIT; + } + + size_t decoder_args[10]; + decoder_args[0] = blank; + + _digit_callback = callback; + + int ret = ms_asr_decoder_cfg((int)nn::SpeechDecoder::DECODER_DIG, digit_callback_wrapper, &decoder_args, 1); + if (ret != 0) { + log::error("digit decoder init error."); + return err::ERR_RUNTIME; + } else { + _decoder_dig = true; + return err::ERR_NONE; + } + } + + bool Speech::digit() { return _decoder_dig; } + + err::Err Speech::kws(std::vector kw_tbl, std::vector kw_gate, std::function, int)> callback, bool auto_similar) + { + if (this->dev_type() == SpeechDevice::DEVICE_NONE) { + log::error("please init a type of audio device first."); + return err::ERR_NOT_INIT; + } + + if (kw_tbl.size() != kw_gate.size()) { + log::error("kw_tbl num must equal to kw_gate num."); + return err::ERR_ARGS; + } + + size_t decoder_args[10]; + char** _kw_tbl = new char*[kw_tbl.size()]; + for (size_t i = 0; i < kw_tbl.size(); ++i) { + _kw_tbl[i] = new char[kw_tbl[i].size() + 1]; + std::strcpy(_kw_tbl[i], kw_tbl[i].c_str()); + } + float* _kw_gate = new float[kw_gate.size()]; + for (size_t i = 0; i < kw_gate.size(); ++i) { + _kw_gate[i] = kw_gate[i]; + } + + decoder_args[0] = (size_t)_kw_tbl; + decoder_args[1] = (size_t)_kw_gate; + decoder_args[2] = kw_tbl.size(); + decoder_args[3] = auto_similar; + _kws_callback = callback; + int ret = ms_asr_decoder_cfg((int)nn::SpeechDecoder::DECODER_KWS, kws_callback_wrapper, &decoder_args, 3); + + delete[] _kw_gate; + for (size_t i = 0; i < kw_tbl.size(); ++i) { + delete[] _kw_tbl[i]; + } + delete[] _kw_tbl; + + if (ret != 0) { + log::error("kws decoder init error."); + return err::ERR_RUNTIME; + } else { + _decoder_kws = true; + return err::ERR_NONE; + } + } + + bool Speech::kws() { return _decoder_kws; } + + err::Err Speech::lvcsr(const string &sfst_name, const string &sym_name, + const string &phones_txt, const string &words_txt, + std::function, int)> callback, + float beam, float bg_prob, float scale, bool mmap) + { + if (this->dev_type() == SpeechDevice::DEVICE_NONE) { + log::error("please init a type of audio device first."); + return err::ERR_NOT_INIT; + } + + size_t decoder_args[10]; + decoder_args[0] = (size_t)sfst_name.c_str(); + decoder_args[1] = (size_t)sym_name.c_str(); + decoder_args[2] = (size_t)phones_txt.c_str(); + decoder_args[3] = (size_t)words_txt.c_str(); + memcpy(&decoder_args[4], &(beam), sizeof(float)); + memcpy(&decoder_args[5], &(bg_prob), sizeof(float)); + memcpy(&decoder_args[6], &(scale), sizeof(float)); + decoder_args[7] = mmap; + _lvcsr_callback = callback; + + int ret = ms_asr_decoder_cfg((int)nn::SpeechDecoder::DECODER_LVCSR, lvcsr_callback_wrapper, &decoder_args, 8); + if (ret != 0) { + log::error("lvcsr decoder init error."); + return err::ERR_RUNTIME; + } else { + _decoder_lvcsr = true; + return err::ERR_NONE; + } + } + + bool Speech::lvcsr() { return _decoder_lvcsr; } + + int Speech::run(int frame) + { + if (!(raw() || digit() || kws() || lvcsr())) { + log::error("please init at least one decoder before running."); + return 0; + } + + raw_callback = this->_raw_callback; + digit_callback = this->_digit_callback; + kws_callback = this->_kws_callback; + lvcsr_callback = this->_lvcsr_callback; + + int frames = ms_asr_run(frame); + + // Set it to nullptr, otherwise MaixPy cannot exit properly. + raw_callback = nullptr; + digit_callback = nullptr; + kws_callback = nullptr; + lvcsr_callback = nullptr; + + return frames; + } + + void Speech::clear() + { + ms_asr_clear(); + } + + int Speech::frame_time() + { + return ms_asr_get_frame_time(); + } + + err::Err Speech::similar(const string &pny, std::vector similar_pnys) + { + if (this->kws() != true) { + log::error("please init kws decoder first."); + return err::ERR_RUNTIME; + } + + char** _similar_pnys = new char*[similar_pnys.size()]; + for (size_t i = 0; i < similar_pnys.size(); ++i) { + _similar_pnys[i] = new char[similar_pnys[i].size() + 1]; + std::strcpy(_similar_pnys[i], similar_pnys[i].c_str()); + } + + int ret = ms_asr_kws_reg_similar((char*)pny.c_str(), _similar_pnys, similar_pnys.size()); + + for (size_t i = 0; i < similar_pnys.size(); ++i) { + delete[] _similar_pnys[i]; + } + delete[] _similar_pnys; + + if (ret != 0) { + log::error("set similar pny error."); + return err::ERR_RUNTIME; + } else { + return err::ERR_NONE; + } + } + + void Speech::skip_frames(int num) { + _is_skip_frames = true; + this->run(num); + _is_skip_frames = false; + } + + void Speech::deinit() + { + _dev_type = SpeechDevice::DEVICE_NONE; + _decoder_raw = false; + _decoder_dig = false; + _decoder_lvcsr = false; + _decoder_kws = false; + _raw_callback = nullptr; + _digit_callback = nullptr; + _kws_callback = nullptr; + _lvcsr_callback = nullptr; + ms_asr_deinit(); + sys::register_default_signal_handle(); + } +} \ No newline at end of file