Looks good, but cannot accept, as I only accept contributions through git. It's not that hard
About your patch, you would probably want to stop the timer when then the timer has been triggered, or do you want it to repeatly go to next track ?