关于flash播放器中的波形图案是怎么绘制出来的?

作者&投稿:咎庄 (若有异议请与网页底部的电邮联系)
你好,我要用Flash builder做一个动态显示的图,就是读取txt文件(里面有X、Y值),根据坐标值画出波形~

package{import flash.display.Shape;import flash.display.Sprite;import flash.events.Event;import flash.events.ProgressEvent;import flash.geom.Point;import flash.net.URLLoader;import flash.net.URLRequest;import flash.text.TextField;import flash.text.TextFieldAutoSize;import flash.utils.setTimeout;/*** TTTTT * @author Zhaozhen * 2014-4-15*/[SWF(frameRate="25")]public class TTTTT extends Sprite{private var urlLoader:URLLoader;private var url:String="mydata.csv";private var myText:String="";private var myDataArr:Array=[];private var progressText:TextField;private var line:Shape;private var curIndex:int = 0;public function TTTTT(){progressText=new TextField();progressText.autoSize=TextFieldAutoSize.LEFT;addChild(progressText);urlLoader=new URLLoader();urlLoader.addEventListener(Event.COMPLETE, __onLoaderComplaeteHander);urlLoader.addEventListener(ProgressEvent.PROGRESS, __onProgressHander);line=new Shape();addChild(line);line.y=200;line.graphics.lineStyle(1);setTimeout(StartLoad, 110);}private function StartLoad():void{urlLoader.load(new URLRequest(url));}private function __onLoaderComplaeteHander(evt:Event):void{removeChild(progressText);progressText=null;myText=urlLoader.data as String;myDataArr=myText.split("
");var tmparr:Array=[];for (var a:int=myDataArr.length - 1; a >= 0; a--){tmparr=myDataArr[a].split(",");myDataArr[a]=new Point(Number(tmparr[0]), Number(tmparr[1]));}urlLoader.removeEventListener(Event.COMPLETE, __onLoaderComplaeteHander);urlLoader.removeEventListener(ProgressEvent.PROGRESS, __onProgressHander);urlLoader=null;stage.addEventListener(Event.ENTER_FRAME,__onEnterFrameHandler);}private function __onEnterFrameHandler(evt:Event):void{var len:int=myDataArr.length;line.graphics.clear();line.graphics.lineStyle(1);line.graphics.moveTo(0,0);for (var a:int=curIndex; a len){stage.removeEventListener(Event.ENTER_FRAME,__onEnterFrameHandler);}}private function __onProgressHander(evt:ProgressEvent):void{progressText.text=evt.bytesLoaded + "/" + evt.bytesTotal;progressText.x=(stage.stageWidth - progressText.width) * 0.5;progressText.y=(stage.stageHeight - progressText.height) * 0.5;}}} 做了个简单的示例 , 不知道是不是你想要的结果

先把音乐文件导进库里,然后选中时间轴上的某一个关键帧,并且该关键帧所在的图层未被锁定,然后在库中把音乐文件拖进场景----注意是拖进flash的场景,不是拖到时间轴上。

这个可以,除一个波形总体宽度比例约束没加,其他都加了,看楼主不像很菜的。你就自己加吧

import flash.display.Graphics; 

import flash.events.Event; 

import flash.media.Sound; 

import flash.media.SoundChannel; 

import flash.media.SoundMixer; 

import flash.net.URLRequest; 

 

var PLOT_HEIGHT:int = this.stage.stageWidth/2; 

var CHANNEL_LENGTH:int = 600; 

var level:int = 4;                      //条形宽度

var space:Number = 1;                      //条形间隔约束 1.0为条形间隔为0,

var waveheight:Number = 0.5;            //条形高度比例约束,

 

var snd:Sound = new Sound(); 

var req:URLRequest = new URLRequest("十二种颜色.mp3"); 

snd.load(req); 

 

var channel:SoundChannel; 

channel = snd.play(); ; 

 

var bytes:ByteArray = new ByteArray(); 

var g:Graphics = this.graphics;

this.addEventListener(Event.ENTER_FRAME, onEnter);

function onEnter(event:Event):void 

    SoundMixer.computeSpectrum(bytes, true, 0); 

    

    g.clear(); 

 var colo:uint = 0xff3333;

    g.lineStyle(0, colo,0.5);               //条形边框

    g.beginFill(colo,0.5);  

     

    var n:Number = 0; 

         

    // left channel 

    for (var i:int = 0; i < 256; i++)  

    { 

  if(i%level==0)

  {

         n += (bytes.readFloat() * PLOT_HEIGHT*waveheight);

   n = n/level;

   if(n!=0)

   {

          g.drawRect((i*space),PLOT_HEIGHT,level,(-n));

   }

   n = 0;

  }

  else

  {

   n += bytes.readFloat() * PLOT_HEIGHT*waveheight;

  }

    }   

    g.endFill(); 

}



1新建一个文件,就你点新建以后默认的那种就可以了。
2点文件-导入-导入到舞台-选你要弄的相片。然后在桢面板上(就是你图片上方的那个面板)数个二三十格点右键插入桢。如果音乐比较长的话就多数一点》插入桢。
3点文件-导入-导入到库,选你要作背景音乐的音乐,
把你的那个音乐文件导入到库。然后点-插入-时间轴-图层,你点侦面板左下方的那个小按钮也可以,是一样的。
4把你的声音文件从右方的库里面左键点住拖到舞台上(就是中间那块白地方)。
然后你可以看到桢面板上有个波形的图案。
这里要做的事基本上就完了,如果中央的舞台就是那块白底大小跟你的相片不配的话就鼠标放在空白处点右键-文档属性,匹配那一栏选内容点确定就可以了。
5.点文件-导出-导出影片-格式选FLASH影片(*.swf)的就可以了。


电脑中已安装Flash网页视频还是提示未安装Flash播放器怎么办_百度...
电脑中已经安装了Flash网页视频播放器,但仍然提示未安装Flash播放器的问题可能是由于以下几个原因引起的:1. 浏览器缓存问题:尝试清除浏览器缓存,重新加载页面。有时候浏览器缓存会导致页面无法正确检测到已安装的Flash播放器。2. Flash插件被禁用:检查浏览器设置,确保Flash插件没有被禁用。在大多数现代...

flash插件和flash播放器的区别是什么
分类: 电脑\/网络 >> 软件 >> 多媒体软件 问题描述:我被这FLASH插件和FLASH播放器搞糊涂了,下载了8。0安装后可7。0的播放器还存在,有哪位大侠能帮我解释一下??\/小女子谢过 解析:FLASH插件是一个ActiveX控件。而flash播放器是一个exe的可执行程序。插件默认安装在 C:\\WINDOWS\\Downloaded ...

什么是FlashPlayer?
以及Adobe Flash Player,用于播放Flash文档。Flash广泛应用于网络网页的矢量动画文件格式。通过使用矢量图形,制作的胶片占用较少的存储空间。用flash制作的电影有自己的特殊文件格式(SWF)。该公司声称,全球97%的网络浏览器都内置了flash播放器,这是Macromedia富互联网应用(RIA)概念的实现平台。

flash是一个什么软件?
被大量应用于互联网网页的矢量动画文件格式。 使用向量运算(Vector Graphics)的方式,产生出来的影片占用存储空间较小。 使用Flash创作出的影片有自己的特殊档案格式(swf) 该公司声称全世界97%的网络浏览器都内建Flash播放器(Flash Player) 是Macromedia提出的“富因特网应用”(RIA)概念的实现平台 Flash 是一种创作工...

Flash Player是什么?
Adobe Flash Player是一款播放器。浏览器经常弹出来的Adobe Flash Player,它是一款高级客户端运行时使用的播放器。它短小精悍,能够在各种浏览器、操作系统和移动设备上使用,功能强大,兼容性高。超过13亿台的连接Internet的桌面计算机和移动设备上都安装了Adobe Flash Player,它使公司和个人能够构建并带给...

哪个浏览器支持flash
若希望寻找当前可以支持Flash的浏览器,还需根据浏览器的具体版本以及是否有相关插件安装进行确定。至于目前市面上的主流浏览器,大部分已经不再原生支持Flash插件。随着技术的进步和网络安全的要求,大多数现代浏览器选择减少对Flash的支持。在过往Chrome浏览器中运行Flash主要通过集成Flash播放器来工作。某些...

swf用什么播放器可以播放
SWF文件可以使用多种播放器进行播放。SWF是一种矢量图形动画格式,通常用于网页上的动画展示。关于播放SWF文件的播放器,以下是一些常见和推荐的选择:1. Adobe Flash Player:这是一款由Adobe公司开发的播放器,可以播放包括SWF在内的Flash格式文件。该播放器广泛应用于各种浏览器和操作系统上,是播放SWF...

Flash Player是什么软件?
Adobe Flash Player最初设计目的为播放2维向量动画,但至此之后成为适合开发创造丰富型互联网应用程序、流视频音频的工具。Flash成为嵌入网页中的小游戏、动画以及图形用户界面常用的格式。2017年7月26日,Adobe Systems公司宣布,计划在2020年底逐步淘汰Flash播放器插件。Adobe同时建议内容开发者将Flash内容移植...

请问你的adobeflashplayer8能用吗?
是的,我的Adobe Flash Player 8能够使用。Adobe Flash Player 8是一款已经发布的Flash播放器版本,它支持播放Flash动画和应用程序。然而,由于软件更新和浏览器变化的快速步伐,Adobe已经停止了Flash Player的更新和支持。因此,在某些情况下可能会遇到与兼容性和安全相关的问题。如果您需要播放特定的Flash...

flash播放器不见了怎么办?
8、那么还不行的话你就在这个基础上把防火墙关闭,应该就没事了,反正我是这样就好了,记得重新启动当然能不用就不用flash,关闭防火墙的话电脑安全性是真的无法防护我是为了听网课,不支持别的播放器没办法,哎。9、Player稳定运行,删除或者缺少Flash Helper Service组件,你的Adobe Flash Player就可能...

宁河县15860281177: 在flash中,用静态图片,做一个水流动的样子,是用图形.....? -
前厕硫酸: 先把图片准备好,建三个层,下面两个层放同一张图,但上面层中图的位置稍向上(不要太大),最上面的层里做一个影片剪辑(做几个条形移动,注意连贯),把最上面的层做成遮罩就可以了,不明白的话到高手网去看一下 school.gaoshou.net

宁河县15860281177: flash制作音乐盒的代码是什么?
前厕硫酸: 是音频频谱吗?AS3帮助文档就有实例如下package {import flash.display.Sprite;import flash.display.Graphics;import flash.events.Event;import flash.media.Sound;import flash.media.SoundChannel;import flash.media.SoundMixer;import ...

宁河县15860281177: flash是什么组成的 -
前厕硫酸: flash中的图片画出来的图都矢量图,放大后不会出现马塞克.但如果导入位图放大后还是会变模糊的

宁河县15860281177: 如何绘制像Windows Media Player那样的波形图 -
前厕硫酸: computeSpectrum 获取当前声音波形的快照,并将其放在指定的 ByteArray 对象中.然后根据ByteArray 的 readFloat来判断package { import flash.display.Sprite; import flash.events.Event; import flash.media.Sound; import flash.media.SoundMixer...

宁河县15860281177: 在Flash中,简述图像和图形的相同与不同之处 -
前厕硫酸: 能表示出图像是位图以像素为单位,放大会虚化,图形是矢量图,放大无虚化,可不断放大.然后介绍制作分别涉及的软件.用一个图像和图形,然后做出同时放大厚的效果对比讲述.

宁河县15860281177: Adobe Flash Player的作用是什么 -
前厕硫酸: Adobe Flash Player是美国Adobe开发的一款用关于播放Flash文件格式播放软件,具体分为IE内核,和非IE内核两种,对应不同的浏览器内核版本.为的是在上网冲浪时可以看到连续播放的动画.也有独立的.exe应用程序可单独播放Flash文件.是日常上网的浏览器必备软件.

宁河县15860281177: FLASH中在鼠标点击的位置出现一个图形 -
前厕硫酸: 你可以做四个影片剪辑,分别是四种图形圈标识,再做一个透明的按钮(做按钮时只在第四帧放上图形,前面三帧不放东西),然后将四个图形圈标识都放到各自的位置上(在一帧上),并分别设置它们的名称为yuan,xing,sjx,zfx(选中图形圈标...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网