整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

HTML 音频(Audio)

音在HTML中可以以不同的方式播放.

问题以及解决方法

在 HTML 中播放音频并不容易!

您需要谙熟大量技巧,以确保您的音频文件在所有浏览器中(Internet Explorer, Chrome, Firefox, Safari, Opera)和所有硬件上(PC, Mac , iPad, iPhone)都能够播放。

在这W3CSchool 为您总结了问题和解决方法。

使用插件

浏览器插件是一种扩展浏览器标准功能的小型计算机程序。

插件可以使用 <object> 标签 或者 <embed> 标签添加在页面上.

这些标签定义资源(通常非 HTML 资源)的容器,根据类型,它们即会由浏览器显示,也会由外部插件显示。

使用 <embed> 元素

<embed>标签定义外部(非 HTML)内容的容器。(这是一个 HTML5 标签,在 HTML4 中是非法的,但是所有浏览器中都有效)。

下面的代码片段能够显示嵌入网页中的 MP3 文件:

实例

<embed height="50" width="100" src="horse.mp3">

问题:

  • <embed> 标签在 HTML 4 中是无效的。页面无法通过 HTML 4 验证。

  • 不同的浏览器对音频格式的支持也不同。

  • 如果浏览器不支持该文件格式,没有插件的话就无法播放该音频。

  • 如果用户的计算机未安装插件,无法播放音频。

  • 如果把该文件转换为其他格式,仍然无法在所有浏览器中播放。

使用 <object> 元素

<object tag> 标签也可以定义外部(非 HTML)内容的容器。

下面的代码片段能够显示嵌入网页中的 MP3 文件:

实例

<object height="50" width="100" data="horse.mp3"></object>

问题:

  • 不同的浏览器对音频格式的支持也不同。

  • 如果浏览器不支持该文件格式,没有插件的话就无法播放该音频。

  • 如果用户的计算机未安装插件,无法播放音频。

  • 如果把该文件转换为其他格式,仍然无法在所有浏览器中播放。

使用 HTML5 <audio> 元素

HTML5 <audio> 元素是一个 HTML5 元素,在 HTML 4 中是非法的,但在所有浏览器中都有效。

The <audio> element works in all modern browsers.

以下我们将使用 <audio> 标签来描述 MP3 文件(Internet Explorer、Chrome 以及 Safari 中是有效的), 同样添加了一个 OGG 类型文件(Firefox 和 Opera浏览器中有效).如果失败,它会显示一个错误文本信息:

实例

<audio controls>

<source src="horse.mp3" type="audio/mpeg">

<source src="horse.ogg" type="audio/ogg">

Your browser does not support this audio format.

</audio>

问题:

  • <audio> 标签在 HTML 4 中是无效的。您的页面无法通过 HTML 4 验证。

  • 您必须把音频文件转换为不同的格式。

  • <audio> 元素在老式浏览器中不起作用。

最好的 HTML 解决方法

下面的例子使用了两个不同的音频格式。HTML5 <audio> 元素会尝试以 mp3 或 ogg 来播放音频。如果失败,代码将回退尝试 <embed> 元素。

实例

<audio controls height="100" width="100">

<source src="horse.mp3" type="audio/mpeg">

<source src="horse.ogg" type="audio/ogg">

<embed height="50" width="100" src="horse.mp3">

</audio>

问题:

  • 您必须把音频转换为不同的格式。

  • <embed> 元素无法回退来显示错误消息。

雅虎媒体播放器 - 一个简单的添加音频到你网站上的方式

使用雅虎播放器是免费的。如需使用它,您需要把这段 JavaScript 插入网页底部:

雅虎播放器可以播放MP3以及其他各种格式。你只需添加一行代码到你的页面或 博客中就可以轻松地将您的HTML页面制作成 专业的播放列表:

实例

<a href="horse.mp3">Play Sound</a>

<script src="http://mediaplayer.yahoo.com/latest"></script>

如果你要使用它,您需要把这段 JavaScript 插入网页底部:

