有没有办法在所有浏览器支持的html中嵌入视频 - 非html5,不使用<video>
标记,不依赖于flash - 可能纯粹是javascript?
答案 0 :(得分:3)
播放视频不仅仅是支持<video>
标记的浏览器。浏览器还应该支持编解码器,音频/视频容器格式(例如; MPEG)和可能的DRM。之前的建议(安装Quicktime,VLC,甚至使用Flash或MS Silverlight)通过使用在浏览器之外运行的某些第三方组件来取消此支持,但仍需要用户安装和配置这些组件。由于这些组件通常是特定于平台的,因此您不会获得任何额外的浏览器支持,只需要很多投诉。您可以完全忘记支持移动设备和平板电脑。
现在几乎所有的平台和浏览器都对<video>
和/或<audio>
标签和编解码器,容器格式和DRM提供了不错的支持。有一些很好的库可以处理抽象回放,DRM,GUI和分析,还有一些可以回退到Flash。
来自Muthu Kumaran的建议; videoJS和MediaElement.js,都是开源的,确实需要做些工作才能起床。运行。其他替代方案是
答案 1 :(得分:1)
有些方法可以在没有<video>
标签或闪光灯的情况下播放视频。但您需要安装特定的软件才能在浏览器中播放视频,如
Apple QuickTIme
在浏览器中显示与QuickTime兼容的内容时,您可以使用HTML与QuickTime浏览器插件或ActiveX控件进行通信。 https://developer.apple.com/library/content/documentation/QuickTime/Conceptual/QTScripting_HTML/QTScripting_HTML_Document/ScriptingHTML.html
VLC网络插件
VLC媒体播放器webplugins是本机浏览器插件,类似于Flash或Silverlight插件,允许在浏览器内播放VLC媒体播放器可以读取的所有视频。 https://wiki.videolan.org/Documentation:WebPlugin/
我不会推荐任何这些。您只需使用<video>
标记即可播放视频。有许多视频库可以支持旧浏览器,例如
Video.js - http://videojs.com/(旧浏览器所需的依赖关系https://github.com/videojs/videojs-flash)
MediaElement.js - http://www.mediaelementjs.com/
答案 2 :(得分:0)
跨浏览器 HTML 视频代码
以下是可用于视频播放的 HTML 示例,它支持 现代 浏览器中的 HTML5 video
标记,但使用适用于较旧 HTML4 浏览器的漂亮视频“后备”代码创建了过去 20 年。
<figure aria-labelledby="videocaption3">
<!-- VIDEO: The HTML5 'video' element is the primary source of the various video fallback elements below. Older browsers like IE 5-8 (using ActiveX) that do not recognize the 'video' HTML5 element will try and load the 'object' element version instead. -->
<video
id="video3"
controls="controls"
preload="metadata"
style="width:320px;height:180px;border:none;outline:none;"
title="My Video"
aria-label="My Video">
<!-- SOURCE: In this old ActiveX version, Microsoft Windows in Internet Explorer used the object ActiveX form while all other browsers used the 'embed' element below as fallback. -->
<source src="video3.mp4" type="video/mp4" />
<source src="video3.ogv" type="video/ogg" />
<!-- OBJECT: In this old ActiveX version, Microsoft Windows in Internet Explorer used the object ActiveX form while all other browsers used the 'embed' element below as fallback. -->
<object
id="object3"
name="object3"
data="video3.wmv"
type="video/x-ms-wmv"
style="width: 320px;height: 180px;border: none;outline: none;"
title="My Video"
aria-label="My Video">
<!-- EMBED: In this old version, non-Internet Explorer, older, non-HTML5 browsers would recognize this fallback 'embed' version element and call their plugins and players to display the file below. Additional fallback in the form of a 'noembed' element with alert text would trigger for those user agents that do not support multimedia or the embed tag (as it was never part of an official HTML release). I recommend you use this old syntax if you are supporting older browsers that do not understand the newer HTML5 elements. -->
<embed
id="embed3"
src="video3.wmv"
type="video/x-ms-wmv"
style="width: 320px;height: 180px;border: none;outline: none;"
title="My Video"
aria-label="My Video">
<noembed>-->
<!-- FALLBACK TEXT ALERT: If the user agent does not support video, give them a simple text alert below. -->
Sorry, your browser does not support this video.
</noembed>
</embed>
</object>
</video>
<!-- CAPTION: Captions wrap around the video elements the same as img, picture, and audio elements. -->
<figcaption id="videocaption3"><small>"My Video"</small></figcaption>
</figure>
今天的大多数浏览器都将使用新的 HTML5 元素本地播放视频。无需插件或播放器。如果浏览器不支持“video”元素,它会回退到 object
(旧 IE),然后是 embed
(Netscape 和非 IE)元素,并且需要安装播放器。请记住,这并不能解决用户使用的浏览器或版本、操作系统、支持的电影编码类型以及他们已安装(或未安装)的播放器类型或版本等问题。有太多变量可以在旧浏览器中关闭播放。此外,如果您的用户安装了视频播放器,则每个播放器可能支持也可能不支持您提供的视频编码类型或版本,或者他们的特定操作系统或设备。
我将首先在 video
元素中提供 MPEG4 电影(最广泛的支持)并编码其他类型。将它们添加到下面的代码中,以扩大您支持所有操作系统、编解码器、播放器、插件和浏览器版本的机会。