"on_end" appears to be called before "on_tts_stream_end" usually this is fine because the previous yaml would wait for the speaker to stop playing to continue. but if the speaker has not started playing in the 500ms delay, then you get a race and we try to end before we actually start outputting audio
this can cause the system to become unstable, and output "Speaker buffer full, trying again next loop" over and over and over again for a long time.
"on_end" appears to be called before "on_tts_stream_end" usually this is fine because the previous yaml would wait for the speaker to stop playing to continue. but if the speaker has not started playing in the 500ms delay, then you get a race and we try to end before we actually start outputting audio
this can cause the system to become unstable, and output "Speaker buffer full, trying again next loop" over and over and over again for a long time.
tested with esphome 2024.04