Further control and manipulation of audio files

I would like to be able to access the "playback time elapsed" value (in milliseconds?) of an audio (music or sound) file, and/or status of whether or not the audio file completed playing.
As I understand it, the return value of a PlayMusic/PlaySound/PlaySound2 is the audio channel that it's set up on. So, if one could say getSoundStatus(channel) and it could give back a value in milliseconds to show how far along the song/sound effect has played, or 0 if the audio file has completed playing.
Perhaps I'm answering my own question, but I suppose it's similar to a Timer function? If that's the case, perhaps I should just start a Timer of how long the audio file is? I was just hoping for something more automated, and I don't know if creating too many timers would affect the performance of a game.
As I understand it, the return value of a PlayMusic/PlaySound/PlaySound2 is the audio channel that it's set up on. So, if one could say getSoundStatus(channel) and it could give back a value in milliseconds to show how far along the song/sound effect has played, or 0 if the audio file has completed playing.
Perhaps I'm answering my own question, but I suppose it's similar to a Timer function? If that's the case, perhaps I should just start a Timer of how long the audio file is? I was just hoping for something more automated, and I don't know if creating too many timers would affect the performance of a game.