- 浏览: 13731491 次
- 性别:
- 来自: 洛杉矶
文章分类
- 全部博客 (1994)
- Php / Pear / Mysql / Node.js (378)
- Javascript /Jquery / Bootstrap / Web (435)
- Phone / IOS / Objective-C / Swift (137)
- Ubuntu / Mac / Github / Aptana / Nginx / Shell / Linux (335)
- Perl / Koha / Ruby / Markdown (8)
- Java / Jsp (12)
- Python 2 / Wxpython (25)
- Codeigniter / CakePHP (32)
- Div / Css / XML / HTML5 (179)
- WP / Joomla! / Magento / Shopify / Drupal / Moodle / Zimbra (275)
- Apache / VPN / Software (31)
- AS3.0/2.0 / Flex / Flash (45)
- Smarty (6)
- SEO (24)
- Google / Facebook / Pinterest / SNS (80)
- Tools (22)
最新评论
-
1455975567:
xuezhongyu01 写道wocan23 写道我想问下那个 ...
Mysql: LBS实现查找附近的人 (两经纬度之间的距离) -
xuezhongyu01:
wocan23 写道我想问下那个111.1是怎么得来的我也看不 ...
Mysql: LBS实现查找附近的人 (两经纬度之间的距离) -
18335864773:
试试 pageoffice 在线打开 PDF 文件吧. pag ...
jquery在线预览PDF文件,打开PDF文件 -
青春依旧:
opacity: 0.5; 个人喜欢这种方式!关于其他css特 ...
css透明度的设置 (兼容所有浏览器) -
July01:
推荐用StratoIO打印控件,浏览器和系统的兼容性都很好,而 ...
搞定网页打印自动分页问题
mp3 播放
// 方案一 <?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="myInit()"> <mx:Script> <![CDATA[ import flash.events.*; import flash.net.URLRequest; import flash.media.Sound; import flash.media.SoundChannel; import flash.media.SoundTransform; import flash.utils.Timer; import flash.events.TimerEvent; import mx.controls.Alert; //mp3 的 url 地址 private var soundURL:String = "asflex.mp3"; //访问 url 上的东西都用 URLRequest 了 private var request:URLRequest = new URLRequest(soundURL); private var my_sound:Sound=new Sound(); // 新建 Sound 对象 //声明 SoundChannel 类型的变量 my_channel private var my_channel:SoundChannel; //新建 myTimer 对象并定义循环的时间间隔为10毫秒,循环次数为无限次(参数中的0表示无限次) private var myTimer:Timer = new Timer(10, 0); private function myInit():void{ my_sound.load(request); // 载入外部 mp3: She is my sin.mp3 } //播放音乐: private function playSound(): void{ Alert.show(my_sound.length.toString()); my_channel = my_sound.play(); // 音乐正式开始播放 //添加事件侦听器, 功能: 循环执行 timerHandler 函数(但这里还没有开始循环执行) myTimer.addEventListener(TimerEvent.TIMER, timerHandler); myTimer.start(); // 这里才开始循环执行 timerHandler 函数 } //停止音乐: private function stopSound():void{ //停止对函数 timerHandler 的循环执行, 因为音乐开始时 myTimer 对象就对函数 timerHandler 循环执行了 myTimer.stop(); my_channel.stop(); // 正式停止音乐 progress_hs.value = 0; // 使那"播放进度"条的值回到0,即回到最左端 } //定义被 myTimer 循环执行的函数 timerHandler private function timerHandler(event:TimerEvent):void{ //功能: 显示音乐的播放进度, 进度条会随着音乐的继续播放而向右缓缓移动; //把这个公式翻译为中文: 播放进度条的值=当前音乐播放时间/音乐的总时间 progress_hs.value = my_channel.position/my_sound.length; } //改变播放进度: 每当 "播放进度" 条被用户拉动过而使其值改变时,就执行以下函数 private function changeProgress():void{ //音乐停止且必须停止,是为了从新的播放时间点开始播放 //(感觉这里麻烦了点, 如果有更好的方法,恳请高手指点!请联系我: // www.Y-boy.cn 或 www.RiaHome.cn ,谢谢!) my_channel.stop(); //使音乐从新的时间点开始播放,新的时间点是小括号内的值, //即:"播放进度"条的值*音乐的总时间, 为什么会这样呢? //因为 HSlider 控件(那条"播放进度")的长度在下面被定义为1, //使得"播放进度"条的值在闭区间[0,1]内, 所以只需再乘以音乐的总时间就行了 my_channel = my_sound.play(progress_hs.value*my_sound.length); } //改变音量: 每当 "音量大小" 控制条被用户拉动过而使其值改变时,就执行以下函数 private function changeVolume():void{ //把 my_channel.soundTransform 赋值给 my_transform var my_transform:SoundTransform = my_channel.soundTransform; my_transform.volume = volume_hs.value; // 把"音量大小"控制条当前值赋给 my_transform.volume my_channel.soundTransform = my_transform; // 给 my_channel.soundTransform 赋值 /* 这里的用法很特别, 像使用 AS2.0 里面的滤镜(Filters)那样, 先创建一个 "第三者", 对 "第三者" 进行操作, 最后才把 "第三者" 赋值给 "当事人" . AS2.0 里面的滤镜的 "第三者" 是数组, 这里的 "第三者" 是 my_transform . 这里不能跟 AS2.0 里面的滤镜相比, 只不过为 了方便理解, 才这么说. (个人见解, 如有错请指出!) */ } //改变左右声道: 每当 "左右声道" 控制条被用户拉动过而使其值改变时,就执行以下函数 private function changePan():void{ //此处用法与上面的 改变音量 相同, 理解 改变音量 的, 就能理解这里 var my_transform:SoundTransform = my_channel.soundTransform; my_transform.pan = pan_vs.value; my_channel.soundTransform = my_transform; } ]]> </mx:Script> <!-- 显示歌曲名称 --> <mx:Label text="歌曲:She is my sin" fontSize="12"/> <!-- 播放进度条 --> <mx:Label text="播放进度:" fontSize="12" y="25"/> <mx:HSlider id="progress_hs" width="100" minimum="0" maximum="1" x="60" y="25" mouseDown="myTimer.stop()" mouseUp="myTimer.start()" change="changeProgress()"/> <!-- 音量控制条 --> <mx:Label text="音量大小:" fontSize="12" y="52"/> <mx:HSlider id="volume_hs" width="100" minimum="0" maximum="1" y="52" x="60" value="0.8" change="changeVolume()"/> <!-- 左右声道控制条 --> <mx:Label text="左右声道:" fontSize="12" x="-1" y="78"/> <mx:HSlider id="pan_vs" width="100" minimum="-1" maximum="1" x="60" y="80" value="0" change="changePan()"/> <!-- 播放和停止按钮 --> <mx:Button label="play" y="116" x="50" click="playSound()"/> <mx:Button label="stop" y="116" x="109" click="stopSound()"/> </mx:Application>
// 方案二 <?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" initialize="OnClick()"> <mx:Script> <![CDATA[ import flash.media.*; import mx.events.SliderEvent ; private var _type:int=2; private var _sound:Sound; private var _channel:SoundChannel; private var posNum:Number=0; private var _spectrumGraph:BitmapData = new BitmapData(256, 60, true, 0x000000aa); //暂停 private function OnPauseClick():void{ posNum=_channel.position; _channel.stop(); } //停止 private function OnStopClick():void{ posNum=0; _channel.stop(); } private function OnClick():void{ hsldLeft.value=1; //var spe:Spectrum=new Spectrum(); // Create bitmap for spectrum display // pnlFrame.addEventListener(Event.ENTER_FRAME, onEnterFrame); _sound = new Sound(new URLRequest("assets/song.mp3")); _channel = _sound.play( posNum ); } //输出图形 public function onEnterFrame():void { // Create the byte array and fill it with data var spectrum:ByteArray = new ByteArray( ); SoundMixer.computeSpectrum(spectrum); // Clear the bitmap _spectrumGraph.fillRect(_spectrumGraph.rect, 0x00000000); // Create the left channel visualization var i:int; if(2==_type){ for(i=0;i<256;i++) { _spectrumGraph.setPixel32(i, 35 + spectrum.readFloat( ) * 20, 0xffffffff); } } if(1==_type){ for(i=0;i<64;i++) { _spectrumGraph.fillRect(new Rectangle(4*i,50-spectrum.readFloat( ) * 50 ,4,spectrum.readFloat( ) * 50 ),0xffffffff); } } cns.graphics.beginBitmapFill(_spectrumGraph); cns.graphics.drawRect(0,0,256,60); cns.graphics.endFill(); var curPos:Number=_channel.position; var curLen:Number=_sound.length; cns.graphics.beginFill(0x0); cns.graphics.drawRect(0,80,256,10); cns.graphics.endFill(); cns.graphics.beginFill(0xa0); cns.graphics.drawRect(0,80,256*curPos/curLen,10); cns.graphics.endFill(); } //改变输出图形的 private function OnCnsClick():void{ _type--; if (0>=_type){ _type=2; } } //改变声音大小 private function OnChangeVolumn( ):void{ var transform:SoundTransform = _channel.soundTransform ; transform.volume =hsldLeft.value; _channel.soundTransform = transform; trace("_channel.leftPeak="+_channel.leftPeak*100 +" "+ "_channel.rightPeak="+_channel.rightPeak*100 +"_channel.soundTransform.volume"+_channel.soundTransform.volume*100); } ]]> </mx:Script> <mx:Canvas x="0" y="0" width="256" height="84" id="cns" enterFrame="onEnterFrame()" click="OnCnsClick()"> </mx:Canvas> <mx:Button x="0" y="92" label="start" click="OnClick()"/> <mx:Button x="196" y="92" label="stop" click="OnStopClick()"/> <mx:Button x="96" y="92" label="pause" click="OnPauseClick()"/> <mx:HSlider x="10" y="122" height="12" width="237" minimum="0" maximum="2" id="hsldLeft" change="OnChangeVolumn()" liveDragging="true"/> </mx:Application>
发表评论
-
iPhone、iPad 如何播放网页调用优酷视频?
2013-09-26 14:30 17737在线视频一般都是基 ... -
Scrolling Dynamically Loaded Text (as2)
2010-07-02 05:04 1962One quest ... -
flashAndPHP 简单交互
2010-06-17 01:53 1962第一章: flash,php 和 mysql ... -
交互动画按钮
2010-06-16 23:44 3726交互动画按钮 按钮元件是 Flash 的基本 ... -
引导路径动画 (2)
2010-06-16 23:41 18014.实例2——海底世界 ... -
引导路径动画 (1)
2010-06-16 23:31 3561引导路径动画(1) 在前面几节里,我们已经给大家介 ... -
动画基础
2010-06-16 23:22 1631动画的舞台结构及道具组合(1) 动画是一种动态 ... -
逐帧动画与夸张表情动画
2010-06-16 23:18 6479夸张表情动画的制作(1) (转之ET动画学堂) ... -
形状补间动画
2010-06-16 23:15 5481形状补间动画(1) ... -
逐帧动画与人运动动画制作
2010-06-16 23:11 5041人走路动画制作 ... -
动作补间动画
2010-06-16 23:07 4667动作补间动画(1) ... -
遮罩动画
2010-06-16 22:55 3576遮罩动画(1) ... -
Popup window ActionScript3 VS ActionScript2
2010-06-09 04:17 2666A common ... -
加载loader (How to Load External Images in Actionscript 3.0)
2010-05-28 02:18 1850Using the flash.display.Lo ... -
元件变色 change movieclip's color
2010-05-28 01:34 1906// This line defines a varia ... -
Flash AS3获取PHP数据(ActionScript3 + php + email)送ActionScript2
2010-04-23 21:11 5834一,AS3部分[下载 ] package { ... -
flex与flash元件交互
2010-01-30 04:31 1924前一段时间发了flex与JavaScript的数据交互 ,现 ... -
FLEX里的CSS样式设置教材
2010-01-29 00:38 2403FLEX3中应用 CSS完全详解 ... -
flex 扇形菜单
2010-01-29 00:27 9225在继 auzn经典Flex教程–KingnareStyle ... -
flex 画线
2010-01-29 00:23 3539实例1: <?xml version=" ...
相关推荐
Flex MP3播放器是一款基于Adobe Flex技术开发的音频播放软件,专为播放MP3格式的音乐文件设计。Flex是ActionScript 3.0的富互联网应用程序框架,它提供了丰富的用户界面组件和强大的数据服务功能,使得开发出具有...
flex播放mp3源码: 进度:" width="45"/> (event)" maximum="100" showDataTip="false"/> 音量:" width="45"/> (event)" value="5" maximum="10" showDataTip="false"/> 播放" click="button1_...
Flex MP3播放器是一款基于Adobe Flex技术开发的MP3音频播放器。Flex是ActionScript 3.0的一个框架,主要用于构建富互联网应用程序(Rich Internet Applications, RIA)。它使用MXML和ActionScript来构建用户界面,并...
对于MP3播放列表,我们可以使用List或DataGrid组件来显示歌曲列表。每个列表项可以绑定到一个包含歌曲信息的对象,如文件路径、标题和艺术家。列表选择改变时,更新Sound对象加载的MP3文件。 在Flex与AIR结合时,...
2. **MP3播放功能**: Flex MP3播放器的核心功能是对MP3文件进行解码和播放。它可能包含一个播放控件界面,如播放/暂停按钮、音量控制、进度条等。Flex使用内置的Sound类来处理音频播放,这个类提供了加载、播放、...
Flex MP3音乐播放器是一款基于Adobe Flex技术开发的音乐播放软件。Flex是Adobe公司推出的一种用于构建富互联网应用程序(RIA)的开源框架,它使用ActionScript编程语言和MXML标记语言,可以创建交互性强、用户体验...
Flex超炫MP3播放器是一款基于Adobe Flex技术构建的多媒体应用程序,主要用于播放MP3音频文件。Flex是Adobe公司推出的一款开源框架,它基于ActionScript 3.0编程语言和Flash Player运行时,允许开发者创建丰富的...
在这个“flex4做的MP3播放器”项目中,我们可以探讨几个关键的技术点和知识点。 1. **Flex SDK与Flash Player**: Flex SDK是Adobe提供的开发工具,包含了编译Flex应用程序所需的编译器和框架。编译后的Flex应用通过...
在本项目中,“flex做的MP3,MP4播放器”是一个使用Flex技术开发的多媒体播放器,能够从数据库中下载并播放MP3和MP4格式的音频和视频文件。该播放器的设计灵感来源于百度影音播放器,它实现了基本的播放功能,如播放...
标签“FLEX制作 MP3”进一步确认了这个项目的核心内容,即使用Flex技术处理MP3音频文件的播放。在Flex中,处理音频文件通常涉及到Adobe的Flash Media Server或者Flash Player的内置音频处理能力。 压缩包内的文件...
Flex MP3播放器是一款基于Adobe Flex技术开发的音频播放软件,专用于播放MP3格式的音频文件。Flex是一种开源的、基于ActionScript的框架,它允许开发者创建富互联网应用程序(RIAs),提供丰富的图形和交互体验。这...
这款名为“tingDemo”的简单MP3播放器是使用Flex技术实现的,它允许用户在Web上播放MP3音频文件。通过深入理解Flex的基础和MP3播放器的工作原理,我们可以从中学习到以下几个关键知识点: 1. **ActionScript**: ...
在这个场景中,我们讨论的是一个使用Flex技术制作的MP3播放器。 在Flex中开发MP3播放器,首先需要理解Flex的基本架构和编程模型。Flex应用程序基于ActionScript 3.0,这是一种面向对象的脚本语言,与Flash Player或...
标题中的“自己做的flex AIR MP3 播放器”表明这是一个个人开发的基于Adobe Flex技术的音频播放软件,特别地,它支持MP3格式的音频文件,并且使用Adobe Integrated Runtime (AIR) 进行跨平台运行。Flex是基于...
Flex在线MP3媒体播放器功能如下: 1.播放音乐时显示波形谱 2.歌词同步显示 3.播放模式调节(顺序播放、单曲循环、随机播放) 4.播放歌曲时显示进度条 5.快进 6.快退 7.声量调节 8.歌曲列表 9.播放控制(上一首、下一首...
总之,Flex MP3播放器的开发涉及到文件选择、音频加载、播放控制和元数据显示等多个方面,是学习Flex基础和多媒体处理的好项目。通过这个项目,初学者可以加深对Flex框架的理解,同时提升处理多媒体应用的能力。
在Flex编程中,有时我们需要处理音频数据,例如从网络接收或者本地存储的字节数组(ByteArray)中读取音频信息,并将其转化为可播放的声音(Sound)。标题"flex byteArray to sound"表明我们要讨论的是如何将一个...
在本文中,我们将深入探讨如何使用Adobe Flex技术创建一个功能丰富的MP3播放器,该播放器能够导入XML播放列表,并具备一系列控制功能。这个播放器不仅允许用户播放、暂停、停止音频,还支持切换至上一首或下一首曲目...
这个“Flex XML MP3播放器”项目是利用Flex技术开发的一个多媒体播放器,专用于播放MP3音频文件。在本文中,我们将深入探讨Flex和XML在构建此类应用中的关键知识点。 1. **Flex基础** Flex是Adobe公司推出的一种...