Параметры матрицы URL и IOS - PullRequest
0 голосов
/ 12 декабря 2011

У меня проблема с видео HTML 5 на iPad. Оно работает во всех основных браузерах. Я разместил видео на Apache Tomcat и попробуйте в ipad. Это хорошо работает. Но мне нужно воспроизвести URL, который с параметрами матрицы в iPad.

Было бы замечательно, если бы кто-нибудь сказал мне, как я могу разместить видео в Apache tomcat и добавить к нему некоторые параметры матрицы. Это будет работать, если мы добавим некоторые параметры нежелательного запроса с помощью URL. Если мы добавим матрицу таким же образом, он не будет работать.

есть ли какие-то спецификации, гласящие, что параметры матрицы не будут работать на iPad?

1 Ответ

0 голосов
/ 16 июля 2013

Этот вопрос немного устарел, но наше исследование может помочь кому-то еще, кто может пройти через это.

Мы потратили некоторое время на диагностику проблем с воспроизведением контента на iOS / QuickTime с использованием URL-адресов с параметрами матрицы. В частности, мы пытались воспроизвести контент HLS, используя URL-адреса вида 'http://myserver.mydomain.com/path;a=b.m3u8'

Видео будет нормально воспроизводиться в первый раз, а затем выйдет из строя во второй (и любой другой) раз. Если параметры матрицы отсутствовали, видео воспроизводилось нормально каждый раз.

В конце концов мы пришли к выводу, что проблема заключается в том, что iOS / QuickTime записывает неверные записи в кеш. Итак, когда сервер возвращал контент в первый раз, это было как отсутствие кэша на iOS / QuickTime, поэтому он работал нормально. В следующий раз сервер вернул 304 (не измененный - то есть попадание в кеш), iOS / QuickTime попытался извлечь его из кеша, но это не удалось, так что видео не воспроизводилось.

Наше решение состояло в том, чтобы предотвратить кэширование клиента, установив для заголовка Cache-Control значение no-cache. Другим решением было бы не использовать матричные параметры.

Обратите внимание, что с точки зрения HLS эта ошибка, по-видимому, возникает только при первом загруженном файле m3u8 - URL-адреса m3u8, перечисленные в первом m3u8, которые содержат параметры матрицы, как представляется, работают нормально.

...