HTML5 видео, предпочтительные кодеки и косвенная доставка - PullRequest
0 голосов
/ 25 декабря 2010

В настоящее время я пытаюсь создать страницу видео html5 с ограниченным доступом к видео. Поэтому я хочу выложить видео из корневого веб-каталога и заставить скрипт проверить учетную запись пользователя и доставить видео.

Если я помещаю файлы .ogv (theora) и .mp4 (h264) только в webroot и использую тег видео с несколькими тегами источника, они работают во всех протестированных браузерах: Firefox (ogg), Chrome (ogg), IE9 (mp4), Safari (mp4), Opera (ogg)

<video id="currentVideo" controls width=640>
<source type='video/ogg; codecs="theora, vorbis"' src="http://mysite/1.ogv" />
<source type='video/mp4; codecs="avc1.64001E, mp4a.40.2"' src="http://mysite/2.mp4" />
</video>

Теперь возникает первый вопрос: почему в Chrome используется формат ogg? С видео в формате mp4 он проходит намного быстрее и поддерживает видео в формате mp4 ... Есть ли способ пометить формат как «предпочтительный формат»?

Теперь, если я выложу файлы из своего webroot и использую скрипт php, как показано ниже:

download.php:

$path=explode('/',$_SERVER['PATH_INFO']);
if (sizeof($path)>1) {
        $inf=explode('.',$path[1]);
        $id=intval($inf[0]);
        $type=$inf[1];
        $ctype='';
        if ($type=='ogv') {
                $ctype='video/ogg';
        } elseif ($type=='mp4') {
                $ctype='video/mp4';
        }
        $fname=sprintf('/var/outsidewebroot/videos/test.%s',$type);
        http_send_content_type($ctype);
        http_throttle(0.1);
        http_send_file($fname);
}

, который должен выдавать файл, включая поддержку запросов диапазона http.

HTML:

<video id="currentVideo" controls width=640>
<source type='video/ogg; codecs="theora, vorbis"' src="http://mysite/download.php/1.ogv" />
<source type='video/mp4; codecs="avc1.64001E, mp4a.40.2"' src="http://mysite/download.php/2.mp4" />
</video>

Opera больше не может определить продолжительность воспроизведения видео, и что еще хуже: зависание google chrome (и его бесплатного клона железа) (mac и windows) - сам chrome продолжает работать, но вкладка загрузки сайта заблокирована

1 Ответ

2 голосов
/ 25 декабря 2010

Есть ли способ пометить формат как «предпочтительный формат»?

Перечислите их в порядке предпочтения. Сначала у вас есть ogg, поэтому он считается предпочтительным.

<video id="currentVideo" controls width=640>
<source type='video/mp4; codecs="avc1.64001E, mp4a.40.2"' src="http://mysite/2.mp4" />
<source type='video/ogg; codecs="theora, vorbis"' src="http://mysite/1.ogv" />
</video>
...