html文件中flash格式(flv、swf)文件的嵌入

2024-06-09 15:08

本文主要是介绍html文件中flash格式(flv、swf)文件的嵌入,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

flash文件的格式:.FLV 和 .SWF

flash视频格式有两种扩展名可以使用:.flv和.swf。他们有什么不同呢?

(1)一个.flv文件(flash视频)是基于图片的视频流和音频。如果你在运行一个流服务,flv将是一个好的选择。上游条件是,这个文件的任何部分可以被客户终端访问,并且任何时间不会等待下载。话又说回来了,运行一个流服务待价昂贵。

(2).swf也是Macromedia Flash文件格式,是一个完整的视频-音频文件,并具有脚本和其它更多的。这将有利于HTTP(渐进式)下载,也被叫做“伪随机流(psuedo streaming)”。当文件的一部分下载后,视频片段就立刻播放,但是客户端将等待flash文件片段下载后才能访问(不能快进),除非整个文件完整下载。这也是我们常常谈到的,他是一个简单的,不昂贵的,简便的方式流话你的视频媒介。SWF不是官方简称,已经有人声称它是“ShockWave Flash”或者"Small Web Format".的简称。

(根据http://www.free-video-hosting.net/streaming-flash.php 片段翻译)。

在页面中嵌入flash可以使用如下方式:

    

[html] view plain copy print ?
  1. <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"   
  2. codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,16,0"   
  3. width="320" height="400" >  
  4. <param name="movie" value="video-filename.swf">  
  5. <param name="quality" value="high">  
  6. <param name="play" value="true">  
  7. <param name="LOOP" value="false">  
  8. <embed src="video-filename.swf" width="320" height="400" play="true" loop="false" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer"   
  9. type="application/x-shockwave-flash">  
  10. </embed>  
  11. </object>   


这里要注意的是: <param name="movie" value="video-filename.swf">和<embed src="video-filename.swf".....  这两个地方,都是swf文件的位置名称,其他一些参数可以参考以上链接里的介绍。

     但是这样写了之后,虽然页面中swf格式的文件可以显示,但是flv格式的文件播放不了。纠结了一阵子,从dreamweaver中总结了一个解决方案:

[html] view plain copy print ?
  1. <script type="text/javascript">  
  2. function MM_CheckFlashVersion(reqVerStr,msg){  
  3.   with(navigator){  
  4.     var isIE  = (appVersion.indexOf("MSIE") != -1 && userAgent.indexOf("Opera") == -1);  
  5.     var isWin = (appVersion.toLowerCase().indexOf("win") != -1);  
  6.     if (!isIE || !isWin){    
  7.       var flashVer = -1;  
  8.       if (plugins && plugins.length > 0){  
  9.         var desc = plugins["Shockwave Flash"] ? plugins["Shockwave Flash"].description : "";  
  10.         desc = plugins["Shockwave Flash 2.0"] ? plugins["Shockwave Flash 2.0"].description : desc;  
  11.         if (desc == "") flashVer = -1;  
  12.         else{  
  13.           var descArr = desc.split(" ");  
  14.           var tempArrMajor = descArr[2].split(".");  
  15.           var verMajor = tempArrMajor[0];  
  16.           var tempArrMinor = (descArr[3] != "") ? descArr[3].split("r") : descArr[4].split("r");  
  17.           var verMinor = (tempArrMinor[1] > 0) ? tempArrMinor[1] : 0;  
  18.           flashVer =  parseFloat(verMajor + "." + verMinor);  
  19.         }  
  20.       }  
  21.       // WebTV has Flash Player 4 or lower -- too low for video  
  22.       else if (userAgent.toLowerCase().indexOf("webtv") != -1) flashVer = 4.0;  
  23.   
  24.       var verArr = reqVerStr.split(",");  
  25.       var reqVer = parseFloat(verArr[0] + "." + verArr[2]);  
  26.     
  27.       if (flashVer < reqVer){  
  28.         if (confirm(msg))  
  29.           window.location = "http://www.macromedia.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash";  
  30.       }  
  31.     }  
  32.   }   
  33. }  
  34. </script>  
  35. </head>  
  36.   
  37. <body onload="MM_CheckFlashVersion('7,0,0,0','本页内容需要使用较新的 Macromedia Flash Player 版本。是否现在下载它?');">  
  38. <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width="314" height="234" id="FLVPlayer">  
  39.   <param name="movie" value="FLVPlayer_Progressive.swf" />  
  40.   <param name="salign" value="lt" />  
  41.   <param name="quality" value="high" />  
  42.   <param name="scale" value="noscale" />  
  43.   <param name="FlashVars" value="&MM_ComponentVersion=1&skinName=Clear_Skin_3&streamName=%E8%80%81%E5%A4%A9%E4%B8%8B%E8%B4%B0%E4%B9%8B%E8%8E%AB%E9%97%AE%E4%BB%8A%E6%9C%9D&autoPlay=true&autoRewind=true" />  
  44.   <embed src="FLVPlayer_Progressive.swf" flashvars="&MM_ComponentVersion=1&skinName=Clear_Skin_3&streamName=%E8%80%81%E5%A4%A9%E4%B8%8B%E8%B4%B0%E4%B9%8B%E8%8E%AB%E9%97%AE%E4%BB%8A%E6%9C%9D&autoPlay=true&autoRewind=true" quality="high" scale="noscale" width="314" height="234" name="FLVPlayer" salign="LT" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />  
  45. </object>  


这里多了一个版本控制的方法MM_CheckFlashVersion()。

下部分和swf的写法很相似,但是还略有不同。<param name="movie" value="FLVPlayer_Progressive.swf" 这里不再是播放文件了,而是相当于一个播放器性质的文件,而且使用dreamweaver插入一个flash文件后,你会发现FLVPlayer_Progressive.swf这个文件和Clear_Skin_3.swf。前者相当于播放器,后者相当于皮肤,dreamweaver里面提供了多种皮肤,可以根据选择使用。在以上代码中有两处使用到了播放器文件FLVPlayer_Progressive.swf,这个和swf的很相似,但是他不是源文件。代码中skinName就是设置皮肤的,其他的一些属性都比较好理解。

     总结一下,flv格式嵌入有3个要点:1,播放器FLVPlayer_Progressive.swf,这个文件必不可少,而且这个文件要和flv源文件在一个文件目录下(暂时也没有找到原因)2.皮肤skinName=Clear_Skin_3,皮肤可以更换,同样也是必不可少的,要和flv源文件在一起。3.源文件,streamName,这个参数显示源文件的文件名,不带后缀,当文件名为中文的时候,dreamweaver会知道把那个名称转换为一大串。。。。当html文件和flv文件不在同一个文件目录下面的时候,需要带上文件路径(这个在项目中要特别注意)。

图示中同一个页面使用了两种皮肤,一个设为自动播放,另一个为手动播放。文件格式为flv。

这篇关于html文件中flash格式(flv、swf)文件的嵌入的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1045521

相关文章

全面解析HTML5中Checkbox标签

《全面解析HTML5中Checkbox标签》Checkbox是HTML5中非常重要的表单元素之一,通过合理使用其属性和样式自定义方法,可以为用户提供丰富多样的交互体验,这篇文章给大家介绍HTML5中C... 在html5中,Checkbox(复选框)是一种常用的表单元素,允许用户在一组选项中选择多个项目。本

HTML5 搜索框Search Box详解

《HTML5搜索框SearchBox详解》HTML5的搜索框是一个强大的工具,能够有效提升用户体验,通过结合自动补全功能和适当的样式,可以创建出既美观又实用的搜索界面,这篇文章给大家介绍HTML5... html5 搜索框(Search Box)详解搜索框是一个用于输入查询内容的控件,通常用于网站或应用程

C++ 函数 strftime 和时间格式示例详解

《C++函数strftime和时间格式示例详解》strftime是C/C++标准库中用于格式化日期和时间的函数,定义在ctime头文件中,它将tm结构体中的时间信息转换为指定格式的字符串,是处理... 目录C++ 函数 strftipythonme 详解一、函数原型二、功能描述三、格式字符串说明四、返回值五

CSS3中的字体及相关属性详解

《CSS3中的字体及相关属性详解》:本文主要介绍了CSS3中的字体及相关属性,详细内容请阅读本文,希望能对你有所帮助... 字体网页字体的三个来源:用户机器上安装的字体,放心使用。保存在第三方网站上的字体,例如Typekit和Google,可以link标签链接到你的页面上。保存在你自己Web服务器上的字

html 滚动条滚动过快会留下边框线的解决方案

《html滚动条滚动过快会留下边框线的解决方案》:本文主要介绍了html滚动条滚动过快会留下边框线的解决方案,解决方法很简单,详细内容请阅读本文,希望能对你有所帮助... 滚动条滚动过快时,会留下边框线但其实大部分时候是这样的,没有多出边框线的滚动条滚动过快时留下边框线的问题通常与滚动条样式和滚动行

C#实现将Office文档(Word/Excel/PDF/PPT)转为Markdown格式

《C#实现将Office文档(Word/Excel/PDF/PPT)转为Markdown格式》Markdown凭借简洁的语法、优良的可读性,以及对版本控制系统的高度兼容性,逐渐成为最受欢迎的文档格式... 目录为什么要将文档转换为 Markdown 格式使用工具将 Word 文档转换为 Markdown(.

Java中JSON格式反序列化为Map且保证存取顺序一致的问题

《Java中JSON格式反序列化为Map且保证存取顺序一致的问题》:本文主要介绍Java中JSON格式反序列化为Map且保证存取顺序一致的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未... 目录背景问题解决方法总结背景做项目涉及两个微服务之间传数据时,需要提供方将Map类型的数据序列化为co

使用vscode搭建pywebview集成vue项目实践

《使用vscode搭建pywebview集成vue项目实践》:本文主要介绍使用vscode搭建pywebview集成vue项目实践,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录环境准备项目源码下载项目说明调试与生成可执行文件核心代码说明总结本节我们使用pythonpywebv

使用Python和Tkinter实现html标签去除工具

《使用Python和Tkinter实现html标签去除工具》本文介绍用Python和Tkinter开发的HTML标签去除工具,支持去除HTML标签、转义实体并输出纯文本,提供图形界面操作及复制功能,需... 目录html 标签去除工具功能介绍创作过程1. 技术选型2. 核心实现逻辑3. 用户体验增强如何运行

CSS 样式表的四种应用方式及css注释的应用小结

《CSS样式表的四种应用方式及css注释的应用小结》:本文主要介绍了CSS样式表的四种应用方式及css注释的应用小结,本文通过实例代码给大家介绍的非常详细,详细内容请阅读本文,希望能对你有所帮助... 一、外部 css(推荐方式)定义:将 CSS 代码保存为独立的 .css 文件,通过 <link> 标签