<script src="http://mediaplayer.yahoo.com/latest"></script>

然后只需简单地把 MP3 文件链接到您的 HTML 中,JavaScript 会自动地为每首歌创建播放按钮:

<a href="song1.mp3">Play Song 1</a>

<a href="song2.wav">Play Song 2</a>

...

...

雅虎媒体播放器为您的用户提供的是一个小型的播放按钮,而不是完整的播放器。不过,当您点击该按钮,会弹出完整的播放器。

请注意,这个播放器始终停靠在窗框底部。只需点击它,就可将其滑出。

使用超链接

如果网页包含指向媒体文件的超链接,大多数浏览器会使用"辅助应用程序"来播放文件。

以下代码片段显示指向 mp3 文件的链接。如果用户点击该链接,浏览器会启动"辅助应用程序"来播放该文件:

实例

<a href="horse.mp3">Play the sound</a>

内联的声音说明

当您在网页中包含声音,或者作为网页的组成部分时,它被称为内联声音。

如果您打算在 web 应用程序中使用内联声音,您需要意识到很多人都觉得内联声音令人恼火。同时请注意,用户可能已经关闭了浏览器中的内联声音选项。

我们最好的建议是只在用户希望听到内联声音的地方包含它们。一个正面的例子是,在用户需要听到录音并点击某个链接时,会打开页面然后播放录音。

HTML 多媒体标签

New : HTML5 新标签

标签描述
<embed>定义内嵌对象。HTML4 中不赞成,HTML5 中允许。
<object>定义内嵌对象。
<param>定义对象的参数。
<audio>New定义了声音内容
<video>New定义一个视频或者影片
<source>New定义了media元素的多媒体资源(<video> 和 <audio>)
<track>New规定media元素的字幕文件或其他包含文本的文件 (<video> 和<audio>)

如您还有不明白的可以在下面与我留言或是与我探讨QQ群308855039,我们一起飞!

TML5 提供了播放音频的标准。

Web 上的音频

直到现在,仍然不存在一项旨在网页上播放音频的标准。

今天,大多数音频是通过插件(比如 Flash)来播放的。然而,并非所有浏览器都拥有同样的插件。

HTML5 规定了一种通过 audio 元素来包含音频的标准方法。

audio 元素能够播放声音文件或者音频流。

音频格式

当前,audio 元素支持三种音频格式:

Ogg Vorbis: Firefox 3.5 、Opera 10.5、 Chrome 3.0

MP3:Chrome 3.0、Safari 3.0、IE 9

Wav:Firefox 3.5、Opera 10.5、Safari 3.0

书写格式

如需在 HTML5 中播放音频,您所有需要的是:

<audio src="song.ogg" controls="controls">
</audio>

control 属性供添加播放、暂停和音量控件。

列如:

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <meta name="viewport" content="width=device-width, initial-scale=1.0">
 <meta http-equiv="X-UA-Compatible" content="ie=edge">
 <title>Document</title>
</head>
<body>
 <a href="">
 <audio src="D:\KuGou\只是太爱你 (抖音女生版).mp3" controls="controls"></audio>
 
 <img usemap="#mynMap" src="../网页设计/imge/h3.jpg" alt="akshko">
 </a>
 
</body>
</html>

显示效果:

左边就是audio标签的显示效果

Internet Explorer

Internet Explorer 8 不支持 audio 元素。在 IE 9 中,将提供对 audio 元素的支持。


<audio> 标签的属性

属性 描述

autoplay 如果出现该属性,则音频在就绪后马上播放。

controls 如果出现该属性,则向用户显示控件,比如播放按钮。

loop 如果出现该属性,则每当音频结束时重新开始播放。

preload 如果出现该属性,则音频在页面加载时进行加载,并预备放。

如果使用 "autoplay",则忽略该属性。

src url要播放的音频的 URL。

频、视频的格式

开始学习之前,我们要下载些素材用来测试使用,地址如下:https://pan.baidu.com/s/1reRWno0ibYRcYXjw4MClqw

