HTML5 视频什么时候应该回退到 Flash 播放器?

2023-12-09

我正在致力于为 HTML5 视频播放器实现后备机制。我有办法用 swfobject Flash 播放器替换它,但我应该如何检测是否出现任何问题?

换句话说,如果我们使用以下可以抛出的错误事件列表,哪一个应该触发 Flash 播放器替换?或者如果抛出任何错误,我们应该简单地进行替换吗?

另外,onError 处理程序应该在哪里调用?我正在考虑video标签,但想确定一下。非常感谢您的指导。谢谢。

   function failed(e) {
     // video playback failed - show a message saying why
     switch (e.target.error.code) {
       case e.target.error.MEDIA_ERR_ABORTED:
         alert('You aborted the video playback.');
         break;
       case e.target.error.MEDIA_ERR_NETWORK:
         alert('A network error caused the video download to fail part-way.');
         break;
       case e.target.error.MEDIA_ERR_DECODE:
         alert('The video playback was aborted due to a corruption problem or because the video used features your browser did not support.');
         break;
       case e.target.error.MEDIA_ERR_SRC_NOT_SUPPORTED:
         alert('The video could not be loaded, either because the server or network failed or because the format is not supported.');
         break;
       default:
         alert('An unknown error occurred.');
         break;
     }
   }

这里的问题是,许多问题无法通过切换到 Flash 来解决。事实上,只有当您在 IE、FF 和 Opera 中播放 MP4 时,以及在所有浏览器中播放 FLV 时,切换到 Flash 才能让您真正受益。 (这显然会根据 webm / Theora 的原生 Flash 支持而发生变化。)

为此,我们对 HTML5 的 JW Player 进行了以下操作:

  • 询问浏览器是否可以播放该文件.
  • 如果浏览器无法播放该文件,根据文件扩展名检查 Flash 支持的文件类型列表.
  • 如果 Flash 无法播放该文件,请提供下载链接。

此解决方案并非万无一失,但它可以让您完成 90% 以上的工作。

Best,

Zach

长尾视频开发者

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

