flex 播放器 支持rtmp协议(也支持http协议)

本文地址:http://qzone.qq.com/blog/64814361-1231836472


搞了一个上午,终于把支持rtmp协议的播放器给他做出来了·心里真开心···其实很多人都写出来 了的但是就是不愿意拿出来与大家分享,今天我把代码放上来,与大家分享一下,但是这个播放器的播放和一些其他必须的功能我都没有做,只是类似一个demo一样的。。
代码如下:

v<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" initialize="VideoExample()">
<mx:Script>
<![CDATA[

import flash.display.Sprite;
import flash.events.*;
import flash.media.Video;
import flash.net.NetConnection;
import flash.net.NetStream;

private var videoURL:String = "IronMan.flv";
private var connection:NetConnection;
private var stream:NetStream;

public function VideoExample():void {
connection = new NetConnection();
connection.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
connection.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
connection.connect("rtmp://localhost/oflaDemo");
}

private function netStatusHandler(event:NetStatusEvent):void {
switch (event.info.code) {
case "NetConnection.Connect.Success":
connectStream();
break;
case "NetStream.Play.StreamNotFound":
trace("Unable to locate video: " + videoURL);
break;
}
}

private function connectStream():void {
var stream:NetStream = new NetStream(connection);
stream.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
stream.addEventListener(AsyncErrorEvent.ASYNC_ERROR, asyncErrorHandler);
var video:Video = new Video();
video.width = 400;
video.height = 400;
video.attachNetStream(stream);
stream.play(videoURL);
sprct.addChild(video);
}

private function securityErrorHandler(event:SecurityErrorEvent):void {
trace("securityErrorHandler: " + event);
}

private function asyncErrorHandler(event:AsyncErrorEvent):void {
// ignore AsyncErrorEvent events.
}
]]>
</mx:Script>
<mx:VideoDisplay id="sprct" x="57" y="22" width="707" height="494"/>
</mx:Application>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值