Флеш видео плеер против HTML 5 видео - PullRequest
2 голосов
/ 12 июня 2010

Мне нужно добавить видеоплеер для воспроизведения видео на веб-странице.обычно я использую Flash player с помощью библиотеки swfobject.который работает, если включены flash player и javascript.

В настоящее время я использую строгий тип XHTML 1.0.

Мой вопрос: могу ли я просто изменить мой тип документа на тип документа HTML 5 и добавить видеоплеер, используя видео HTML 5.для браузера, который не поддерживает HTML5, я могу использовать javascript.

в этом состоянии в поддерживаемом браузере Видео будет работать без Flash player и javascript, а в неподдерживаемом браузере - с поддержкой js.

Это возможно?Это хорошая идея?

Ответы [ 2 ]

2 голосов
/ 08 июля 2010

Прежде всего вы можете взглянуть на http://camendesign.com/code/video_for_everybody, если вы еще не сталкивались с этим.

в любом случае, это должно работать, если вы хотите предоставить собственную альтернативу flash:

<video width="..." height="..." controls="controls" preload="none">
  <source src="video/demo.mp4"  type="video/mp4" />
  <source src="video/demo.webm"  type="video/webm" />
  <source src="video/demo.ogv"  type="video/ogg" />
  <span id="flashAlternative">what, no flash+no html5? crazy!</span>
</video>
<script>
  swfobject.embedSWF( ..., "flashAlternative", ... ); 
</script>

очевидно, если вы хотите использовать видео youtube / vimeo / ... в качестве альтернативы, вы простопоместите код для вставки вместо тега script:

<video width="..." height="..." controls="controls" preload="none">
  <source src="video/demo.mp4"  type="video/mp4" />
  <source src="video/demo.webm"  type="video/webm" />
  <source src="video/demo.ogv"  type="video/ogg" />
  <!-- embedding code here -->
</video>

оба эти решения предпочитают видео html5 вместо видео flash, если вы не хотите платить за пропускную способность, вы можете предпочесть показывать YouTubeвидео для всех людей, у которых есть вспышка, и только возврат к html5, если это не доступно.это будет выглядеть примерно так:

<object type="application/x-shockwave-flash" width="..." height="..." data="...">
    <param name="movie" value="..." />
    <video width="..." height="...">
        <source src="..." type="video/mp4" />
        <source src="..." type="video/webm" />
        <source src="..." type="video/ogg" />
        <!-- here comes the alternative for people who have neither flash, nor html5 -->
    </video>
</object>

обратите внимание, что вы не можете просто скопировать код для вставки из youtube / video и вставить html5-видео внутрь, вам нужно изменить его так, чтобы он выглядел как выше (Атрибут data и movie указывает источник SWF-файла, тег вставки не требуется!).

2 голосов
/ 12 июня 2010

«HTML5» (при использовании HTML5 я пока сводил воедино реализации основных поставщиков браузеров) пока не имеет согласованного кодека для <video>, поэтому разные браузеры используют разные кодеки;некоторые проприетарные, некоторые нет.Вы можете использовать тип документа HTML5 и использовать <video> сейчас, но вам потребуется кодек H.264 для Safari, Ogg / Theora для Firefox и Flash в качестве запасного варианта, если ничего из вышеперечисленного.Да, и не забудьте изображение, если Flash не установлен, и текст, если изображения отключены, и рукописное письмо пользователю, если ...

Так что-то вроде ...

<!DOCTYPE html>
...
<video>
    <source src='your_movie.ogv'  />
    <source src='your_movie.m4v'  />
</video>

В других новостях мне понравился этот пост в блоге JW под названием Safari и Quicktime не являются стандартами .

...