@@ -396,32 +396,32 @@ void ESP32_VS1053_Stream::_playFromRingBuffer()
396
396
}
397
397
398
398
const auto START_TIME_MS = millis ();
399
- const auto MAX_TIME_MS = 10 ;
399
+ const auto MAX_TIME_MS = 5 ;
400
400
size_t bytesToDecoder = 0 ;
401
401
while (_remainingBytes && _vs1053->data_request () && millis () - START_TIME_MS < MAX_TIME_MS)
402
402
{
403
403
size_t size = 0 ;
404
404
uint8_t *data = (uint8_t *)xRingbufferReceiveUpTo (_ringbuffer_handle, &size, pdMS_TO_TICKS (0 ), VS1053_PLAYBUFFER_SIZE);
405
- static auto ringbufferEmpty = 0 ;
405
+ static auto bufferEmptyStartTimeMs = 0 ;
406
406
if (!data)
407
407
{
408
- if (!ringbufferEmpty )
408
+ if (!bufferEmptyStartTimeMs )
409
409
{
410
- ringbufferEmpty = millis ();
411
- ringbufferEmpty += ringbufferEmpty ? 0 : 1 ;
410
+ bufferEmptyStartTimeMs = millis ();
411
+ bufferEmptyStartTimeMs += bufferEmptyStartTimeMs ? 0 : 1 ;
412
412
log_i (" No buffer data available" );
413
413
return ;
414
414
}
415
415
const auto BAILOUT_MS = 2000 ;
416
- if (millis () - ringbufferEmpty > BAILOUT_MS)
416
+ if (millis () - bufferEmptyStartTimeMs > BAILOUT_MS)
417
417
{
418
418
log_e (" Buffer empty for %i ms, bailing out..." , BAILOUT_MS);
419
419
_remainingBytes = 0 ;
420
420
return ;
421
421
}
422
422
return ;
423
423
}
424
- ringbufferEmpty = 0 ;
424
+ bufferEmptyStartTimeMs = 0 ;
425
425
_vs1053->playChunk (data, size);
426
426
vRingbufferReturnItem (_ringbuffer_handle, data);
427
427
bytesToDecoder += size;
@@ -433,7 +433,7 @@ void ESP32_VS1053_Stream::_playFromRingBuffer()
433
433
void ESP32_VS1053_Stream::_streamToRingBuffer (WiFiClient *const stream)
434
434
{
435
435
const auto START_TIME_MS = millis ();
436
- const auto MAX_TIME_MS = 10 ;
436
+ const auto MAX_TIME_MS = 5 ;
437
437
size_t bytesToRingBuffer = 0 ;
438
438
while (stream && stream->available () && _musicDataPosition < _metaDataStart && millis () - START_TIME_MS < MAX_TIME_MS)
439
439
{
@@ -511,7 +511,7 @@ void ESP32_VS1053_Stream::_handleStream(WiFiClient *const stream)
511
511
void ESP32_VS1053_Stream::_chunkedStreamToRingBuffer (WiFiClient *const stream)
512
512
{
513
513
const auto START_TIME_MS = millis ();
514
- const auto MAX_TIME_MS = 10 ;
514
+ const auto MAX_TIME_MS = 5 ;
515
515
size_t bytesToRingBuffer = 0 ;
516
516
while (stream && stream->available () && _bytesLeftInChunk && _musicDataPosition < _metaDataStart && millis () - START_TIME_MS < MAX_TIME_MS)
517
517
{
0 commit comments