音视频格式转换神器——格式工厂
如果您下载了上一篇《为HTML页面添加音频、视频的方法——零基础自学网页制作》(目录在结尾)中的素材,您会看到有这样一个文件,如图
这就是格式工厂软件的安装程序
建议大家在学习之前下载素材用以实践,下载地址如下:https://pan.baidu.com/s/1reRWno0ibYRcYXjw4MClqw
提取码:td80
因为格式工厂是免费软件,所以大家直接安装就可以了,不需要序列号,安装过程如下:
1.双击安装程序
2.选择安装盘符
3.等待进度条跑完就好了。大家注意,安装时一定要阅读提示,一些没必要的捆绑软件记得不要安装!
完成安装后,点击"开始"菜单,如图:
这样我们就可以打开格式工厂了,打开后如图:
通过这个菜单我们可知,这个软件不仅可以为音频、视频转换格式,还可以给图片转换格式。如图:
下面我们就来操作一下如何为视频转换格式。
step1.点击"视频"
点击后是这样的,点击"AVI FLV MOVE"这个区域。
效果如下,出现了一个新的菜单。
step2.选择要转换的格式,如图,我们先选择ogg,点击!
点击"确定"
弹出这样一个菜单:
step3.选择文件,如图,点击"添加文件"
我们使用"利维坦.mp4"这个文件进行转换,如图:
点击"打开"后,跳到这个界面,如下图,然后点击确定。
这时界面就跳回最初的界面上,如下图,点击开始,如红框中。
step4.等待转换完成,如图所示:
然后点击"输出文件夹"按钮找到转换好的文件,如图:
这时,我们可以把这个转换好的文件拷走。
完成之后,大家可以按照上述步骤继续转换出swf、flv格式的视频文件。
转换音频和视频的步骤类似,大家可以在音频栏中进行选择相应格式并操作。
格式工厂除了音视频格式转换外,也具有简单的图片处理,视频拼接,录屏等功能,感兴趣的小伙伴可以自行测试。
HTML中兼容不同浏览器的音视频元素写法
学过上一篇《》的小伙伴都会知道,目前音频也好、视频也好有非常多的格式存在,不同浏览器能支持的格式也不尽相同,就拿swf文件看,2019年以后版本的火狐浏览器就不再支持了(还可以通过一些特殊手段播放,这里指的是常规的html标签用法)。而chrome(google浏览器)在使用<embed>标签导入swf文件后就可以播放,示例代码如下:
<!DOCTYPE HTML> <html> <head> <title>音视频导入</title> <meta charset="utf-8"> </head> <body> <embed src="video/利维坦.swf" width="320" height="240" /> </body> </html>
在chrome中可以打开。不过要用户允许使用flashplayer才行,如图:
这时我们发现,在默认情况下,播放器控制面板并没有出现。
使用ie浏览器却不能打开,因为针对swf文件,ie浏览器需要使用<object>标签。示例代码如下:
<embed src="video/利维坦.swf" width="320" height="240" /><object data="video/利维坦.mp4" width="320" height="240"></object>
如图所示:没有正常显示的是<embed>标签,打开的是<object>标签,并且有控制器。如图:
实际上swf是个历史遗留问题,<object>主要是针对ie浏览器来播放swf或其他需要flashplayer支持的视频格式。<embed>的标签则用来解决非ie浏览器中播放swf或其他需要flashplayer支持的视频格式。
而苹果浏览器压根就不支持swf这一类的文件。
目前网络视频格式基本上都统一为MP4格式了,在html5标准中,<video>标签页取代了<object>和<embed>标签来播放视频,同时支持多种格式选择的代码模式,示例代码如下:
它的结构是<video></video>标签中套入了多个<source/>标签来指定不同格式的文件,同时并列套入一个<object></object>标签,在<object></object>标签中再套入一个<embed>标签。这样的写法的目的是为了让使用各种各样的浏览器的用户都可以打开视频。这种写法目前是html认为的最好的写法。
大家可以试一试,使用之前转好的不同格式的视频。
大家回想一下,导入不同格式音频的写法也是这个样子,示例代码如下:
<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>
其他的兼容方法
在w3school的说明中给出了一种包打一切的方法,说起来有点搞笑。
视频的话,w3school建议可以上传优酷,然后使用这样的代码嵌入自己的页面中,官方示例代码如下:
<embed src="http://player.youku.com/player.php/sid/XMzI2NTc4NTMy/v.swf" width="480" height="400" type="application/x-shockwave-flash"></embed>
当然也可以使用我们之前在《》这篇教程中讲到的优酷官方推荐的<iframe>标签的写法。
音频的话,可以调用免费的在线雅虎播放器来播放,官方示例代码如下:
首先使用一个<a>标签,使用href属性指定音频文件的路径。然后使用<script></script>标签来启东雅虎播放器的JavaScript程序来播放。这个<script>标签以后在学习JavaScript时,我们会经常和它打交道,它的主要作用就是导入脚本。
出于好奇我试了试,代码如下:
</video><a href="audio/千年的祈祷.mp3">Play Sound</a><script type="text/javascript" src="http://mediaplayer.yahoo.com/js"></script></body>
大家注意,<script>标签写在</body>上面即可,也就是在页面内容的最下面,不必非要和<a>标签凑在一起。放在<head></head>中也可以!
页面效果如下:
点击"Play Sound"之后跳到这样的界面:
最后给大家介绍一个导入字幕的方法,示例代码如下:
<video width="320" height="240" controls="controls"> <source src="forrest_gump.mp4" type="video/mp4" /> <source src="forrest_gump.ogg" type="video/ogg" /> <track kind="subtitles" src="subs_chi.srt" srclang="zh" label="Chinese"> <track kind="subtitles" src="subs_eng.srt" srclang="en" label="English"></video>
其中的<track>标签就是导入字幕的标签,是一个html5中出现的新标签。属性解释如下:
因为没有配套的srt文件,因此这里就不演示了,大家了解一下,以后有机会再细致测试一下。