包 | flash.net |
类 | public dynamic class NetStreamPlayOptions |
继承 | NetStreamPlayOptions EventDispatcher Object |
语言版本: | ActionScript 3.0 |
运行时版本: | Flash Player 10, AIR 1.5, Flash Lite 4 |
NetStream.play2()
方法的各个选项。将 NetStreamPlayOptions 对象传递给 play2()
后,该类的属性会指定各个选项。此类的主要用途是动态实现流之间的过渡,以便切换具有不同比特率和大小的流或交换到播放列表中的不同内容。
属性 | 由以下参数定义 | ||
---|---|---|---|
constructor : Object
对类对象或给定对象实例的构造函数的引用。 | Object | ||
len : Number
streamName 中指定的流的持续播放时间(以秒为单位)。 | NetStreamPlayOptions | ||
offset : Number
服务器在 Flash Media Server 动态流的不同位速率流之间切换的绝对流时间。 | NetStreamPlayOptions | ||
oldStreamName : String
旧的流或要从其过渡的流的名称。 | NetStreamPlayOptions | ||
start : Number
streamName 的开始时间(以秒为单位)。 | NetStreamPlayOptions | ||
streamName : String
要过渡到或播放的新流的名称。 | NetStreamPlayOptions | ||
transition : String
播放或过渡到 streamName 所使用的模式。 | NetStreamPlayOptions |
方法 | 由以下参数定义 | ||
---|---|---|---|
创建一个 NetStreamPlayOptions 对象以指定要传递给 NetStream.play2() 方法的选项。 | NetStreamPlayOptions | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。 | EventDispatcher | ||
将事件调度到事件流中。 | EventDispatcher | ||
检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。 | EventDispatcher | ||
表示对象是否已经定义了指定的属性。 | Object | ||
表示 Object 类的实例是否在指定为参数的对象的原型链中。 | Object | ||
表示指定的属性是否存在、是否可枚举。 | Object | ||
从 EventDispatcher 对象中删除侦听器。 | EventDispatcher | ||
设置循环操作动态属性的可用性。 | Object | ||
返回此对象的字符串表示形式,其格式设置遵守区域设置特定的约定。 | Object | ||
返回指定对象的字符串表示形式。 | Object | ||
返回指定对象的原始值。 | Object | ||
检查是否用此 EventDispatcher 对象或其任何祖代为指定事件类型注册了事件侦听器。 | EventDispatcher |
len | 属性 |
public var len:Number
语言版本: | ActionScript 3.0 |
运行时版本: | Flash Player 10, AIR 1.5, Flash Lite 4 |
streamName
中指定的流的持续播放时间(以秒为单位)。默认值为 -1,这意味着 Flash Player 会播放实时流直到此流不再可用,或播放录制流直至结尾。如果传递给 len
的值为 0,则 Flash Player 将播放录制流开始后的 start
秒处的单个帧(假设 start
值大于或等于 0)。
如果传递给 len
的值为正数,则 Flash Player 会在实时流可用后将其播放 len
秒,或将录制流播放 len
秒。(如果流在 len
秒之前结束,则播放会随流的结束而结束。)
如果传递给 len
的值为 -1 之外的负数,则 Flash Player 会将该值视为 -1 进行解释。
相关 API 元素
offset | 属性 |
public var offset:Number
语言版本: | ActionScript 3.0 |
运行时版本: | Flash Player 10.1, AIR 2, Flash Lite 4 |
服务器在 Flash Media Server 动态流的不同位速率流之间切换的绝对流时间。当在 NetStreamPlayTransitions.SWITCH
过渡模式下调用 NetStream.play2()
时,将使用 offset
属性。有两种切换模式:快速切换和标准切换。offset
的默认值为 -1
,即快速切换模式。编写 ActionScript 逻辑以确定何时使用快速切换,何时使用标准切换。
Fast switch
在快速切换模式中,Flash Media Server 切换到新流时不会等待缓冲区中的数据播放完。offset
之后的任何来自旧流的缓冲数据都会被刷新。快速切换比标准切换速度更快,原因是不必将来自旧流的缓冲数据播放完。
offset
的默认值为 -1,即快速切换模式。当 offset
为 -1 时,切换会在 netstream.time + 3
之后的第一个可用关键帧发生,大约比播放点晚 3 秒。还可以将 offset
属性设置为大于 netstream.time
的任何值。例如,要在播放点之后 5 秒执行快速切换,可将 offset
属性设置为 netstream.time + 5
。如果 offset
的值小于 netstream.time
,将发送 NetStream.Play.Failed
状态事件。
注意:offset
属性是绝对流时间,不是与播放点的偏移。例如,要从播放点快速切换 5 秒,可将 offset
属性设置为 netstream.time + 5
,而不是设置为 5
。
标准切换
要使用标准切换而非快速切换,可将 offset
设置为大于 netstream.time + netstream.bufferLength
的值。
当客户端的缓冲区位速率较高,并且由于带宽下降(不是由于 CPU 问题或放弃的帧)而希望切换到较低带宽时,应使用标准切换。客户端可能希望尽可能长时间地播放完较高位速率,并在缓冲区末尾切换到较低位速率(标准切换的模式)。
有关详细信息,请参阅 Adobe Flash Media Server Developer's Guide 中的 “Fast switching between streams”。
相关 API 元素
oldStreamName | 属性 |
public var oldStreamName:String
语言版本: | ActionScript 3.0 |
运行时版本: | Flash Player 10, AIR 1.5, Flash Lite 4 |
旧的流或要从其过渡的流的名称。当使用 NetStream.play2()
简单地播放流(而不执行过渡)时,此属性的值应为 null 或未定义。否则,请指定要从其过渡的流。
相关 API 元素
start | 属性 |
public var start:Number
语言版本: | ActionScript 3.0 |
运行时版本: | Flash Player 10, AIR 1.5, Flash Lite 4 |
streamName
的开始时间(以秒为单位)。有效值为 -2、-1 和 0。
start
的默认值为 -2,这意味着 Flash Player 将首先尝试播放 streamName
中指定的实时流。如果未找到具有该名称的实时流,Flash Player 将播放 streamName
中指定的录制流。如果实时流和录制流均未找到,Flash Player 将打开名为 streamName
的实时流(即使无人在此实时流上进行发布)。当有人开始在此实时流上进行发布时,Flash Player 将开始播放此流。
如果传递给 start
的值为 -1,则 Flash Player 仅播放 streamName
中指定的实时流。在未找到任何实时流的情况下,如果 len
设置为 -1,则 Flash Player 会无限期地等待实时流;如果 len
设置为其他值,则 Flash Player 会在等待 len
值指定的秒数之后,开始播放播放列表中的下一项。
如果传递给 start
的值为 0 或一个正数,则 Flash Player 仅播放名为 streamName
的录制流,并从该流开始后的 start
秒处开始播放。如果未找到任何录制流,则 Flash Player 将立即开始播放播放列表中的下一项。
如果传递给 start
的值为 -1 或 -2 之外的负数,则 Flash Player 会将该值视为 -2 进行解释。
相关 API 元素
streamName | 属性 |
public var streamName:String
语言版本: | ActionScript 3.0 |
运行时版本: | Flash Player 10, AIR 1.5, Flash Lite 4 |
要过渡到或播放的新流的名称。如果 oldStreamName
为 null 或未定义,则只需调用 NetStream.play2()
即可开始播放 streamName
。如果指定了 oldStreamName
,则当调用 NetStream.play2()
时,将使用 transition
属性中指定的过渡模式将 oldStreamName
过渡到 streamName
。
相关 API 元素
transition | 属性 |
public var transition:String
语言版本: | ActionScript 3.0 |
运行时版本: | Flash Player 10, AIR 1.5, Flash Lite 4 |
播放或过渡到 streamName
所使用的模式。可能的值是 NetStreamPlayTransitions 类中的常量。根据是否调用 Netstream.play2()
来播放或过渡某个流,过渡模式会导致不同的行为。有关过渡模式的详细信息,请参阅 NetStreamPlayTransitions 类。
相关 API 元素
NetStreamPlayOptions | () | 构造函数 |
public function NetStreamPlayOptions()
语言版本: | ActionScript 3.0 |
运行时版本: | Flash Player 10, AIR 1.5, Flash Lite 4 |
创建一个 NetStreamPlayOptions 对象以指定要传递给 NetStream.play2()
方法的选项。
相关 API 元素
Tue Jun 12 2018, 11:04 AM Z