HTML5 视频什么时候应该回退到 Flash 播放器? 的相关文章

  • 如何在 Safari 上打开本地 html 文件?

    我想打开本地 html 文件Safari集成到我的Swift 3应用 我知道如何使用网址来做到这一点 这是我用来执行此操作的代码 let encodedString url addingPercentEncoding withAllowed
  • 如果执行了锚点 href 链接,则禁用 onClick 事件

    我有一张桌子 每一行都是一个由 js 调用的某个页面 例如 google com 的链接 onClick window open 方法 tr class tr 在最后一栏中我有一个锚点链接链接到其他页面 例如 jsfiddle td cla
  • 有没有办法根据渲染的字符串创建 DOM 对象?

    有没有办法从整个字符串而不只是innerHTML 创建DOM 对象 我有一个完整呈现的 DOM 形式的字符串
  • 如何使用 jQuery 在按下按钮后保持按钮处于活动状态

    我见过一些非常相似的问题 但一直无法找到我正在寻找的答案 我已经确定了解决方法 但想知道执行该任务的正确方法 我想要的是单击按钮并使活动状态保持不变 下一次单击将切换状态 这是所需的 我真正需要知道的是如何解决 uiButton activ
  • 未捕获的类型错误:无法读取未定义的属性“prop”

    我有 6 个输入复选框 如果选中的复选框超过 3 个 则最后一个复选框将被取消选中 为了更好地理解 请参阅我之前的question https stackoverflow com questions 35195235 if checkbox
  • 将字符串转换为正确的 URI 格式?

    有没有简单的方法可以将电子邮件地址字符串转换为正确的 URI 格式 Input http mywebsite com validate email 3DE4ED727750215D957F8A1E4B117C38E7250C33 email
  • HttpWebRequest vs Webclient(特殊场景)

    我知道这个问题之前已经回答过thread https stackoverflow com questions 1694388 webclient vs httpwebrequest httpwebresponse 但我似乎找不到详细信息 在
  • 以 HTML 格式发送电子邮件

    我想发送 HTML 格式的电子邮件 如下图所示 我怎样才能做到这一点 请帮我 提前致谢 String body new String table tr td br header td tr br br Get b Best Score b
  • Gmail 和 Google Chrome 12+ 中的“从剪贴板粘贴图像”功能如何工作?

    我注意到一个来自 Google 的博文 http gmailblog blogspot com 2011 06 pasting images into messages just got html其中提到 如果您使用的是最新版本的 Chro
  • Onblur 事件在另一个 div 的 onclick 之前触发

    如上所述 我有一个按钮 单击该按钮将打开子菜单 对于子菜单中的每个选项 都有三个元素 我认为实际上还有更多元素 但为了简单起见 将其保留为 3 我将焦点放在子菜单的主 div 白色 框架 上 Onblur 这个 div 然后我隐藏子菜单 这
  • 响应式2列2行布局

    我一直在试图弄清楚如何创建这个布局 我有一个 2 列布局 左列有 1 行 右侧有 2 行 我试图让它流畅地调整 我遇到的问题是 我希望右侧顶部图像的顶部与左侧图像的顶部对齐 而底部图像的底部与左侧图像的底部保持对齐 我应该使用桌子吗 这是我
  • 将下拉按钮和下拉菜单放在中心?

    div class dropup center block div
  • 如何使网页中出现的图标闪烁/闪烁

    几天前我开始研究高级java 我知道太晚了 我被困在使图标 出现在任务栏上 闪烁的特定任务上 这种闪烁应该根据特定条件发生 这意味着可以使用以下方法来实现javascript 我已经搜索了一段时间了 但是有没有办法让图标每隔 1 秒左右出现
  • 理解

    我正在尝试在网站中使用所选的图像 假设我有一个简单的网站 用户可以使用以下命令从系统中选择图像
  • 获取画布上下文的最后一个点的坐标

    我想创建一个arrowTo功能与CanvasRenderingContext2D prototype 为此 我需要获取最后一个点的坐标 例如 var ctx someCanvas getContext 2d ctx moveTo 10 40
  • onclick 函数上的 CSS 选择器

    有没有办法让CSS选择器onclick function 您可以在onclick https stackoverflow com questions 24365416 select element which have specific a
  • 新BFC“清”浮箱

    如示例所示 应用display inline block 到包含块似乎 清除 了其中的浮动框 wrapper inline block display inline block left column background color te
  • 阻止通过 GET 传递“提交”按钮值?

    我正在尝试通过 GET 传递表单信息 这很重要 这样人们就可以将表单选择中过滤后的数据发送给其他人 问题是 使用下面的代码 它不仅传递过滤器信息 还传递提交表单值 如下所示 index php month filter Feb year f
  • 使用 div 或表格来包含链接列更好吗?

    我的页面底部有 3 列链接 每列都放入一个 div 中 所有三个 div 都包装在页面中央的一个大 div 中 这是更适合桌子的东西还是桌子不适合这项工作 您还可以使用 ul http www w3schools com tags tag
  • 背景大小:封面在视网膜显示屏上看起来像素化

    可以看到我正在开发的网站here http ourcityourstory com dev 如果你查看 iPad 3 或 iPhone 4 上的 关于 或 联系 部分 背景看起来全都是疯狂的像素化 我有background size set

