Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flash视频播放器VS HTML5视频_Flash_Xhtml_Html_Html5 Video - Fatal编程技术网

Flash视频播放器VS HTML5视频

Flash视频播放器VS HTML5视频,flash,xhtml,html,html5-video,Flash,Xhtml,Html,Html5 Video,我需要添加一个视频播放器来播放网页上的视频。通常我在swfobject库的帮助下使用Flash播放器。如果flashplayer和javascript都已启用,则该选项有效 我目前正在使用XHTML1.0严格的doctype 我的问题是我是否可以将我的doctype更改为HTML5doctype并使用HTML5video添加视频播放器。对于不支持HTML5的浏览器,我可以使用javascript 在这种情况下,在受支持的浏览器中,视频将在没有Flash播放器和javascript的情况下工作,而

我需要添加一个视频播放器来播放网页上的视频。通常我在swfobject库的帮助下使用Flash播放器。如果flashplayer和javascript都已启用,则该选项有效

我目前正在使用XHTML1.0严格的doctype

我的问题是我是否可以将我的doctype更改为HTML5doctype并使用HTML5video添加视频播放器。对于不支持HTML5的浏览器,我可以使用javascript

在这种情况下,在受支持的浏览器中,视频将在没有Flash播放器和javascript的情况下工作,而在不受支持的浏览器中,视频将在js支持的情况下工作

这可能吗?这是个好主意吗?

“HTML5”(在使用HTML5的过程中,我将目前主要浏览器供应商的实现汇总在一起)还没有为
商定的编解码器,因此不同的浏览器使用不同的编解码器;有些是专有的,有些不是。您现在可以使用HTML5 doctype,也可以使用
,但是您需要为Safari使用H.264编解码器,为Firefox使用Ogg/Theora,如果以上都没有,则需要使用Flash作为备用。哦,如果没有安装Flash,不要忘记一张图片,如果图片被禁用,不要忘记文字,如果

所以有点像

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

...

在其他新闻中,我很喜欢JW博客上的这篇文章。

首先,你可能想看看 如果你还没见过它

无论如何,如果您想提供自定义闪存替代方案,这应该是可行的:

<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>

什么,没有flash+没有html5?疯子
嵌入SWF(…,“flashAlternative”,…);
显然,如果你想使用youtube/vimeo/。。。作为备选方案,您只需放置嵌入代码而不是脚本标记:

<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视频,如果你不想为带宽负担付费,你可能更喜欢向所有拥有flash的人展示youtube视频,并且只有在无法使用html5的情况下才可以使用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和smush html5视频中复制嵌入代码,您需要修改它,使其看起来与上面的一样(数据和电影属性都指定swf文件的源,不需要嵌入标记!)

youtube,vimeo etc提供HTML5播放器?支持H.264,并提供Opera和Firefox的实验版本:你是说当从iOS设备查看youtube时自动切换?你需要通过javascript检测用户代理,并在必要时插入视频标记,反之亦然。完整性:我只测试了第二个和第三个例如,您可能需要稍微修改swfobject示例以使其正常工作,但您应该明白这一点!