2013-11-12 2 views
0

У меня есть кодирование видеофайлов MP4 на разных битрейтах, чтобы быть совместимым как для iOS на Wifi, так и в Edge. Я хотел бы, чтобы они прогрессивно загружались с моего сайта, используя тег HTML5.HTML-тег видео с несколькими видеороликами с битрейтом?

video_big.mp4 кодируется для прошивки на Wi-Fi
H.264 Базового уровень, 25fps, 640x480, 500 кб

video_small.mp4 кодируется для прошивки на EDGE/3G
H.264 базовой линии, 25fps, 320x240, 56kbps

Мой вопрос: Как я могу написать тег видео HTML5 служить video_big.mp4 к устройствам IOS, которые подключены через Wi-Fi, а также служить video_small.mp4 устройствам iOS, которые подключены через Edge/3G? Я работаю на сервере PHP/Apache. Спасибо :)

ответ

2

К сожалению, вы не можете, так как в настоящее время нет надежного метода определения типа (или скорости) сети, к которой подключено устройство.

На данный момент лучшее, что вы можете сделать, это полагаться на медиа-запросы, чтобы предположить (возможно, неправильно), что маленький экран означает небольшое устройство и, следовательно, дает им более низкое разрешение, независимо от скорости их сетевого подключения.

Например:

<video controls> 
    <source src="video_small.mp4" type="video/mp4" media="all and (max-width:360px)"> 
    <source src="video_big.mp4 " type="video/mp4"> 
</video> 
+0

Моя основная идея заключается в том, чтобы служить правильный видео файл с нужной скоростью соединения, а не служить небольшое видео на небольших устройствах экрана. В любом случае, большое спасибо. – Joanne

+0

Я знаю, но, как я уже сказал, к сожалению, это невозможно сейчас, поэтому я только показал вам, что можно сделать, потенциально. –

+0

Ну, я точно знаю, почему это не должно быть возможно. Возможно обнаружение буфера и, следовательно, скорость загрузки видео. – dude

Смежные вопросы