What I am suggesting is to just use a service like soundcloud to host your mp3's. For one, if you are using a shared server or even low end dedicated server, it could be slow. Soundcloud and the like are on a cdn meaning if your listener is in California, they are serviced by a server in CA and if in New York, a server in NY. You only need to upload once. From there, I believe the proper feed is already taken care of and it is meant for sharing mp3's and sound files.

Otherwise, the only thing you can figure out automatically is the size of the file. You can experiment and see if there is a correlation with the size of your files and the length of the recording. Otherwise, your users should note the length of the recording and add that to your database so you can output to xml.