随机推荐

  • 在 JTextArea 中插入文本

    我正在用Java开发一个简单的应用程序 我想知道是否有任何方法可以在文本区域内插入附加文本 句子中间的某个位置 该文本区域不是空的 在光标所在的位置某些组件的点击 有人可以指导我如何完成它吗 如果这是一个JTextArea组件你可以使用 a
  • 普遍适用

    如何制作适用于 iphone 和 ipad 的通用应用程序 我们如何检测设备是 iPhone 还是 iPad 最简单的方法是使用UI USER INTERFACE IDIOM UIUserInterfaceIdiomPad and UI U
  • CSS 选择器中的逗号是什么意思? [复制]

    这个问题在这里已经有答案了 当我拥有时这意味着什么 A B A C some styles 这是否意味着B类没有样式定义 这意味着两者 A B and A C共享相同的声明块 逗号表示将该块中的声明应用于这两个选择器 而逗号后面的换行符并不
  • 在我的应用程序中使用锁屏?

    我想让我的应用程序在多任务处理时使用锁定屏幕上的音频按钮 是的 就像潘多拉一样 我想要使 用什么 API See the 多媒体远程控制文档 基本上 你只需要调用 beginReceivingRemoteControlEvents在您的共享
  • 通过迁移向列添加默认值

    如何通过迁移向已存在的列添加默认值 我能找到的所有文档都会向您展示如何在该列尚不存在的情况下执行此操作 但在本例中它确实存在 您应该这样做 change column users admin boolean default gt false
  • 反引号作为语法运算符

    刚刚遇到了一些对我来说似乎很奇怪的事情 反引号的功能类似于语法运算符 applyOp Int gt Int gt Int gt Int gt Int gt Int applyOp x op y x op y gt applyOp 2 5 7
  • 无法对多个 GWT 应用程序使用相同的 cookie

    我正在开发一个应用程序网络 我想向我的用户提供多个应用程序 他们只需注册 登录一次 并通过同一登录名使用所有应用程序 为了实现这一点 我创建了一个 cookie 在其中存储用户的会话 ID 他在登录时收到 每次用户打开应用程序时 启动模块都
  • Microsoft Graph:将文件上传到共享库而不是用户库?

    在有关的文档中Upload 列出了这些请求选项 PUT me drive items parent id filename content PUT me drive root parent path filename content PUT
  • 高图表中的不同标记大小?

    对于高图中的散点图 我希望不同的系列具有不同的标记半径 这可能吗 plotOptions series marker enabled true symbol circle radius 15 使用以下方法不起作用 plotOptions s
  • 如何获取使用 UrlFetchApp.fetch(photoLink) 获得的 jpeg 图像的大小(以像素为单位)?

    在以 HTML 格式发送电子邮件的脚本中 我添加了存储在公共共享文件夹中的图像 我使用得到的斑点UrlFetchApp fetch photoLink 但图像不一定具有正确的尺寸 因此在 html 代码中我使用宽度和高度属性 目前使用固定值
  • 检索 WordPress 根目录路径?

    如何检索 WordPress CMS 中根目录的路径 查看 WordPress 根目录中的 wp config php 文件底部 您会发现如下内容 if defined ABSPATH define ABSPATH dirname FILE
  • 已发布的 https://docs.google.com/spreadsheets 重定向到其他网址(CSV 数据)

    我们自动发布 Google 文档电子表格 一个选项卡为 CSV Google 文档提供了引用 CSV 的固定 URL 我们将此 CSV 导入到另一个用于产品数据导入的工具中 突然 这个 URL 被 Google Spreadsheet 重定
  • REMOTE_ADDR 为空,不包含在 SERVER 数组中

    搬到新服务器后我遇到了一个奇怪的问题 用于获取邮件的 cron 会检查授权 IP 其中之一默认为 127 0 0 1 移动后它停止工作 因为 REMOTE ADDR 变量未填充 它是从浏览器调用时调用的 但不是从 cron 内部运行或使用
  • 正确关闭 WebSocket(HTML5、Javascript)

    我正在研究 HTML5 WebSockets 我想知道如何优雅地关闭连接 例如 如果用户刷新页面或只是关闭浏览器会发生什么 当用户只是刷新页面而不调用时 会出现奇怪的行为websocket close 当他们在刷新后返回时 它会击中webs
  • 如何找到图像中包含的图像?

    我目前正在构建基本上相当于搜索引擎和网络漫画画廊之间的交叉点 其重点是引用来源和给予作者信用 我正在尝试找出一种方法来搜索图像以查找其中的字符 例如 假设我将红色字符和绿色字符保存为红人和绿人 如何确定图像是否包含其中之一 这不需要 100
  • 实体框架:按属性值过滤嵌套集合

    我有如下模型 class MyClass public int Id get set public List
  • 为什么项目中心对齐不起作用?

    这是我尝试创建图像网格的 HTML 代码 来源 https www w3schools com howto howto css image grid responsive asp 我想设置屏幕的图像显示中心 但align items或ali
  • 如何更改 Lollipop 之前版本和 Lollipop 版本的工具栏菜单项文本颜色

    我在应用程序中使用工具栏来进行材料设计 一切工作正常 但除了更改菜单项文本颜色时 我完全坚持该解决方案 我还发布了应拍摄的文本的屏幕截图以及我在应用程序中使用的代码 以供您参考 我尝试了几种替代方法 例如分配如下
  • Python Pandas:在 DataFrame 中查找模式

    我有以下数据框 120 万行 df test 2 pd DataFrame A end beginn end end beginn beginn end end end beginn end B 1 10 50 60 70 80 90 10
  • HTML5 视频什么时候应该回退到 Flash 播放器?

    我正在致力于为 HTML5 视频播放器实现后备机制 我有办法用 swfobject Flash 播放器替换它 但我应该如何检测是否出现任何问题 换句话说 如果我们使用以下可以抛出的错误事件列表 哪一个应该触发 Flash 播放器替换 或者如