If you hit CTRL^C during playback, what happens?
My first thought is that if CTRL^C doesn't work (or exits the whole program) - you would want to handle the signal. See
Signals.
If you want another option, you may want to fork and exec a child, then wait and listen for a certain key to kill the child.
Just a couple of thoughts, I'm sure there are many many others.
--------------
It's sad that a family can be torn apart by such a such a simple thing as a pack of wild dogs