Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

开启http_write的pipeline时,http_open花费的时间段内会不会丢包? #1349

Closed
casitelwithdean opened this issue Jan 14, 2025 · 1 comment

Comments

@casitelwithdean
Copy link

IDF 5.4 RC-1
ADF Master
使用芯片是 esp32 s3 wroom1 n16r8
我使用的pipeline是 i2s_read->http_write,每次audio_pipeline_run的时候,esp_http_client_open好像要花费一些时间(500ms~1s)左右,那么数据到达 if (msg->event_id == HTTP_STREAM_ON_REQUEST)的时候可能距离“audio_pipeline_run”已经长达1秒左右,这一秒时间内的音频数据是不是就凭空消失丢包,不传送了呢?
有没有方式可以将这一秒的录音数据仍然传给HTTP_STREAM_ON_REQUEST,从而使audio_pipeline_run后的音频数据完全不丢包呢?
谢谢

@github-actions github-actions bot changed the title 在开启pipeline的时候,http open要花费可能一秒左右的时间 在开启pipeline的时候,http open要花费可能一秒左右的时间 (AUD-5990) Jan 14, 2025
@casitelwithdean casitelwithdean changed the title 在开启pipeline的时候,http open要花费可能一秒左右的时间 (AUD-5990) 开启http_write的pipeline时,http_open花费的时间段内会不会丢包? Jan 14, 2025
@jason-mao
Copy link
Collaborator

理论上是不会丢的,I2S read 是一个独立的任务,它被audio_pipeline_run启动后,就开始读取数据缓存在ringbuffer,HTTP run 后就从ringbuffer发走。你是遇到录音数据丢失的吗?esp_http_client_open的时间消耗,你可以把http_client 的log 打开,看下是否真实消耗了这么多。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants