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);
}
}
}
}
唉,先记下吧,有机会再作一个漂亮的播放器.
分享到:
相关推荐
在提供的描述中提到了一个实现了批量读取.xls格式波谱库并进行重采样的函数。这表明该程序可能使用了Python编程语言,因为Python在遥感数据分析领域广泛使用,且有丰富的库如Pandas用于处理表格数据。该函数可能涉及...
在本资源中,我们关注的是利用MATLAB进行小波谱分析,这是一种强大的工具,广泛应用于各个科学和工程领域,如声音分析、图像处理、地震学、医学成像等。 首先,我们要理解什么是小波谱分析。小波分析是傅立叶变换的...
有机化合物波谱解析是有机化学领域中一个非常重要的分支,它涉及到使用各种波谱技术对有机化合物的结构进行定性和定量分析。以下是对文档中提及的有机化合物波谱解析的相关知识点的详细阐述。 ### 紫外光谱解析 ...
标题中的“国产卫星波谱响应函数”涉及到的是遥感领域中的关键概念,它是指国产卫星传感器在不同波段对地物反射或发射的电磁辐射的敏感程度。波谱响应函数(Spectral Response Function, SRF)是遥感图像处理和分析...
得益于C++在性能上的卓越表现以及强大的系统级操作能力,开发团队可以在此基础上实现复杂的算法和稳定的数据处理流程,从而保证波谱管理工具在执行大量数据运算时的高效率和稳定性。 光线追踪技术在波谱管理工具中...
3. 核磁共振波谱(NMR):NMR通过测量分子中核自旋对外磁场的响应来提供关于分子结构的信息。题目中涉及了不同类型的核磁共振技术,如酰胺I带分析,以及核磁共振中的化学位移、自旋偶合常数(如4J值)、以及核磁共振...
3. 搜索与匹配算法:开发高效的谱图搜索算法,如基于特征匹配的相似度计算,以实现快速的谱图比对。 4. 可视化界面:设计直观的用户界面,允许用户查看和分析波谱图,进行数据筛选和比较。 5. 安全与权限管理:...
我们进一步分析了反弹宇宙中引力波谱的尺度相关性和时间相关性,并将它们与单场膨胀情形下的原始谱进行比较。 我们讨论了对早期宇宙物理学的影响,并介绍了从弹跳宇宙中提取的与模型无关的观测特征。
- **核磁共振氢谱**:显示为CH3COCH(CH3)2,为酮类化合物。 - **推测结构**:根据核磁共振氢谱,化合物属于酮类,具有甲基取代的特征。 ##### 实例五:C7H13O2Br - **红外光谱**:2850到2950cm^-1的一些吸收峰,...
波谱分析是现代化学和生物学领域中不可或缺的一部分,它通过各种光谱技术分析物质的结构和成分。波谱分析的书后习题解答对于学习者来说,是巩固理论知识和提高实践技能的重要资源。本文将对波谱分析的几个重要分支...
简单来说,SRF就像传感器的“视力图”,显示了在特定波长范围内传感器能捕获多少能量。对于Landsat8,它有8个波段,覆盖了从近红外到可见光的宽广范围,每个波段都有其特定的波谱响应特性。 1. **波段1-2 ( Coastal...
波谱解析是分析化学、物理学以及生命科学领域中的一种重要技术,它通过对物质发射或吸收的电磁辐射进行分析,揭示出物质的结构、组成及动态信息。本压缩包"波谱解析.zip"可能包含了多种类型的波谱数据和相关分析资料...
### 平面波谱理论在紧缩场干扰源分析中的应用 #### 引言 紧缩场(%&’()作为现代高精度天线和雷达散射截面((%2)测量的重要测试场所,其核心在于利用单反射面或多反射面系统,在较短距离内将馈源发射出的球面波...
电磁波是物理学中的一个重要概念,尤其在高中物理学习中占据着核心地位。电磁波是由变化的电场和磁场相互垂直并交替产生的波动现象,它们在真空中以恒定的速度传播,即光速。电磁波谱涵盖了多种不同波长和频率的电磁...
Mallat算法是小波谱分析中的一个重要算法,由法国科学家Stéphane Mallat提出,主要用于信号的多分辨率分析和去噪。 在MATLAB软件环境下,我们可以实现小波谱分析的Mallat算法。MATLAB是一款强大的数值计算和数据...
波谱原理是物理学中的一个重要分支,它涉及到对物质结构和性质的研究,特别是在化学、物理、生物和医学等领域具有广泛的应用。在"波谱原理及解析期末复习、答案"这个资料中,我们可以预见到将涵盖一系列关于波谱学的...
在提供的压缩包文件中,gf1_wfv1.hdr、gf1_wfv2.hdr、gf1_wfv3.hdr和gf1_wfv4.hdr是四个波段的头文件,包含了关于波谱响应函数的具体参数和元数据。它们通常包含每个波段的中心波长、带宽、光谱分辨率等关键信息。...
这项研究是由郑志锋、邹局春等人完成,他们通过这些波谱分析方法来探究云南漾濞泡核桃壳中木质素的化学官能团和化学键特征。以下是根据给定文件信息详细展开的知识点。 首先,波谱分析是一种分析物质分子结构的重要...
核磁共振波谱分析是指通过测量原子核在磁场中的自旋行为来获取化合物的结构信息的一种分析技术。该技术基于原子核的磁矩和自旋角动量的关系,通过测量原子核的磁矩和自旋角动量来获得化合物的结构信息。 原子核的...
在遥感技术的应用中,地物波谱特征和黑体辐射图是两个关键的基础知识点。它们为科学家和研究人员提供了分析地表信息的重要工具,使得从环境监测到农业评估等一系列应用成为可能。 地物波谱特征是通过遥感设备捕捉...