aqui esta
MP3 no funcionaba la precarga ya que no habia nada que la checara, es decir tu funcion precarga solo se ejecutaba una vez y no lo hacia varias veces para estar checando los datos cargados, entonces lo hice con un setInterval para que esa funcion se ejecute varias veces, espero entiendas y sino pregunta lo importante aqui en estos foros es enterder (checa los nombres de los mp3 ya que los cambie les puse uno.mp3 dos.mp3 etc...).
pd: si quieres sube tu archivo ya corregido a un servidor y postealo en recursos hay personas que luego buscan este tipo de cosas. (bajalo pronto ya que en cualquier momento me cambio de servidor).