Las canciones de jPlayer no se cargan correctamente con el método MVC
Si yo usomp3: "/Music/StreamUploadedSongs/1"
en el siguiente código:
var player = new $("#jquery_jplayer_1").jPlayer({
ready: function () {
$(this).jPlayer("setMedia", {
mp3: "/Music/StreamUploadedSongs/1",
});
},
cssSelectorAncestor: "#jp_container_1",
swfPath: "~Scripts/Jplayer/jquery.jplayer.swf",
useStateClassSkin: true,
autoBlur: false,
keyEnabled: true
}
});
Esto es lo que parece, puedes ver que jplayer no se mueve correctamente las horas (se superponen) y también la barra de búsqueda / reproducción no funciona aunque la canción todavía se puede reproducir:
Marcado HTML:<audio id="jp_audio_0" preload="metadata" src="http://localhost:6060/Music/StreamUploadedSongs/1"></audio>
Controlador de música:
public ActionResult StreamUploadedSongs(int id)
{
byte[] song = db.UploadedSongs.Where(x => x.Id == id).FirstOrDefault().SongBytes;
return File(song, "audio/*");
}
Si cambio la propiedad mp3 a esto en su lugar:mp3: "http://www.jplayer.org/audio/mp3/TSP-01-Cro_magnon_man.mp3"
entonces funciona perfectamente
var player = new $("#jquery_jplayer_1").jPlayer({
ready: function () {
$(this).jPlayer("setMedia", {
mp3: "http://www.jplayer.org/audio/mp3/TSP-01-Cro_magnon_man.mp3",
});
},
cssSelectorAncestor: "#jp_container_1",
swfPath: "~Scripts/Jplayer/jquery.jplayer.swf",
useStateClassSkin: true,
autoBlur: false,
keyEnabled: true
}
});
Así es como se ve, funcionando correctamente, la barra de búsqueda / reproducción funciona y jplayer ha movido el tiempo a las posiciones correctas:
Marcado HTML:<audio id="jp_audio_0" preload="metadata" src="http://www.jplayer.org/audio/mp3/TSP-01-Cro_magnon_man.mp3"></audio>
Tengo otros jPlayers en otras páginas y es exactamente lo mismo con ellos también.
Editar: Acabo de probar esto:
public string StreamUploadedSongs(int id)
{
string filePath = Server.MapPath(Url.Content("~/Content/TSP-01-Cro_magnon_man.mp3"));
return filePath;
}
Puse el archivo mp3 en ese directorio pero ahora no se reproduce en absoluto. Si pego esto en urlhttp://localhost:6060/Music/StreamUploadedSongs/1034"
simplemente devuelve I: \ Users \ UserName \ Desktop \ MusicSite \ MusicSite \ MusicSite \ Content \ TSP-01-Cro_magnon_man.mp3 en lugar de reproducir la canción.