1
完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
使用ESP32-LyraTD-MSC做文字转语音,
再上传语音buffer时,总是宕机。困扰一天也不能解决。 1.分配内存 int num = 3; int sz = 8 * num * 1024 * sizeof(char); int sz1 = 8 * (num+1) * 1024 * sizeof(char); char *buff = (char *)malloc(sz); if (NULL == buff) { ESP_LOGE(TAG, "Memory allocation failed!"); } memset(buff, 0, sz); int max_len = 1 * 1024; char *data = (char *)malloc(max_len); memset(data, 0, max_len); 2.在语音唤醒后,启动录音 while (1) { if (enable_wn) { raw_stream_read(raw_read, (char *)buffer, size * sizeof(short)); if (wakenet->detect(model_wn_data, (int16_t *)buffer) == WAKE_UP) { ESP_LOGI(TAG, "wake up"); enable_wn = false; } } else { ESP_LOGI(TAG, "get voice begin!"); esp_http_client_config_t config = { .url = baidu_asr_url, .event_handler = _http_event_handler, .buffer_size = sz1, .buffer_size_tx = sz1, }; esp_http_client_handle_t client = esp_http_client_init(&config); esp_http_client_set_method(client, HTTP_METHOD_POST); esp_http_client_set_post_field(client, (const char *)buff, sz); esp_http_client_set_header(client, "Content-Type", "audio/pcm;rate=16000"); memset(temp, 0, 128); snprintf(temp, 128, "%d", sz); esp_http_client_set_header(client, "Content-Length", temp); while (1) { err = esp_http_client_perform(client); if (err != ESP_ERR_HTTP_EAGAIN) { break; } } if (err == ESP_OK) { ESP_LOGI(TAG, "HTTPS Status = %d, content_length = %d", esp_http_client_get_status_code(client), esp_http_client_get_content_length(client)); } else { ESP_LOGE(TAG, "Error perform http request %s", esp_err_to_name(err)); } esp_http_client_cleanup(client); enable_wn = true; memset(buff, 0, sz); } } 3.困惑: 变量num 决定了要录音的时间长短,数值为3可以运行,结果如附件3 改为6无法运行,内存分配首先失败了,结果如附件2 4.问题: 如何做一个大的buffer的Post请求?官方如何解决上传语音数据,文字转语音的问题。(网上的有的教程基于早期版本,代码已经无法运行了) |
|
相关推荐
|
|
只有小组成员才能发言,加入小组>>
1143 浏览 1 评论
582浏览 6评论
480浏览 5评论
有没有办法在不使用混杂模式的情况下实现Wifi驱动程序接收缓冲区访问中断呢?
464浏览 5评论
466浏览 4评论
441浏览 4评论
小黑屋| 手机版| Archiver| 德赢Vwin官网 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-23 16:47 , Processed in 1.039357 second(s), Total 75, Slave 59 queries .
Powered by 德赢Vwin官网 网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
德赢Vwin官网 观察
版权所有 © 湖南华秋数字科技有限公司
德赢Vwin官网 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号