`
nianshi
  • 浏览: 422249 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

Flex3播放器(版本1)

    博客分类:
  • Flex
阅读更多

<?xml version="1.0" encoding="utf-8"?>
<!-- 原创(参考:帮助文档)
     Product:Uyang
     http://www.uncool.cn/blogs
     基本实现了一个播放器应该有的功能,进度条,时间显示,声音控制,如果你喜欢可以再加上其他的功能;
     这里有一个扩展内容为XML扩展,想深入下去的朋友,可以用我这个读取XML的方法,然后把值赋给LIST,
     比如:<mx:list/> 通过itemRenderer来排列读取的内容。   
-->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml " layout="absolute"
creationComplete="playinit()">
<!--扩展XML内容 creationComplete="videoserver.send()" -->

    <mx:Script>
    <![CDATA[
       import mx.events.SliderEvent;
       import mx.events.VideoEvent;
       import mx.collections.ArrayCollection;
       import mx.rpc.events.ResultEvent;
      
       //用来收集XML反馈来的数组;
       private var _video:ArrayCollection;
      
       private var isplaying:Boolean=false;
      
       //设置你要播放的FLV文件地址;
       private var video_url:String = "tef.flv";
      
       private var playPosition:Number;
      
       private var soundPosition:Number;
      
       /*读取XML扩展内容
       分析HTTPSERVICE得到的结果,然后把结果赋值给_video;
       如果想知道更加的清楚,可以   trace(_video)看看;
       videos.xml的格式为:
       <?xml version="1.0" encoding="utf-8" ?>
    <videos>
      <video filename="xxx" />
     </videos>

       private function readXml(event:ResultEvent):void{
       _video = event.result.videos.video;
             }   
       */
       private function playinit():void{
        hs.enabled=false;
       }
      
       //播放按钮点击后事件:播放视频,同时分析是否播放来调整BUTTON上的标签,显示为PLAY或者PAUSE;
       //并监听播放器
       private function flvplay(event:Event):void{
        flv_video.source=video_url;
        hs.enabled=true;
        //xml扩展,读取第一个XML第一个文件示例
        //flv_video.source="videos/"+_video.getItemAt(0).filename;
        //trace(_video.getItemAt(0).filename);
        if(isplaying){
         flv_video.pause();
         play_btn.label="Play"
        }else {
         flv_video.play();
         play_btn.label="Pause"
        }
        isplaying = !isplaying;
        flv_video.addEventListener(VideoEvent.PLAYHEAD_UPDATE, progressHandler);       
       }
      
       //播放器监听事件,从FLV_VIDEO里不停的得到值然后传输给HSLIDER
       private function progressHandler(event:VideoEvent):void{
        hs.value=flv_video.playheadTime;
       }
      
       //拉动进度条
       private function thumbPress(event:SliderEvent):void{
        flv_video.pause();
       }
       //进度条改变后,得到的值赋予PLAYPOSITION;
       private function thumbChanges(event:SliderEvent):void{
        if(flv_video.playheadTime == -1){
      hs.value = 0;
      return;
     }
        playPosition = hs.value;
       }
      
       //放开进度条,再把PLAYPOSITION的值发给播放器;
       private function thumbRelease(event:SliderEvent):void{
        flv_video.playheadTime = playPosition;
        if(isplaying){
         flv_video.play();
        }else{
         flv_video.pause();
        }
       }
       //声音音量控制           
       private function sound_thumbChanges(event:SliderEvent):void{
        soundPosition = hs_sound.value;
       }
      
   
       private function sound_thumbRelease(event:SliderEvent):void{
        flv_video.volume = soundPosition;
       }
      
       //格式化时间
       private function formatTimes(value:int):String{
        var result:String = (value % 60).toString();
       
          if (result.length == 1){
              result = Math.floor(value / 60).toString() + ":0" + result;
          } else {
              result = Math.floor(value / 60).toString() + ":" + result;
          }
          return result;
       }
      
    ]]>
    </mx:Script>

    <!--通过HTTPSERVICE来分析XML,然后得出RESULT,结果的反馈在SCRIPT里 -->
    <!--此为读取XML扩展内容
    <mx:HTTPService id="videoserver" url="assets/videos.xml" result="readXml(event)"/>
     -->
    <!--主要的视频播放窗口 设置ID为FLVVIDEO,这个很重要,其他坐标可以随自己喜欢 -->
<mx:VideoDisplay   id="flv_video" x="322" y="97" width="320" height="240"/>

<!--播放器的播放进度条,用FLEX自带的HSLIDER来表现播放进度,同时可以拖动影片 -->
<mx:HSlider id="hs" x="322" y="340" minimum="0" maximum="{flv_video.totalTime}"
   thumbPress="thumbPress(event)"
   thumbRelease="thumbRelease(event)"
     change="thumbChanges(event)" />

<!--播放器声音控制 -->
<mx:HSlider id="hs_sound" x="560" y="340" width="80"
     minimum="0" maximum="1"
   thumbRelease="sound_thumbRelease(event)"
     change="sound_thumbChanges(event)"
     value="{flv_video.volume}" />

<!-- 播放按钮,根据是否在播放,按钮显示为:PLAY 或者PAUSE -->
<mx:Button id="play_btn" x="322" y="365" click="flvplay(event)" label="Play"/>

<!-- 播放按钮,停止播放影片 -->
<mx:Button id="stop_btn" label="Stop" x="439" y="365"
   click="flv_video.stop();play_btn.label='Play';hs.enabled=false;" />

<!-- 时间显示 -->
<mx:Label x="480" y="341" id="playtime"
   text="{formatTimes(flv_video.playheadTime)} : {formatTimes(flv_video.totalTime)}"
   color="#ffffff"/>
<mx:Label x="322" y="62" text="UYang Pruduct"/>


</mx:Application>

分享到:
评论

相关推荐

    Flex MP3播放器

    3. **Flex SDK**:Flex开发工具包,包含了编译Flex应用所需的所有工具和库,包括Flex编译器和Flex框架库。 4. **MP3解码**:播放MP3文件需要对音频数据进行解码。Flex可能使用了第三方库或者内置的解码器来处理MP3...

    flex播放器

    12. **跨平台兼容性**:Flex播放器基于Flash技术,虽然随着HTML5的普及,Flash的使用逐渐减少,但仍然在某些场合下被使用,特别是对于老版本的浏览器或特定的嵌入式设备。 通过研究提供的“FlexPaly”压缩包,...

    一个flex的播放器

    在Flex中,组件通常作为AS3类来实现,具有构造函数、属性、方法等成员。这样的设计使得组件可以像其他对象一样被实例化、继承和扩展。 在"flex制作播放器有浅到深"的文件名列表中,我们可以推测这是一系列教程或者...

    flex 播放器 源码

    `.flexProperties`文件同样是一个项目配置文件,它包含了关于Flex项目的基本信息,比如编译器版本、目标运行时、项目类型等。这些信息对于在Flex Builder环境下正确构建和运行项目是必要的。 `.project`文件是...

    自己做的flex AIR MP3 播放器

    1. **Flex编程**:Flex是一种用于构建用户界面的MXML和ActionScript框架。开发者使用Flex Builder或IntelliJ IDEA等IDE创建组件和应用,实现丰富的图形效果和交互性。 2. **ActionScript**:ActionScript是Adobe ...

    flex4做的MP3播放器

    3. **MX和Spark组件**: Flex4引入了Spark和MX两套组件集,Spark组件更加现代且可自定义,而MX组件则兼容早期版本。在播放器界面设计时,可能会使用Spark组件如Button、Slider等来实现播放、暂停、音量控制等功能。 ...

    flex音乐播放器

    Flex音乐播放器是一款基于Adobe Flex技术开发的音乐播放软件,主要使用ActionScript 3作为编程语言,MXML作为界面描述语言。Flex作为一个开源框架,它允许开发者创建具有丰富用户交互和动态图形的Web应用程序。这款...

    flash播放器源码FLV视频播放器,可完全用脚本控制的flex flash播放器源码

    1. `.actionScriptProperties`:这是Eclipse或Flex Builder项目的一个配置文件,用于存储ActionScript编译设置和代码提示信息。 2. `.flexProperties`:这是Flex项目特有的配置文件,包含有关项目编译、源代码路径等...

    使用FLEX3创建一个简单的FLV播放器.rar

    在本文中,我们将深入探讨如何使用Adobe Flex 3框架创建...通过学习和实践这个“使用FLEX3创建一个简单的FLV播放器”的教程,开发者将对Flex 3的视频处理能力有更深入的理解,也能掌握构建自定义多媒体应用的基本技能。

    flex 播放器 源码 项目

    1. **Flex SDK**:Flex SDK是开发Flex应用程序的基础,包括ActionScript编译器、Flex编译器以及相关的库文件。这个项目使用的源码可能是基于某个版本的Flex SDK构建的。 2. **MXML**:MXML是一种声明式语言,用于...

    Flex Air音乐播放器源码

    Flex Air音乐播放器源码是基于Adobe Flex Builder 3开发的一款应用程序,主要使用ActionScript编程语言,这使得它能够在Adobe AIR(Adobe Integrated Runtime)平台上运行。Adobe Flex是用于构建富互联网应用程序...

    Flex3与flex4的区别

    首先,由于Flex4需要Flash Player 10的支持,确保应用程序针对此版本的播放器进行编译是至关重要的。其次,Flex4中的CSS字体选择器现在需要命名空间,这与Flex3不同。为了适应这一变化,开发者需要在CSS中添加命名...

    Flex 3开发指南

    - **Flex 3 Beta 1**:这是一个早期测试版本,主要面向开发者进行初步的功能测试和反馈收集。 #### 二、Flex 3 的安装与配置 - **安装步骤**:下载Flex SDK后,通常需要解压到指定目录下,并且配置环境变量以确保...

    Adobe Flex Builder 3 写的播放器

    这个播放器项目是使用Flex Builder 3 创建的,它利用了Adobe Flex框架和ActionScript编程语言来实现多媒体播放功能。让我们深入探讨一下这个项目的相关知识点。 1. **Adobe Flex**:Flex 是一个开源的、基于MXML和...

    简单的flex、flash播放器

    1. **Flex基础**:Flex包含MXML和ActionScript两种编程语言,MXML用于界面布局,ActionScript用于处理逻辑。开发者可以通过Flex Builder或IntelliJ IDEA等集成开发环境(IDE)进行开发。 2. **Flash Player**:...

    Flex版Mp3播放器----大部分功能版二,后台

    Flex版的MP3播放器是一种基于Adobe Flex技术开发的多媒体应用程序,主要用来播放MP3音频文件。Flex是一种用于构建富互联网应用(RIA)的开放源代码框架,它使用ActionScript编程语言,允许开发者创建交互性强、用户...

    flex版的flv播放器源码

    1. **ActionScript 3.0**:这是AS2的升级版本,拥有更强大的面向对象特性、更高效的性能和更严格的类型检查。在Flex中,ActionScript 3.0用于编写业务逻辑和与用户界面交互的代码。 2. **Flex组件库**:Flex SDK...

    這是全flex寫的播放器

    标题中的“這是全flex寫的播放器”表明这个项目是一个完全使用Adobe Flex技术开发的视频播放器应用。Flex是基于ActionScript 3.0的开放源代码框架,用于构建富互联网应用程序(RIA)。它允许开发者使用MXML和...

    flex仿google播放器TOP100(改进版)

    【标题】"flex仿google播放器TOP100(改进版)"是一个基于Adobe Flex技术构建的项目,旨在模仿Google的音乐播放器界面,并且针对原版本进行了优化和升级。Flex是Adobe公司开发的一种用于创建富互联网应用程序(RIA)...

    Mp3播放器-源代码-java-flex

    《Mp3播放器-源代码-java-flex》是一个基于Adobe AIR技术的项目,旨在实现一个功能齐全的MP3播放器。这个项目使用了Java语言和Flex框架进行开发,展现了Adobe AIR平台的强大功能和跨平台特性。在Adobe Flash Builder...

Global site tag (gtag.js) - Google Analytics