不要用esp_websocket_client_send_bin直接发送前导音频,会卡,导致mic声音卡顿,要用环形队列

mic_data_zong0=0;

memcpy(mic_data_zong+1,mac,6);//1-6是设备唯一id

for(int i=0;i<read_len1;i++){

mic_data_zongaddon_sound_buf_len+i=to_VAD_1_pre_audio_dataindex1+i ;

}

size_t total_len = read_len1 + addon_sound_buf_len;

//不要用esp_websocket_client_send_bin直接发送前导音频,会卡,导致mic声音卡顿,要用环形队列:

BaseType_t send_ret =xRingbufferSend(buf_handle, mic_data_zong,

total_len, pdMS_TO_TICKS(2000));

if (send_ret != pdTRUE) {

ESP_LOGE(TAG, "Preamble send001 failed! total_len=%d", total_len);

}

/*

// 直接通过 WebSocket 发送

if (client != nullptr && esp_websocket_client_is_connected(client)) {

if (xSemaphoreTake(ws_mutex, pdMS_TO_TICKS(max_send_wait_time_ms)) == pdTRUE) {

esp_err_t err = esp_websocket_client_send_bin(client,

(const char *)mic_data_zong,

(int)total_len,

portMAX_DELAY);

if (err<0 ) {

ESP_LOGE(TAG, "Preamble send failed: %s", esp_err_to_name(err));//提示是失败,其实发成功了

} else {

ESP_LOGI(TAG, "Preamble sent successfully, len=%d", total_len);

}

xSemaphoreGive(ws_mutex);

} else {

ESP_LOGE(TAG, "Could not take ws_mutex for preamble");

}

} else {

ESP_LOGE(TAG, "WebSocket not connected, preamble dropped");

}

*/

/*

BaseType_t send_ret = xRingbufferSend(buf_handle, mic_data_zong,

pre_len + addon_sound_buf_len, pdMS_TO_TICKS(2000));

ESP_LOGE(TAG, "DEBUG SENDING PREAMBLE!!!,pre_len=%d", pre_len);

if (send_ret != pdTRUE) {

ESP_LOGE(TAG, "Preamble send001 failed! pre_len=%d", pre_len);

}

*/

相关推荐
jianqiang.xue13 小时前
ESP-IDF保姆级入门40|量产烧录与产线测试全解:批量烧录方案/校准流程/功能测试/不良分拣/产线追溯,掌握工业级量产交付全流程
单片机·物联网·esp32
jianqiang.xue19 小时前
ESP-IDF保姆级入门39|固件安全与安全启动全解:签名校验/Flash加密/防回滚/OTP密钥/知识产权保护,掌握工业级固件安全防护体系
单片机·物联网·esp32
jianqiang.xue2 天前
ESP-IDF保姆级入门38|电源管理与锂电池充电全解:充电拓扑/电源路径控制/充放电保护/电量检测/低功耗策略,掌握嵌入式电池供电系统设计
单片机·嵌入式·esp32
jianqiang.xue3 天前
ESP-IDF保姆级入门35|SDMMC高速SD卡全解:SDIO接口/4位高速模式/FATFS文件系统/热插拔检测/磨损均衡,掌握嵌入式大容量存储扩展
单片机·esp32
国产化创客3 天前
创客开发入门(五)Arduino IDE 编程基础
单片机·嵌入式硬件·物联网·esp32
智码看视界4 天前
Edge AI 与 IoT 全栈系列:Edge AI 全栈 2:ESP32 + MQTT + Flink 实时 IoT 数据管道
物联网·flink·esp32·全栈开发·iot平台·实时流处理·edgeai
jianqiang.xue8 天前
收官:从v0.1到“研发新常态“,一套嵌入式智能体的落地与边界
stm32·单片机·物联网·架构·esp32
linnux领域8 天前
面包板供电“插哪都不亮“?一个暗断点引发的排查——硬件新手三板斧
单片机·嵌入式硬件·esp32·arduino·面包板·硬件入门
jianqiang.xue9 天前
审查技能库(上):内存安全四件套
stm32·单片机·物联网·架构·esp32
长江后浪博客10 天前
ESP32-SOLO-1 在 ESP-IDF v5.5 下启动不断重启问题分析与解决
单片机·嵌入式硬件·嵌入式·esp32·freertos·esp-idf