宜昌本地软件开发与弱电工程服务商
项目咨询 · 快速响应
您当前的位置: > 博客2 > AS2与AS3技术

[AS3]as3处理视频时常见的NetStream information objects介绍

2016-10-13 00:16:48 点击量:7 标签: 收藏本文

在NetStream信息对象提供的大量信息中,我常用到的有这么几个:

信息 类型 范围 说明
NetStream.Play.PublishNotify 发布流 所有订阅者 当发布者的流开始发布的时候,所有的订阅者都会收到这个消息。但发布者不会收到这个消息。
NetStream.Play.UnpublishNotify 发布流 所有订阅者 当发布者的流停止发布的时候,所有的订阅者都会收到这个消息。但发布者不会收到这个消息。
NetStream.Publish.BadName 发布流 发布者 当发布者试图发布一个已经存在的流时会收到这个消息。只有发布者可以收到这个消息。
NetStream.Publish.Start 发布流 发布者 当发布者开始发布流的时候收到这个消息。只有发布者可以收到这个消息。
NetStream.Unpublish.Success 发布流 发布者 当发布者结束发布流的时候收到这个消息。只有发布者可以收到这个消息。
NetStream.Play.Reset 播放流 播放者 当播放者开始播放流之前会收到这个消息。只有播放者可以收到这个消息 。
NetStream.Play.Start 播放流 播放者 当播放者开始播放流的时候会收到这个消息。只有播放者可以收到这个消息 。
NetStream.Play.Stop 播放流 播放者 当播放者停止播放流的时候会收到这个消息。只有播放者可以收到这个消息 。

假设我们有2个流,一个叫做PU,用于发布,一个叫做PL,用于播放PU发布的流。那么当PU开始发布的时候(如果发布成功),消息的发布情况是这样的:
PU会收到 NetStream.Publish.Start消息,PL会收到 NetStream.Play.PublishNotify消息。

当PU停止发布的时候,情况是这样的:
PU会收到 NetStream.Unpublish.Success,PL会收到 NetStream.Play.UnpublishNotify。

当PL开始播放的时候,情况是这样的:
PL会收到 NetStream.Play.Reset、 NetStream.Play.Start,PU不会收到任何消息。

当PL停止播放的时候,情况是这样的:
PL会收到 NetStream.Play.Stop消息,PU不会收到任何消息。

由此可见,发布者的发布和停止发布操作,所有的订阅者都可以收到,而订阅者对流的播放操作则并不会通知流的发布者。因此,对于流的控制上,还是要盯紧发布者。

ABOUT US
宜昌农人网络科技有限公司

我们是一家提供综合软件外包与弱电工程服务的技术公司。

业务涵盖定制软件、管理系统、网站、小程序、APP、系统集成、网络布线、监控安防、门禁、机房建设及长期技术维护。

公司地址:湖北省宜昌市伍家岗区东站二路6号三峡(宜昌)大数据产业园海洋馆二楼A203室