#html #ios #video #html5-video
Вопрос:
Имея такую странную проблему, у меня есть mp4, встроенный с использованием элемента html — видео. Он напрямую ссылается на файл mp4, вот так:
lt;video controls playsinline preload="metadata"gt; lt;source type="video/mp4" src="https://example.com/video.mp4#t=0.001"gt; lt;/videogt;
Иногда кажется, что это случается, а не с другими, но сейчас все, что я получаю на своем iPhone iOS 14.6 и симуляторе iOS 15, — это видео, в котором говорится, что оно длится 0 секунд. То же самое видео отлично воспроизводится в chrome, и оно даже отлично воспроизводится в safari на моем iMac, это просто iPhone. Это конкретное видео преобразуется из WebM в mp4 с помощью FFmpeg, если это как-то влияет.
Также просто в качестве примечания и еще один вопрос: я хочу показать предварительный просмотр видео, но снова на iOS использование #t=0,001 на самом деле не работает, просто отображается белая рамка, я предполагаю, что Apple снова изменила ситуацию и задалась вопросом, есть ли у кого-нибудь новое решение? — Очевидно, что это происходит только тогда, когда тег видео действительно работает.
Похоже, что с байтовыми запросами в safari на iphone что-то не так. Скриншот…
скриншот ошибок в мобильном safari
Обновить
Я думал, что решил эту проблему путем потоковой передачи видео с помощью php, но это не так. Это действительно временная проблема. Кажется, это можно найти с короткими 10-секундными видео, но когда они получают что-то вроде 30 секунд или выше, он начинает не транслировать его; но видео в порядке, я могу загрузить файл и воспроизвести его на своем компьютере.
Я вижу это в консоли отладки в safari для iphone:
Failed to load resource: Plug-in handled load
Что это значит? Это сводит меня с ума, все отлично работает в любом другом браузере, только не на iphone (даже chrome на iphone не работает), так что это должно быть как-то связано с iOS
Комментарии:
1. Можете ли вы дать ссылку на видео — это поможет разобраться в проблеме?
2. может ли это быть проблема с CORS — видео находится в другом домене?