用NetStream的appendBytes播放FLV
public class MiniStream extends Sprite
{
private var _buffer:ByteArray = new ByteArray();
private var _ns:NetStream;
private var _nc:NetConnection;
private var _video:Video;
private var _tc:Number = 0;
private var _ustream:URLStream;
private var _elapsed_bytes:uint = 0; public function MiniStream(onVideo:Function)
{
_video = new Video(400,300);
addChild(_video);
_ustream = new URLStream();
_ustream.addEventListener(IOErrorEvent.IO_ERROR, onErr);
_ustream.addEventListener(ProgressEvent.PROGRESS, onProgress); } public function play():void
{
_nc = new NetConnection();
_nc.connect(null); if(_ns)
{
_ns.removeEventListener(NetStatusEvent.NET_STATUS, onStatus);
}
_ns = new NetStream(_nc);
_ns.addEventListener(NetStatusEvent.NET_STATUS, onStatus);
_ns.client = {};
_ns.bufferTime = 3;
_video.attachNetStream(_ns); _ns.play(null);
_ns.appendBytesAction(NetStreamAppendBytesAction.RESET_BEGIN);
_ns.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler); _ustream.load("http://example.com/h264vid.flv");
} private function onStatus(e:NetStatusEvent):void
{
trace(e.info.code);
} private function onProgress(e:ProgressEvent):void
{
//stores in our BA buffer
_ustream.readBytes(_buffer,0,_ustream.bytesAvailable);
_buffer.position = 0;
if(_buffer.bytesAvailable > 0)
{
_ns.appendBytes(_buffer);
_elapsed_bytes += _buffer.length;
_buffer.clear();
}
} private function netStatusHandler(evt:NetStatusEvent):void {
if (evt.info.code == "NetStream.Play.Stop") {
_ns.appendBytesAction(NetStreamAppendBytesAction.END_SEQUENCE);
}
} private function onErr(e:IOErrorEvent):void
{
//trace("ERROR", e.text);
}
}
用NetStream的appendBytes播放FLV的更多相关文章
- FluorineFx 播放FLV 时堆棧溢出解决 FluorineFx NetStream.play 并发时,无法全部连接成功的解决办法
http://25swf.blogbus.com/tag/FluorineFx/ http://www.doc88.com/p-7002019966618.html 基于Red5的视频监控系统的研究 ...
- 利用开源jPlayer播放.flv视频文件
最近工作中用到视频播放,在网上搜索对比了好几款开源播放插件后,觉得 jPlayer 是比较不错的,故作此记录! 接下来先快速的展示一下 利用jPlayer播放.flv视频的效果: <!DOCTY ...
- IIS中asp网站播放flv视频技术
播放flv视频文件需要使用flvplayer.swf程序(32K). HTML嵌入代码: <div id="FlashFile"> <object type=&q ...
- rtmp和http方式在播放flv方面的各自优势和劣势
下面是查的一点资料,比较一下用fms的rtmp和web的http播放flv的差别: 1. 区别 用HTTP方式:先通过IIS 将FLV下载到本地缓存,然后再通过NetConnection的本地连接来播 ...
- MVC应用程序播放FLV视频,部分视图可多地方重复引用
网页上播放Falsh之外,还有一种格式就是FLV的视频,也是最常见的.Insus.NET再想在MVC应用程序实现这功能. 实现这个功能,需要从网上下载一个叫vcastr22.swf.如果在网上找不到, ...
- HTTP协议下可拖动时间轴播放FLV的实现(伪流媒体)
HTTP协议下实现FLV的播放其实并不复杂,当初实现的原理是使用了flowPlayer插件实现的,效果还不错.但仍有两大问题影响着客户的访问情绪: 1.预加载时页面卡死,似乎没有边下边播. 2.偶尔边 ...
- 服务器无法播放flv格式的视频解决办法
浏览某个网站时播放视频可能会出现下面的情况: 其实原因很简单,因为国内大多都是Win2003的主机 .默认是没有指定输出FLV这种格式的. 虽然FTP里面可以看见,但无法通过http访问,也就无法播放 ...
- EasyNVR无插件直播服务器软件览器低延时播放监控摄像头视频(EasyNVR播放FLV视频流)
背景描述 EasyNVR的使用者应该都是清楚的了解到,EasyNVR一个强大的功能就是可以进行全平台的无插件直播.主要原因在于rtsp协议的视频流(默认是需要插件才可以播放的)经由EasyNVR处理可 ...
- 在网页中插入flash播放器,播放flv视频
效果图如下: 所用代码如下: <object id="FLVPlayer" height="480" width="640" code ...
随机推荐
- PAT (Advanced Level) 1075. PAT Judge (25)
简单模拟题. 注意一点:如果一个人所有提交的代码都没编译通过,那么这个人不计排名. 如果一个人提交过的代码中有编译不通过的,也有通过的,那么那份编译不通过的记为0分. #include<cstd ...
- 利用html5压缩图片,产出base64图片
/* 将页面选择的图片等比压缩成指定大小(长边固定) file:图片文件 callBack:回调函数 maxLen:长边的长度*/function makePic(file,callBack,maxL ...
- OpenCV学习(20) grabcut分割算法
http://www.cnblogs.com/mikewolf2002/p/3330390.html OpenCV学习(20) grabcut分割算法 在OpenCV中,实现了grabcut分割算法, ...
- Jsp页面获取项目名称
方式一: ${pageContext.request.contextPath} 方式二: <%= this.getServletContext().getContextPath() %>
- Charles从入门到精通
Charles 从入门到精通 发表于 2015-11-14 12:00 文章目录 1. 目录 2. 简介 3. 安装 Charles 4. 将 Charles 设置成系统代理 5. Charles 主 ...
- 一个不应该犯的错octave
今天在完成Andrew NG的机器学习神经网络作业,在实现花费函数的时候,没有使用循环,直接向量计算.前面都想的挺好的,很快就想到了如何使用向量来计算,可是在扩展y的时候,犯了一个超级傻的错误. y是 ...
- 通过Jenkins跑Jmeter接口测试脚本,我想当有接口跑失败时Jenkins发送邮件通知,这个如何弄呢
通过Jenkins跑Jmeter接口测试脚本,我想当有接口跑失败时Jenkins发送邮件通知,这个如何弄呢
- iOS开发 调用系统相机和相册
调用系统相机和相册 (iPad,iPhone)打开相机:(iPad,iPhone)//先设定sourceType为相机,然后判断相机是否可用(ipod)没相机,不可用将sourceType设定为相片库 ...
- 全方位分析Objcetive-C Runtime
本文详细整理了 Cocoa 的 Runtime 系统的知识,它使得 Objective-C 如虎添翼,具备了灵活的动态特性,使这门古老的语言焕发生机.主要内容如下: 引言 简介 与Runtime交互 ...
- java.lang.UnsupportedClassVersionError: com/T : Unsupported major.minor version问题解决
编译的时候jdk版本为1.8 2.运行的时候jdk版本为1.7 解决办法:将编译的jdk版本降为1.7,问题解决