判断一个视频播放结束
2012-05-08 12:52
441 查看
其实下面那篇参考文章提到的问题眼下对我来讲意义不大。因为我需要做的事情只是当一个视频在播放中被中断时,进行一些必要的清理工作,比如释放资源。
通常播放本地磁盘上的flv/f4v文件的代码写法是:
当将_video从playlist中移走,或者当前播放的视频文件已经播放完——即收到Stream.Play.Stop事件——都不会令NetStream关闭与这个资源的链接,所以一定要呼叫_stream.close(),当然建议在这个操作前做判断if(this._stream),以免收到空引用的异常。
在close()被执行之后,当前播放中的视频会被终止,并且Flash的播放器(AIR)会释放这个视频文件的资源给windows,于是该视频文件就可以被其他软件使用,也可以被删除或重写。
正常来讲,播放一个视频文件的过程中收到的NetStatus事件的顺序是:
Refs:
http://huisecheng.com/blog/2011/07/netstream%E7%9C%9F%E6%AD%A3%E7%9A%84%E6%92%AD%E6%94%BE%E5%AE%8C%E6%AF%95%E5%88%A4%E6%96%AD-as3/
通常播放本地磁盘上的flv/f4v文件的代码写法是:
this._video = new Video(); this._connection = new NetConnection(); this._connection.connect(null); this._stream = new NetStream(this._connection); this._video.attachNetStream(this._stream); this._clientObject = new Object(); this._clientObject.onMetaData = this.metaDataListener; this._clientObject.onXMPData = this.XMPDataListener; this._clientObject.onTextData = this.XMPDataListener; this._stream.client = this._clientObject; this._stream.addEventListener(NetStatusEvent.NET_STATUS, this.netStreamStatusHandler); this._stream.addEventListener(IOErrorEvent.IO_ERROR, this.netStreamIOErrorsHandler); this._stream.addEventListener(AsyncErrorEvent.ASYNC_ERROR, this.netStreamAsynErrorsHandler); this.addChild(this._video); this._stream.play(this._file);
当将_video从playlist中移走,或者当前播放的视频文件已经播放完——即收到Stream.Play.Stop事件——都不会令NetStream关闭与这个资源的链接,所以一定要呼叫_stream.close(),当然建议在这个操作前做判断if(this._stream),以免收到空引用的异常。
在close()被执行之后,当前播放中的视频会被终止,并且Flash的播放器(AIR)会释放这个视频文件的资源给windows,于是该视频文件就可以被其他软件使用,也可以被删除或重写。
正常来讲,播放一个视频文件的过程中收到的NetStatus事件的顺序是:
NetStream.Play.Start NetStream.Buffer.Full NetStream.Buffer.Flush NetStream.Buffer.Flush ....... NetStream.Buffer.Empty NetStream.Buffer.Flush NetStream.Play.Stop
Refs:
http://huisecheng.com/blog/2011/07/netstream%E7%9C%9F%E6%AD%A3%E7%9A%84%E6%92%AD%E6%94%BE%E5%AE%8C%E6%AF%95%E5%88%A4%E6%96%AD-as3/
相关文章推荐
- 关于Unity中如何判断一个动画播放结束
- unity Animator 怎么判断一个动画播放结束
- jq判断视频播放结束,ended
- unity Animator 怎么判断一个动画播放结束
- iOS开发:获取一个视频、音频文件的播放时长
- VS2013 / MFC + OpenCV 2.4.9实现视频的播放暂停和结束
- SPCAMLEditor使用系列(1)--利用SPCAMLEditor,10分钟打造一个在线视频播放库
- 如何计算 一个音视频文件 (.ts)文件 (包含pcr信息). 播放所使用的带宽
- 关于一个帧开始和结束的判断
- [OpenGL]从零开始写一个Android平台下的全景视频播放器——2.2 使用GLSurfaceView和MediaPlayer播放一个平面视频(中)
- 请问能不能将一个外部应用程序的视频播放窗口中的动画实时传到我的程序中的一个窗口中呢?
- Python3利用网页接口制作一个免费的VIP视频播放软件
- [DirectShow] 播放一个源视频 [大三TJB_708]
- OpenCV学习(四)之播放一个AVI视频
- 如何判断一个Http Message的结束——python源码解读
- 关于视频+音频APP,存在一个用户播放,其他用户就卡死的问题。视频分发?
- OpenCV笔记6:播放一个视频
- cocos2d或者iOS制作视频+虚列动画做游戏时候,视频播放和结束时顿闪问题解决方案
- [OpenGL]从零开始写一个Android平台下的全景视频播放器——2.1 使用GLSurfaceView和MediaPlayer播放一个平面视频(上)
- [OpenGL]从零开始写一个Android平台下的全景视频播放器——2.2 使用GLSurfaceView和MediaPlayer播放一个平面视频(中)