当前位置: 首页 > news >正文

HTML5支持的视频文件格式和音频文件格式有哪些?

在 HTML5 标准中, 我们有了新的 和 标签, 分别可以引入视频和音频文件的标签

那么这些标签又可以支持哪些文件格式呢 ?

格式支持

视频文件格式

MP4:MPEG-4 Part 14,支持H.264编码。几乎所有的浏览器都支持该格式。

WebM:谷歌开发的格式,使用VP8或VP9编码,可以在大多数现代浏览器中播放

Ogg:开放媒体格式,使用Vorbis编码,可以在大多数现代浏览器中播放。

音频文件格式

MP3:MPEG-1或MPEG-2 Audio Layer III,可以在几乎所有的浏览器中播放。

AAC:Advanced Audio Coding,可以在大多数现代浏览器中播放。

Ogg:开放媒体格式,使用Vorbis编码,可以在大多数现代浏览器中播放。

WAV:Waveform Audio File Format,可以在几乎所有的浏览器中播放,但文件较大,不适合在网络上播放。

如何处理兼容

基础使用

● 只要使用 video 标签的 src 属性引入对应的文件地址即可

兼容使用

● 当我不确定当前浏览器支持哪一个格式的文件的时候

● 可以使用兼容模式

○ 不在 video 标签上添加 src 属性

○ 而是直接在 video 标签对内书写 source 标签来引入多种格式的文件

<video controls>
  <source src="movie.mp4" type="video/mp4">
  <source src="movie.webm" type="video/webm">
  <source src="movie.ogg" type="video/ogg">
  您的浏览器不支持播放当前视频, 请更换浏览器再试 O(∩_∩)O~
</video>

○ 优先尝试第一个 source 标签的文件引入, 如果浏览器支持, 那么后续不在引入

○ 如果浏览器不支持, 那么开始尝试第二个 source 标签的文件

○ 以此类推, 如果所有 source 标签的内容都不支持

○ 那么就显示最后的那一行文本

● 这样我们的兼容问题就解决了

○ audio 标签也是同样一个道理

浏览器兼容性

视频兼容性

请添加图片描述

音频兼容性

请添加图片描述

相关文章:

  • 【图神经网络】10分钟掌握图神经网络及其经典模型
  • 【Axure教程】鼠标滚动上下翻页效果
  • Qt 自定义日志类总结
  • 算法学习|动态规划 LeetCode 416. 分割等和子集
  • Scala泛型(泛型方法,泛型类,泛型特质,上下界,协变、逆变、非变)
  • C/C++字符串
  • 基于Python GDAL库实现图像的几何校正详细教程
  • SpringBoot接参注解与校验失败后的三种异常
  • 【C语言学习】变量和数据类型
  • 【Vue2从入门到精通】详解Vue.js的15种常用指令及其使用场景
  • SpringMVC(8)——SSM整合
  • 【内网安全】横向移动Exchange服务有账户CVE漏洞无账户口令爆破
  • 10、Django开发总结:Django缓存Cache应用场景、设置以及高级使用技巧
  • 【黑客技术】LOIC —— 低轨道离子炮工具使用
  • 华为OD机试用java实现 -【吃火锅】
  • hexo+github搭建个人博客
  • 【跃迁之路】【669天】程序员高效学习方法论探索系列(实验阶段426-2018.12.13)...
  • 345-反转字符串中的元音字母
  • canvas实际项目操作,包含:线条,圆形,扇形,图片绘制,图片圆角遮罩,矩形,弧形文字...
  • CentOS 7 修改主机名
  • Docker 笔记(1):介绍、镜像、容器及其基本操作
  • FastReport在线报表设计器工作原理
  • leetcode388. Longest Absolute File Path
  • Python进阶细节
  • SegmentFault 技术周刊 Vol.27 - Git 学习宝典:程序员走江湖必备
  • storm drpc实例
  • 关于springcloud Gateway中的限流
  • 关于使用markdown的方法(引自CSDN教程)
  • 检测对象或数组
  • 它承受着该等级不该有的简单, leetcode 564 寻找最近的回文数
  • 小程序、APP Store 需要的 SSL 证书是个什么东西?
  • AI算硅基生命吗,为什么?
  • ​渐进式Web应用PWA的未来
  • #我与Java虚拟机的故事#连载11: JVM学习之路
  • #在 README.md 中生成项目目录结构
  • (Redis使用系列) Springboot 使用redis的List数据结构实现简单的排队功能场景 九
  • (黑客游戏)HackTheGame1.21 过关攻略
  • .NET CF命令行调试器MDbg入门(二) 设备模拟器
  • .NET CF命令行调试器MDbg入门(一)
  • .NET MVC第五章、模型绑定获取表单数据
  • .NET/C# 避免调试器不小心提前计算本应延迟计算的值
  • .NET平台开源项目速览(15)文档数据库RavenDB-介绍与初体验
  • @Query中countQuery的介绍
  • [8481302]博弈论 斯坦福game theory stanford week 1
  • [Asp.net MVC]Bundle合并,压缩js、css文件
  • [Deep Learning] 神经网络基础
  • [delphi]保证程序只运行一个实例
  • [English]英语积累本
  • [JS]JavaScript 注释 输入输出语句
  • [JS入门到进阶] 7条关于 async await 的使用口诀,新学 async await?背10遍,以后要考!快收藏
  • [loj#115] 无源汇有上下界可行流 网络流
  • [Nginx]反向代理Node将3000端口访问转换成80端口
  • [POJ - 2386]
  • [Python]list.append字典的时候,修改字典会导致list内容变化的问题
  • [Silverlight]通过MVVM模式实现本地化/全球化(1)