在html / web浏览器中播放视频

时间:2017-07-29 11:00:26

标签: javascript html video playback

有没有办法在所有浏览器支持的html中嵌入视频 - 非html5,不使用<video>标记,不依赖于flash - 可能纯粹是javascript?

3 个答案:

答案 0 :(得分:3)

播放视频不仅仅是支持<video>标记的浏览器。浏览器还应该支持编解码器,音频/视频容器格式(例如; MPEG)和可能的DRM。之前的建议(安装Quicktime,VLC,甚至使用Flash或MS Silverlight)通过使用在浏览器之外运行的某些第三方组件来取消此支持,但仍需要用户安装和配置这些组件。由于这些组件通常是特定于平台的,因此您不会获得任何额外的浏览器支持,只需要很多投诉。您可以完全忘记支持移动设备和平板电脑。

现在几乎所有的平台和浏览器都对<video>和/或<audio>标签和编解码器,容器格式和DRM提供了不错的支持。有一些很好的库可以处理抽象回放,DRM,GUI和分析,还有一些可以回退到Flash。 来自Muthu Kumaran的建议; videoJS和MediaElement.js,都是开源的,确实需要做些工作才能起床。运行。其他替代方案是

  • BitMovin ,商业广告。非常大,功能丰富且价格昂贵。
  • JWPlayer ,开源和部分商业化。来自Flash背景。拥有非常庞大的用户群并且已存在很长时间。
  • TheoPlayer ,商业广告。稳定的球员,已经存在了一段时间。
  • MeisterPlayer ,开源和部分商业,新的孩子在街区。对一些非常大的客户看起来很有希望。

答案 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>标记即可播放视频。有许多视频库可以支持旧浏览器,例如

答案 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 电影(最广泛的支持)并编码其他类型。将它们添加到下面的代码中,以扩大您支持所有操作系统、编解码器、播放器、插件和浏览器版本的机会。