提取码:td80

其中包括两个视频一个音频和一个安装程序。

学习如何在页面中添加音频、视频之前应该了解一点基础知识。

我们应该都有在互联网上下载电影、视频、音乐的经历,大家会注意到,有的视频文件名的后缀是.avi,有的视频是.mp4,还有.mov的,据不完全统计,常见的各种视频格式有十几种之多。

常见的音频的格式比起视频来会显得少一些,一般是.wav和.mp3格式。

为什么存储相同的内容可以有这么多不同的格式呢?

格式产生的核心在于对音频、视频等多媒体文件进行的不同编码方式。

那什么是编码呢?

简单来说我们可以把"编码"这个词分成两个部分,第一个是"编",也就是"整理、组织"的意思,第二个是"码",也就是我们平时所说的"数码"。

首先说"码",我们的计算机中的数据最终都是通过二进制的数字(0和1)来存储或计算的,这些0或1就是数码。无论代码、程序、图片、音乐、视频、文字等的存储与计算都不例外。不管多么复杂或简单的文件,在计算机看来,都是一大堆0和1。

一个0或1被称为1比特,图片或视频中的一个黑白像素通常是8比特(八位),如果一张1080乘720个像素的图片所占内存的大小就是1080*720*8=6220800字节,约等于0,74mb。如果一个视频每秒中有25帧,也就是一秒钟在我们眼前闪过25张图片(视频播放实际上就是在我们眼前快速的更替图片,这些图片在大脑中会被自动连成动作,这也是小的时候在课本的角上画好一套走路的小人的不同动作后,快速翻动书页,画面中的小人会走路的原因,大家可以自行百度"视觉暂留原理")。

一秒钟25张1080乘720的图片的视频,一秒钟就会占0.74*25=18.5mb的内存。如果是一分钟呢,18.5*60=1110mb约等于1.08gb。这样的数据量是不是很吓人。

但事实上我们下载的1080*720的一小时三十分钟左右的视频的体积往往也没有超过1gb,这又是为什么呢?

这就是"编"的功劳!对数码进行整理和组织的主要目的是压缩体积,压缩数据体积既能节省磁盘又能方便传播与携带,是信息技术的关键技术之一,压缩的方法一般有两类,一类叫做无损压缩,也就是通过对这一大堆数码进行一个特殊的组合使其占有更小的空间,一类叫做有损压缩,是在无损压缩的基础上剔除掉人眼睛识别不到的冗余信息。具体的压缩过程涉及到很多数学知识,这里大家简单了解一下即可。

压缩后的视频或音频文件最终通过播放器对该文件的压缩算法进行逆向运算后,还原成计算机可以解读的画面和声音再呈现给观众,这个过程叫做"解码"。

通过"编"的方式压缩文件体积,通过"解"的方式再还原出文件内容成了处理大规模数据的通用手法。

不同的编码和解码方式催生出不同的文件格式,这种情况下,浏览器在播放视频的时候就要有应对不同格式的不同解码方式,在15年以前,浏览器为了能够播放不同格式的视频,就要调用电脑中不同的播放器,这个过程的写法非常麻烦。随着技术不断地整合,时至今日,在页面中播放视频不需要这么复杂的写法了,但是因为每个浏览器都不是包打一切,因此,虽然不用指定播放器,但是也要预设不同格式的视频来应对不同的浏览器。

因此,我们在这一部分的学习中除了讲解如何向页面添加不同格式的音视频外还会告诉大家如何为音视频转换格式。

为页面添加音频、视频

添加音频使用<audio></audio>标签,这个标签被所有浏览器支持,是html5推荐的音频导入标签,但是遗憾的是在html4标准中是不被支持的或者说是非法的。

这里给大家简要介绍一下html5和html4的区别。

简单来说呢,一个html文件的第一条语句是<!DOCTYPE HTML>,它就是HTML5标准的文件。如果是html4,它的第一条声明语句有三种写法,像这样

一:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

二:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

三:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">

