谈AS3搭档NGINX制作FLV视频播放器

2010-08-17 10:22  -  AS相关 & Flex/Flash RIA & 计算机网络 -    

为了升级之前开发播放器功能,想要实现视频制定时间跳转播放而又不通过流媒体服务器,所以开始研究NGINX与flash的交互,但是国内相关的博客都是转来转去,搜出来的几乎全是一样,百分之百的教你怎么配置NGINX服务器和使用JW FLV Player,而对于AS3中怎样使用却无人提及,加之JW player的开源代码看起来比较恶心,所以决定研究flashAPI帮助文档和flv视频信息,最后后得到如下方法和心得,原理很简单:

传统的AS3播放flv的教程中对于快进的使用时NetStream.seek(播放时间)这个方法来实现的,其中参数里的播放时间需要在缓冲数据之内,而NGINX号称支持关键帧开始播放,实际的原理就是HTTP访问时,服务器返回的flv文件时从该关键帧开始加上相应的头部信息来实现的。这里我们要注意?start=xxxx中的xxxx一定要是flv视频信息中存在的帧才行,AS3中怎样获取flv视频的关键帧呢?
(全文…)

已有 0 条评论 »

我的游戏开发日记6

2010-04-22 1:36  -  游戏设计 -    

      最近游戏开发的进展不大,多方面的原因,客户端只比上次多了一个完整的loading机制(Load大家都会做,做法也没什么新奇的,所以在这里就不班门弄斧了),而之前说的网络通信的封装应该算是完成了,这块各个项目都会不同,它主要取决于网络通信协议的格式。
      我的想法是用单模式处理socket,由于flash还没有多线程,保险而又好管理的方法是我的程序中只有一个socket就够了,而它对数据操作的基本步骤也就方便统一管理,而对于接收过来的数据可以通过事件机制分发到正确的界面中去:

ACTIONSCRIPT:
  1. var data:Object = JSON.decode(this.readUTFBytes(this.bytesAvailable));
  2. this.dispatchEvent(new SocketEvent(data));

(全文...)

已有 0 条评论 »

我的游戏开发日记5

2010-04-08 10:34  -  游戏设计 -    

最近几天项目发生了一些变化,负责开发UI的美工人员排期要到4月7日后才能进行,而对于基础框架基本搭建完成的客户端开发来说一直处于停滞状态,这也给我充足的时间去了解mina,在征求桄欣的意见后决定用mina尝试下,顺便要说一点的是目前的服务器端开发已经不是由自己负责开发了,所以目前的尝试纯粹基于兴趣,与公司的项目无关,而正是的server由一个经验丰富的同事采用java socket的方式进行,最近正在忙于与他进行协议制定,所以很少有机会更新博客。
(全文...)

已有 0 条评论 »

我的游戏开发日记4

2010-04-01 3:22  -  游戏设计 -    

      由于服务器端不确定因素很多,所以决定先搭建flash端的程序框架,因为之前仔细研读过很多成功的代码和框架,所以这部分工作相对顺利的多,三天不到我的框架初具模样了,下面对这段时间的工作做一下简要的总结:
      1.延续Flex中的cairngorm的主体结构;
      2.借鉴佳杰的“功能独立”的理念,将基础显示模型抽象成window,以功能为单元将一些繁琐的事件监听和内存释放步骤封装;
      3.借鉴了老何读取文本数据的方式,将txt和xml文件压缩成zip包,通过开源的ZipArchive项目进行解析以提升数据加载效率;
      4.对于第三条中的文本的数据结构,则用json的方式存储,这样可以方便用PHP+MySQL完成相应的数值编辑程序;
      5.而对于砸碎的素材则用JSFL的方法进行整理,完成部分素材和文本数据的自动匹配; (全文...)

已有 0 条评论 »

Wordpress主题模板 watch trueblood online movie fans watch ncis online