Oof, my audio keeps getting cut off before the last second.
If I guessed correctly, player.IsPlaying() does not account for the hardware and will return false once it has emptied its internal buffer. And makes my program exit prematurely.
Apart from sleeping a duration of BufferSize, is there any way to tell if the player really finished playing?