Skip to content

Commit

Permalink
audio: increase HTTP stream timeout after send
Browse files Browse the repository at this point in the history
In commit af99de4 ("audio: reduce HTTP Stream timeout to 2s") we
changed the HTTP Stream timeout to 2s so we can indicate early when
we're not able to connect to WIS.

Unfortunately ESP HTTP Client only has a single timeout value, and we
now also abort the HTTP connection to WIS if inference takes longer than
2s. We want to keep the timeout reasonably low, as having to wait for a
STT response for too long isn't great for UX, but 2s makes it impossible
for people to test Willow with a local WIS on CPU or slow GPU.

Leave the initial timeout at 2s, but increase it to 10s on the
HTTP_STREAM_POST_REQUEST event, which happens after the HTTP client sent
header and body to WIS, but before fetching the response.
  • Loading branch information
stintel committed Dec 15, 2023
1 parent a82ef37 commit d42949f
Showing 1 changed file with 1 addition and 0 deletions.
1 change: 1 addition & 0 deletions main/audio.c
Original file line number Diff line number Diff line change
Expand Up @@ -518,6 +518,7 @@ static esp_err_t hdl_ev_hs_to_api(http_stream_event_msg_t *msg)

case HTTP_STREAM_POST_REQUEST:
ESP_LOGI(TAG, "WIS HTTP client HTTP_STREAM_POST_REQUEST, write end chunked marker");
esp_http_client_set_timeout_ms(http, 10 * 1000);
if (esp_http_client_write(http, "0\r\n\r\n", 5) <= 0) {
return ESP_FAIL;
}
Expand Down

0 comments on commit d42949f

Please sign in to comment.