Estoy intentando utilizar el siguiente código para recuperar archivos de vídeo para jugar a un usuario:problemas de reproducción de archivos de vídeo utilizando MVC FileStream
public class VideoController : Controller
{
public VideoResult GetMP4Video(string videoID)
{
if (User.Identity.IsAuthenticated)
{
string clipLocation = string.Format("{0}\\Completed\\{1}.mp4", ConfigurationManager.AppSettings["VideoLocation"].ToString(), videoID);
using (FileStream stream = new FileStream(clipLocation, FileMode.Open))
{
FileStreamResult fsResult = new FileStreamResult(stream, "video/mp4");
VideoResult result = new VideoResult(ReadFully(fsResult.FileStream), "video/mp4");
return result;
}
}
else
{
return null;
}
}
private static byte[] ReadFully(Stream input)
{
byte[] buffer = new byte[32 * 1024];
using (MemoryStream ms = new MemoryStream())
{
int read;
while ((read = input.Read(buffer, 0, buffer.Length)) > 0)
{
ms.Write(buffer, 0, read);
}
return ms.ToArray();
}
}
}
Para mostrar al cliente que estoy usando Elementos Mediático:
<!-- Video Player Here -->
<video width="640" height="360" poster="@Url.Content(string.Format("~/Videos/{0}_2.jpg", Model.VideoID))" controls="controls" preload="none">
<!-- MP4 for Safari, IE9, iPhone, iPad, Android, and Windows Phone 7 -->
<source type="video/mp4" src="@Url.Action("GetMP4Video", "Video", new { videoID = Model.VideoID })" />
<!-- Flash fallback for non-HTML5 browsers without JavaScript -->
<object width="320" height="240" type="application/x-shockwave-flash" data="@Url.Content("~/Scripts/ME/flashmediaelement.swf")">
<param name="movie" value="@Url.Content("~/Scripts/ME/flashmediaelement.swf")" />
<param name="flashvars" value="controls=true&[email protected]("GetMP4Video", "Video", new { videoID = Model.VideoID })" />
<!-- Image as a last resort -->
<img src="myvideo.jpg" width="320" height="240" title="No video playback capabilities" />
</object>
</video>
El problema es que el archivo no parece reproducirse o al menos no consistentemente. También parece que buscar en el video tampoco funciona bien. Supongo que mi pregunta es, ¿es esta una manera aceptable de mostrar un video a un usuario? Si es así, ¿qué tengo mal? Creo que es importante que soy muy nuevo en el video y estoy aprendiendo mucho sobre la marcha. Cualquier ayuda sería apreciada.
Ahh whata buena pregunta el hombre que estoy haciendo lo mismo para! un proyecto propio ... no podemos especificar el archivo directo, entonces, ¿cómo podemos server streams mp4? – ppumkin