Кто-нибудь сталкивался с этой проблемой?
Видео, загруженные на веб-сайт ASP.NET MVC5 из браузера на ПК с Windows или с телефона Android, прекрасно воспроизводятся в любом браузере на Android и даже на Windows Mobile, но не отображаются на iPhone.
Код галереи выглядит примерно так:
<div id="link_@fileViewModel.ID" class="row gallery-media-file">
<a href="@Url.Action("GetVideoFile", "File", new {id = fileViewModel.ID})" type="video/mp4" title="@videoViewModel.Title" class="m-0">
<video class="img-responsive">
<source src="@Url.Action("GetVideoFile", "File", new {id = fileViewModel.ID})" type="video/mp4" />
</video>
</a>
Сервер IIS8, на котором установлен кэш маршрутизации запросов приложений для обработки размера сегмента диапазона байтов.
Видеохранится в внутренней базе данных и обслуживается следующим действием:
public void GetVideoFile(Guid id)
{
var file = _fileProcessor.Get(id);
Response.ContentType = file.MimeType;
Response.BinaryWrite(file.Data);
}
Любые идеи ... Я в тупике?
РЕДАКТИРОВАТЬ:
Файлы загружаются с использованиемDropzone.js -> https://www.dropzonejs.com/
EDIT2:
Я также использую галерею blueimp для отображения файлов, но, оказывается, удаляю атрибут:
type="video/mp4"
из тега привязки позволяет воспроизводить видео на iPhone.
К сожалению, оно не показывает стоп-кадр видео, а также воспроизводит без звука. Кроме того, когда атрибут type удаляется из тега привязки, он перестает воспроизводиться в галерее на рабочем столе и Android.
В конечном счете, мне может потребоваться условно отобразить HTML в соответствии с клиентом, но с объемом и видеоизображениемзахват по-прежнему является проблемой.
Следующее помогло, но все равно не радует: HTML5-видео тег не работает в Safari, iPhone и iPad