Clear leftover audio data in SAPI5 SonicStream (#17972)
Partial fix of #17967.
Summary of the issue:
When rate boost is enabled, a leftover audio fragment might be played when cancelling an utterance and starting another utterance.
Description of user facing changes
No leftover audio fragment will be played.
Description of development approach
When cancel is being called, flush the sonicStream, then use readShort to read and discard the audio data inside, so that leftover audio won't be mixed with the next utterance.