代码之家  ›  专栏  ›  技术社区  ›  Shoaib Shaikh

需要有关选择支持多个玩家播放视频的正确方法的帮助

  •  0
  • Shoaib Shaikh  · 技术社区  · 14 年前

    我会尽量简短地说……

    我正在做一个项目,我需要支持多个播放器和平台来播放视频。

    主要平台将是:Windows PC、Mac PC、Apple设备和Android。

    这是我将遵循的优先顺序。首先,它将检查Silverlight 3或更高版本的浏览器支持,然后闪存,然后是HTML5。如果不支持其中任何一个,将要求用户安装Silverlight。

    我想知道应该使用哪种模式和策略来支持这个功能。目前,我已经研究了一些Javascript API,它们可以轻松地在客户端进行这种检测,并适当地加载播放器。但由于许多浏览器可能不支持javascript,因此此方法无法播放视频。

    有没有什么方法可以在服务器端进行这种检测,并在客户端注入适当的播放器HTML?

    当做。

    2 回复  |  直到 14 年前
        1
  •  1
  •   Andrew    14 年前

    我看到这个问题在处理HTML5视频实现时出现了很多。理想的优先级(在您的特定情况下)如下:

    HTML5视频→回退到Silverlight→回退到Flash

    我不确定您是否使用了两个回退,因为Flash通常被认为是本地视频的最佳回退添加额外的回退会造成我认为不必要的复杂性。

    无论如何,HTML5视频交付是最好的用户体验,因为它不需要使用javascript或第三方插件,并且默认情况下,它可以在几乎所有列出的平台上工作(Internet Explorer除外,它还不支持HTML5视频)。

    代码如下所示:

    <video width="640" height="480" controls>
        <source src="video.mp4" type="video/mp4"> <!-- For Safari, Chrome, and mobile devices -->
        <source src="video.webm" type="video/webm"> <!-- For newer builds of Firefox, Opera, and Chrome -->
        <source src="video.ogv" type="video/ogg"> <!-- Fall back for Firefox, Opera, and Chrome -->
    
        <!-- Insert code for Flash fallback here. If the browser can't load any of the sources above (Internet Explorer), it will load anything you put down here, including <object> and <embed> tags -->
    </video>
    

    如果您仍打算添加Silverlight回退,可以将其插入到Flash回退代码正上方的视频标记中。它将按顺序处理它们。

    希望这能帮助你朝着正确的方向前进。

        2
  •  0
  •   alxx    14 年前

    afaik,客户机不会通知服务器他禁用了javascript。所以,你能做的最好的就是让他们启用JS来播放视频。

    推荐文章