版权声明:本文为CSDN博主「痦子」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/yh1061632045/article/details/81518141

这让我想到了孔乙己的"茴"字的多种写法

是不是很麻烦,其实html5比html4更简单,功能更强大,而且我们一直以html5的标准进行学习,所以大家不必纠结。

下面我们导入一个音频试试吧。示例代码如下:

<!DOCTYPE HTML>
  <html>
  <head> 
  <title>音视频导入</title>
  </head> 
  <body>
  <audio controls="controls"> 
    <source src="audio/千年的祈祷.mp3" type="audio/mp3" />
  </audio>
  </body> 
  </html>

页面效果如下:

其中controls属性就是用来显示播放控制界面的,就是这个:(偷懒的话可以写成"controls"就ok,不必加"="以及后面的内容了。)

如果以后您使用自己编写的控制界面,就可以不添加这个属性。

删掉这个属性后就是这样:这样为自定义的播放控制界面留出了位置。

<audio></audio>标签夹着<source>标签,一个<audio></audio>标签中可以添加多个<source>用以支持不同的格式要求。示例代码如下:(这段代码来自w3school)

<audio controls="controls"> 
  <source src="song.ogg" type="audio/ogg" /> 
  <source src="song.mp3" type="audio/mpeg" />
  Your browser does not support the audio element.<!--你的浏览器不支持这个音频元素-->
</audio>

type属性是告诉浏览器音乐文件的类型。

不同格式的文件的生成需要我们自己去做,这就涉及到如何给一个音频文件进行格式转化的问题。这个问题我们明天再说,今天先学习为页面添加音频和视频。

下面我们来看一下视频的导入方法,示例代码如下:

<video controls> 
  <source src="video/阿塔丽.mp4" type="video/mp4" />
</video>

页面效果如下:

我们可以通过设置height和width属性来控制视频的面积。实例代码如下:

<video controls width="850" height="500" > 
  <source src="video/阿塔丽.mp4" type="video/mp4" />
</video>

页面效果如下:

视频画面变小了,和视频并排的是我们之前添加的音频文件,由此可知,这两个元素都是内联元素。

今天的内容结束了,明天我们继续学习格式转换和为不同浏览器预设不同音视频格式的方法。

如果您有任何疑问请给我留言,如有问题或错误请予以斧正!

HTML完整学习目录

HTML序章(学习目的、对象、基本概念)——零基础自学网页制作

HTML是什么?——零基础自学网页制作

第一个HTML页面如何写?——零基础自学网页制作

HTML页面中head标签有啥用?——零基础自学网页制作

初识meta标签与SEO——零基础自学网页制作

HTML中的元素使用方法1——零基础自学网页制作

HTML中的元素使用方法2——零基础自学网页制作

HTML元素中的属性1——零基础自学网页制作

HTML元素中的属性2(路径详解)——零基础自学网页制作

使用HTML添加表格1(基本元素)——零基础自学网页制作

使用HTML添加表格2(表格头部与脚部)——零基础自学网页制作

使用HTML添加表格3(间距与颜色)——零基础自学网页制作

使用HTML添加表格4(行颜色与表格嵌套)——零基础自学网页制作

16进制颜色表示与RGB色彩模型——零基础自学网页制作

HTML中的块级元素与内联元素——零基础自学网页制作

初识HTML中的<div>块元素——零基础自学网页制作

在HTML页面中嵌入其他页面的方法——零基础自学网页制作

封闭在家学网页制作!为页面嵌入PDF文件——零基础自学网页制作

HTML表单元素初识1——零基础自学网页制作

HTML表单元素初识2——零基础自学网页制作

HTML表单3(下拉列表、多行文字输入)——零基础自学网页制作

HTML表单4(form的action、method属性)——零基础自学网页制作

HTML列表制作讲解——零基础自学网页制作

为HTML页面添加视频、音频的方法——零基础自学网页制作

音视频格式转换神器与html视频元素加字幕——零基础自学网页制作

HTML中使用<a>标签实现文本内链接——零基础自学网页制作