- 浏览: 422094 次
- 性别:
- 来自: 济南
-
最新评论
-
nianshi:
slideDown就是show的滑动效果版本, slideUp ...
Jquery零碎代码收藏 -
nianshi:
以后编写JS代码,少写<div onclick=&quo ...
Jquery零碎代码收藏 -
nianshi:
获取匹配元素相对父元素的偏移var p = $("p ...
Jquery零碎代码收藏 -
nianshi:
获取匹配元素在当前窗口的相对偏移var p = $(" ...
Jquery零碎代码收藏 -
wuchu:
谢谢
Flex 读取XML配置文件总结
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml " layout="absolute" creationComplete="playinit()" width="500" height="400">
<mx:Script>
<![CDATA[
import mx.events.SliderEvent;
import mx.events.VideoEvent;
import mx.collections.ArrayCollection;
import mx.rpc.events.ResultEvent;
import flash.display.Stage;
private var _video:ArrayCollection;
private var isplaying:Boolean=false;
//private var video_url:String = "C:/video.flv";
private var playPosition:Number;
private var soundPosition:Number;
private function readXml(event:ResultEvent):void{
_video = event.result.videos.video;
}
private function playinit():void{
hs.enabled=false;
}
private function flvplay(event:Event):void{
var query:String = ExternalInterface.call("window.location.search.substring", 1);
if(query) {
var pos:int = query.indexOf("=");
//Alert.show(String(pos));
if(pos != -1) {
var value:String = query.substr(pos+1);
}
}
flv_video.source="tef.flv";
//flv_video.source="c:/vedio.flv";
hs.enabled=true;
if(isplaying){
flv_video.pause();
play_btn.label="播放"
}else {
flv_video.play();
play_btn.label="暂停"
}
isplaying = !isplaying;
flv_video.addEventListener(VideoEvent.PLAYHEAD_UPDATE, progressHandler);
}
private function progressHandler(event:VideoEvent):void{
hs.value=flv_video.playheadTime;
}
private function thumbPress(event:SliderEvent):void{
flv_video.pause();
}
private function thumbChanges(event:SliderEvent):void{
if(flv_video.playheadTime == -1){
hs.value = 0;
return;
}
playPosition = hs.value;
}
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;
}
private function display():void
{
if(fs.selected)
{
stage.fullScreenSourceRect =new
Rectangle(flv_video.x,flv_video.y,flv_video.width,flv_video.height);
//stage.displayState="fullScreen";
stage.displayState =StageDisplayState.FULL_SCREEN;
application.width="100%";
application.height="100%"
}
else
{
//stage.displayState="normal";
stage.displayState = StageDisplayState.NORMAL;
}
}
]]>
</mx:Script>
<mx:VideoDisplay id="flv_video" x="0" width="100%" height="332"
y="0" source="{Application.application.parameters.movie}"
autoPlay="false" autoRewind="true" bufferTime="0.5"
maintainAspectRatio="true" />
<mx:ApplicationControlBar height="20" width="100%" bottom="53" x="0" horizontalAlign="center">
<mx:HSlider id="hs" fillColors="#000099,, #0000ff, #ffffff,
#eeeeee" showTrackHighlight="true" minimum="0"
maximum="{flv_video.totalTime}" thumbPress="thumbPress(event)"
thumbRelease="thumbRelease(event)" change="thumbChanges(event)"
width="90%" horizontalCenter="0"/>
</mx:ApplicationControlBar>
<mx:ApplicationControlBar width="100%" height="38" horizontalAlign="center" x="0" bottom="10">
<mx:ApplicationControlBar width="123" cornerRadius="15">
<mx:Button id="play_btn" click="flvplay(event)" label="播放" cornerRadius="13"/>
<mx:Button id="stop_btn" label="停止" cornerRadius="13"
click="flv_video.stop();play_btn.label='播放';hs.enabled=false;" />
</mx:ApplicationControlBar>
<mx:ApplicationControlBar width="94" cornerRadius="15">
<mx:Label id="playtime"
text="{formatTimes(flv_video.playheadTime)} :
{formatTimes(flv_video.totalTime)}" color="#ffffff" width="77"/>
</mx:ApplicationControlBar>
<mx:ApplicationControlBar cornerRadius="15" width="100">
<mx:HSlider id="hs_sound" width="82" minimum="0" maximum="1"
thumbRelease="sound_thumbRelease(event)"
change="sound_thumbChanges(event)" value="{flv_video.volume}" />
</mx:ApplicationControlBar>
<mx:ApplicationControlBar color="#EC968F">
<mx:CheckBox label="全屏" id="fs" change="display();"/>
</mx:ApplicationControlBar>
</mx:ApplicationControlBar>
</mx:Application>
<!--
其中播放器播放源文件的路径是默认安装FMS3.0之后在
C:\Program Files\Adobe\Flash Media Server 3\applications\vod\media 之中。调用方式是flv_video.source="rtmp://localhost/vod/vedio.flv";可以通过修改配置文件改变视频 存放目录
播放器的代码大多来自网上 只是有几点修改
第一 取得路径 由于安全机制 播放器只能通过服务器地址取值
第二 全屏问题
<param name="allowFullScreen" value="true" />
全屏时播放器大小不变
<mx:VideoDisplay id="flv_video" x="0" width="100%" height="90%"
y="0" source="{Application.application.parameters.movie}"
autoPlay="false" autoRewind="true" bufferTime="0.5"
maintainAspectRatio="false" />
width="100%" height="90%"十分重要 这将会与
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml
" layout="absolute" creationComplete="playinit()" width="500" height="400">密切相关
最终解决方法
stage.fullScreenSourceRect =new Rectangle(flv_video.x,flv_video.y,flv_video.width,flv_video.height);
第三 播放flv视频时不留下缓存
http://etoaoo.iteye.com/blog/341345
这个版本中的基本功能都可以实现 但是最后发现一个巨大的问题
可以被嗅探 Replay Media Catcher
这个软件通过记录网络包 并且以相同网络包给FMS服务器发包 骗取服务器的数据 然后自己一段一段组装成流媒体视频 这个漏洞几乎宣布了项目的死刑
不过解决方案很快就出来了
发表评论
-
Flex小记录
2011-02-24 10:18 1311Flex读取XML: <mx:HTTPServic ... -
flex实现滑动显示隐藏效果
2010-12-30 15:30 1627鼠标划过的时候显示菜单栏 ,鼠标移开后隐藏菜单栏。比较常用 ... -
flex DataTimePicker时间控件
2010-12-27 11:54 1330两种DatatimePicker: 1.Datatim ... -
ActionScript 生成伪Guid
2010-12-24 09:52 1226在一个Flash制作的图片上传程序中(使用了FileRefer ... -
Flex中Image组件怎么才能非等比例拉伸图片
2010-12-23 15:49 1528Image组件怎么才能非等比例拉伸图片 设 ... -
Flex中Accordion用法
2010-12-23 11:45 3093<? xml version = & ... -
Flex(替代session过期)实现用户长时间不操作要求重新登录的处理
2010-12-23 11:08 1519flex(替代session过期)用户长时间不操作要求重新登录 ... -
ActionScript 3.0 Socket编程
2010-12-23 09:56 1191在使用ActionScript3.0进行编程 ... -
12个简单易用的flex函数
2010-12-21 10:10 11621.拷贝内容到剪贴板: ... -
Flex自定义控件——Pagebar分页控件
2010-12-20 09:41 5286开发时经常遇到用一个DataGrid分页显示 ... -
Flex资源,很全,很牛!
2010-12-20 09:30 14761、as3ebaylib http://code ... -
Flex 窗体 最大化、最小化实例
2010-12-20 09:28 2734---导入flexMdi.swc (http ... -
在Flex中复制文字到操作系统的剪贴板
2010-12-15 11:18 1257这个实例演示了怎么样使用System. ... -
Flex让Slider控件拖动时显示Tooltip
2010-12-14 16:10 1933格式化与自定义Slider中显示的Tooltip ... -
Flex给Alert加个Icon
2010-12-14 16:05 1294给Alert加个Icon 很简单只要先 Embed 一 ... -
在Flex中用Validator验证数字、字符串、Email、电话号码等
2010-12-14 09:54 4341mx.validators ... -
Flex中使用FileReference类下载文件
2010-12-14 09:47 1806下面的实例演示了Flex中的 File ... -
Flex使用ArrayCollection的filterFunction属性过滤DataGrid
2010-12-14 09:42 1821下面的实例演示了在Flex中怎样使用 ... -
Flex 树形控件(Tree )的使用
2010-12-13 16:24 3488一、树形控件的常用属性 1、dragMoveE ... -
FLEX3中应用CSS完全详解手册(下)
2010-12-13 11:40 897myTabs中的设置 cornerRadiusTab ...
相关推荐
3. **Flex SDK**:Flex开发工具包,包含了编译Flex应用所需的所有工具和库,包括Flex编译器和Flex框架库。 4. **MP3解码**:播放MP3文件需要对音频数据进行解码。Flex可能使用了第三方库或者内置的解码器来处理MP3...
12. **跨平台兼容性**:Flex播放器基于Flash技术,虽然随着HTML5的普及,Flash的使用逐渐减少,但仍然在某些场合下被使用,特别是对于老版本的浏览器或特定的嵌入式设备。 通过研究提供的“FlexPaly”压缩包,...
在Flex中,组件通常作为AS3类来实现,具有构造函数、属性、方法等成员。这样的设计使得组件可以像其他对象一样被实例化、继承和扩展。 在"flex制作播放器有浅到深"的文件名列表中,我们可以推测这是一系列教程或者...
2. Flex组件模型:研究如何自定义和使用Flex提供的UI组件,如播放按钮、进度条等。 3. 媒体处理:学习如何加载、播放和控制多媒体文件,可能涉及到FLV、MP4等格式。 4. 事件驱动编程:掌握如何响应用户操作和播放...
2. **ActionScript**:ActionScript是Adobe Flash和Flex平台的脚本语言,用于控制动画、视频和交互性。在Flex项目中,ActionScript用于编写业务逻辑和与用户的交互。 3. **MP3编码与解码**:播放MP3文件需要对音频...
3. **MX和Spark组件**: Flex4引入了Spark和MX两套组件集,Spark组件更加现代且可自定义,而MX组件则兼容早期版本。在播放器界面设计时,可能会使用Spark组件如Button、Slider等来实现播放、暂停、音量控制等功能。 ...
2. **ActionScript 3**:ActionScript是Flash平台的核心编程语言,版本3是一个重大升级,支持面向对象编程,性能显著提升,语法更接近现代编程语言,使得开发更复杂的应用成为可能。 3. **MXML**:MXML是一种声明式...
2. `.flexProperties`:这是Flex项目特有的配置文件,包含有关项目编译、源代码路径等信息。 3. `.project`:这是Eclipse项目的基本配置文件,定义了项目的构建路径和属性。 4. `.settings`:这是一个目录,包含项目...
在本文中,我们将深入探讨如何使用Adobe Flex 3框架创建...通过学习和实践这个“使用FLEX3创建一个简单的FLV播放器”的教程,开发者将对Flex 3的视频处理能力有更深入的理解,也能掌握构建自定义多媒体应用的基本技能。
Flex播放器源码项目是一个基于Adobe Flex技术的多媒体播放器应用程序。Flex是ActionScript 3.0的一个开发框架,主要用于构建富互联网应用(RIA),它提供了丰富的用户界面组件和强大的数据服务支持。在这个项目中,...
Flex Air音乐播放器源码是基于Adobe Flex Builder 3开发的一款应用程序,主要使用ActionScript编程语言,这使得它能够在Adobe AIR(Adobe Integrated Runtime)平台上运行。Adobe Flex是用于构建富互联网应用程序...
首先,由于Flex4需要Flash Player 10的支持,确保应用程序针对此版本的播放器进行编译是至关重要的。其次,Flex4中的CSS字体选择器现在需要命名空间,这与Flex3不同。为了适应这一变化,开发者需要在CSS中添加命名...
- **视频和音频播放**:Flex 3增强了对多媒体的支持,可以直接在应用程序中嵌入视频和音频播放器,并且支持多种格式。 - **动画效果**:利用ActionScript 3.0,开发者可以轻松创建复杂的动画效果,提高应用程序的...
这个播放器项目是使用Flex Builder 3 创建的,它利用了Adobe Flex框架和ActionScript编程语言来实现多媒体播放功能。让我们深入探讨一下这个项目的相关知识点。 1. **Adobe Flex**:Flex 是一个开源的、基于MXML和...
标题中的“简单的flex、flash播放器”指的是使用Adobe Flex技术和Flash技术开发的轻量级视频播放器。Flex是基于ActionScript 3.0的开放源码框架,用于构建富互联网应用程序(RIA),而Flash则是广泛用于创建动画和...
Flex版的MP3播放器是一种基于Adobe Flex技术开发的多媒体应用程序,主要用来播放MP3音频文件。Flex是一种用于构建富互联网应用(RIA)的开放源代码框架,它使用ActionScript编程语言,允许开发者创建交互性强、用户...
1. **ActionScript 3.0**:这是AS2的升级版本,拥有更强大的面向对象特性、更高效的性能和更严格的类型检查。在Flex中,ActionScript 3.0用于编写业务逻辑和与用户界面交互的代码。 2. **Flex组件库**:Flex SDK...
标题中的“這是全flex寫的播放器”表明这个项目是一个完全使用Adobe Flex技术开发的视频播放器应用。Flex是基于ActionScript 3.0的开放源代码框架,用于构建富互联网应用程序(RIA)。它允许开发者使用MXML和...
【标题】"flex仿google播放器TOP100(改进版)"是一个基于Adobe Flex技术构建的项目,旨在模仿Google的音乐播放器界面,并且针对原版本进行了优化和升级。Flex是Adobe公司开发的一种用于创建富互联网应用程序(RIA)...
《Mp3播放器-源代码-java-flex》是一个基于Adobe AIR技术的项目,旨在实现一个功能齐全的MP3播放器。这个项目使用了Java语言和Flex框架进行开发,展现了Adobe AIR平台的强大功能和跨平台特性。在Adobe Flash Builder...