`
zhanghan
  • 浏览: 192233 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

as3 mp3播放器中波谱显示的实现

    博客分类:
  • Flex
阅读更多
package{
import flash.display.Sprite;
import flash.events.Event;
import flash.media.Sound;
import flash.media.SoundChannel;
import flash.media.SoundMixer;
import flash.net.URLRequest;
import flash.utils.ByteArray;

/**
* @author zhanghongbo
*/
public class ProgressBar2 extends Sprite {
private var _sound : Sound;
private var _channel : SoundChannel;
private var _sprite : Sprite;

public function ProgressBar2() {

_sprite = new Sprite();
_sprite.y = 20;
_sprite.x = 10;

addChild(_sprite);
addEventListener(Event.ENTER_FRAME, onEnterFrame);
_sound = new Sound(new URLRequest("mp3.mp3"));
_channel = _sound.play();
}

public function onEnterFrame(event : Event) : void {
var barWidth : int = 200;
var barHeight : int = 5;
var loaded : int = _sound.bytesLoaded;
var total : int = _sound.bytesTotal;
var length : int = _sound.length;
var position : int = _channel.position;
// Draw a background bar

graphics.clear();
graphics.beginFill(0xFFFFFF);
graphics.drawRect(10, 10, barWidth, barHeight);
graphics.endFill();
if(total > 0) {
// The percent of the sound that has loaded

var percentBuffered : Number = loaded / total;
// Draw a bar that represents the percent of
// the sound that has loaded

graphics.beginFill(0xCCCCCC);
graphics.drawRect(10, 10, barWidth * percentBuffered, barHeight);
graphics.endFill();
// Correct the sound length calculation

length /= percentBuffered;
// The percent of the sound that has played

var percentPlayed : Number = position / length;
// Draw a bar that represents the percent of
// the sound that has played

graphics.beginFill(0x666666);
graphics.drawRect(10, 10, barWidth * percentPlayed, barHeight);
graphics.endFill();
}


//控制波形
var spectrum : ByteArray = new ByteArray();
SoundMixer.computeSpectrum(spectrum, true);
// Clear the bitmap

_sprite.graphics.clear();
_sprite.graphics.lineStyle(1, 0x336699);
var i : int;
for(i = 0;i < 256;i++) {
var __y : int = 30 + (spectrum.readFloat() * 30 * -1);
if(__y == 30)continue;
_sprite.graphics.moveTo(i, 30);
//_sprite.graphics.drawRect(i, __y, 1, 1);
_sprite.graphics.lineTo(i, __y);
}
}
}
}


唉,先记下吧,有机会再作一个漂亮的播放器.
分享到:
评论

相关推荐

    波谱管理的小工具

    在这个波谱管理工具中,C++可能被用来实现高效的数据处理算法,以及创建稳定可靠的软件架构。 综上所述,"波谱管理的小工具"结合了光谱学、光线追踪技术和C++编程,为用户提供了一个集数据管理、分析和可视化的综合...

    7小波谱分析_波谱分析_

    在本资源中,我们关注的是利用MATLAB进行小波谱分析,这是一种强大的工具,广泛应用于各个科学和工程领域,如声音分析、图像处理、地震学、医学成像等。 首先,我们要理解什么是小波谱分析。小波分析是傅立叶变换的...

    遥感波谱重采样

    在提供的描述中提到了一个实现了批量读取.xls格式波谱库并进行重采样的函数。这表明该程序可能使用了Python编程语言,因为Python在遥感数据分析领域广泛使用,且有丰富的库如Pandas用于处理表格数据。该函数可能涉及...

    有机化合物波谱解析复习指导答案.pdf

    有机化合物波谱解析是有机化学领域中一个非常重要的分支,它涉及到使用各种波谱技术对有机化合物的结构进行定性和定量分析。以下是对文档中提及的有机化合物波谱解析的相关知识点的详细阐述。 ### 紫外光谱解析 ...

    国产卫星波谱响应函数

    标题中的“国产卫星波谱响应函数”涉及到的是遥感领域中的关键概念,它是指国产卫星传感器在不同波段对地物反射或发射的电磁辐射的敏感程度。波谱响应函数(Spectral Response Function, SRF)是遥感图像处理和分析...

    广东药学院《波谱解析》期末考试试卷(含答案).pdf

    3. 核磁共振波谱(NMR):NMR通过测量分子中核自旋对外磁场的响应来提供关于分子结构的信息。题目中涉及了不同类型的核磁共振技术,如酰胺I带分析,以及核磁共振中的化学位移、自旋偶合常数(如4J值)、以及核磁共振...

    hy.rar_波谱_波谱库_波谱数据库

    3. 搜索与匹配算法:开发高效的谱图搜索算法,如基于特征匹配的相似度计算,以实现快速的谱图比对。 4. 可视化界面:设计直观的用户界面,允许用户查看和分析波谱图,进行数据筛选和比较。 5. 安全与权限管理:...

    耦合标量-Tachyon反弹宇宙中的原始引力波谱

    我们进一步分析了反弹宇宙中引力波谱的尺度相关性和时间相关性,并将它们与单场膨胀情形下的原始谱进行比较。 我们讨论了对早期宇宙物理学的影响,并介绍了从弹跳宇宙中提取的与模型无关的观测特征。

    有机波谱综合解析的例题

    - **核磁共振氢谱**:显示为CH3COCH(CH3)2,为酮类化合物。 - **推测结构**:根据核磁共振氢谱,化合物属于酮类,具有甲基取代的特征。 ##### 实例五:C7H13O2Br - **红外光谱**:2850到2950cm^-1的一些吸收峰,...

    波谱解析.zip

    波谱解析是分析化学、物理学以及生命科学领域中的一种重要技术,它通过对物质发射或吸收的电磁辐射进行分析,揭示出物质的结构、组成及动态信息。本压缩包"波谱解析.zip"可能包含了多种类型的波谱数据和相关分析资料...

    Landsat8波谱响应函数

    简单来说,SRF就像传感器的“视力图”,显示了在特定波长范围内传感器能捕获多少能量。对于Landsat8,它有8个波段,覆盖了从近红外到可见光的宽广范围,每个波段都有其特定的波谱响应特性。 1. **波段1-2 ( Coastal...

    平面波谱理论在紧缩场干扰源分析中的应用

    ### 平面波谱理论在紧缩场干扰源分析中的应用 #### 引言 紧缩场(%&’()作为现代高精度天线和雷达散射截面((%2)测量的重要测试场所,其核心在于利用单反射面或多反射面系统,在较短距离内将馈源发射出的球面波...

    2020学年高中物理 第十四章 电磁波 第4节 电磁波与信息化社会 第5节 电磁波谱作业 新人教版选修3-4.doc

    电磁波是物理学中的一个重要概念,尤其在高中物理学习中占据着核心地位。电磁波是由变化的电场和磁场相互垂直并交替产生的波动现象,它们在真空中以恒定的速度传播,即光速。电磁波谱涵盖了多种不同波长和频率的电磁...

    小波谱分析mallat算法经典程序

    Mallat算法是小波谱分析中的一个重要算法,由法国科学家Stéphane Mallat提出,主要用于信号的多分辨率分析和去噪。 在MATLAB软件环境下,我们可以实现小波谱分析的Mallat算法。MATLAB是一款强大的数值计算和数据...

    波谱原理及解析期末复习、答案

    波谱原理是物理学中的一个重要分支,它涉及到对物质结构和性质的研究,特别是在化学、物理、生物和医学等领域具有广泛的应用。在"波谱原理及解析期末复习、答案"这个资料中,我们可以预见到将涵盖一系列关于波谱学的...

    高分一号波谱响应函数

    在提供的压缩包文件中,gf1_wfv1.hdr、gf1_wfv2.hdr、gf1_wfv3.hdr和gf1_wfv4.hdr是四个波段的头文件,包含了关于波谱响应函数的具体参数和元数据。它们通常包含每个波段的中心波长、带宽、光谱分辨率等关键信息。...

    核桃壳木质素的波谱分析

    这项研究是由郑志锋、邹局春等人完成,他们通过这些波谱分析方法来探究云南漾濞泡核桃壳中木质素的化学官能团和化学键特征。以下是根据给定文件信息详细展开的知识点。 首先,波谱分析是一种分析物质分子结构的重要...

    核磁共振波谱分析 ppt

    核磁共振波谱分析是指通过测量原子核在磁场中的自旋行为来获取化合物的结构信息的一种分析技术。该技术基于原子核的磁矩和自旋角动量的关系,通过测量原子核的磁矩和自旋角动量来获得化合物的结构信息。 原子核的...

    遥感技术应用课件:地物波谱特征.pptx

    在遥感技术中,地物波谱特征和黑体辐射图是两个重要的知识点,都是遥感技术的基础知识点之一。只有了解地物波谱特征和黑体辐射图,才能更好地应用遥感技术来获取地球表面的信息。 地物波谱特征和黑体辐射图的应用...

    波谱分析书后习题原理答案

    波谱分析是化学和生物学等领域中重要的分析方法,主要用于研究物质的结构和性质。这个压缩包文件包含了关于波谱分析的书后习题及其详细解答,对于理解和掌握波谱技术非常有帮助。以下是对每个子文件中涉及的知识点的...

Global site tag (gtag.js) - Google Analytics