包 | flash.media |
类 | public class Video |
继承 | Video DisplayObject EventDispatcher Object |
子类 | VideoPlayer |
语言版本 : | ActionScript 3.0 |
Player 版本 : | Flash Player 9 |
Camera.getCamera()
方法捕获并播放实时视频。 还可以使用 Video 类通过 HTTP 或从本地文件系统回放 Flash ® 视频 (FLV) 文件。 有关详细信息,请参见 NetConnection 类和 NetStream 类条目。
Flash Player 9 支持用 Sorenson 或 On2 VP6 编解码器编码的 FLV 文件的发布和回放,也支持 Alpha 通道。 与早期的技术相比,On2 VP6 视频编解码器所占用的带宽要少,并且还另外提供了消除马赛克滤镜和 Deringing 滤镜。
与显示列表上的其它显示对象一样,您可以控制 Video 对象的各种属性。 例如,可以通过使用 Video 对象的 x
和 y
属性在舞台上移动该对象,可以通过使用其 height
和 width
属性更改其大小,等等。
若要播放视频流,请使用 .attachCamera()
或 .attachNetStream()
方法将视频附加到 Video 对象,并使用 addChild()
将 Video 对象添加到显示列表中。
my_video
。 (不要将其命名为“Video”。)注意:Video 类不是 InteractiveObject 类的子类,因此它无法调度鼠标事件。 但是,可以使用包含 Video 对象的显示对象容器的 addEventListener()
方法。
另请参见
属性 | 定义方 | ||
---|---|---|---|
accessibilityProperties : AccessibilityProperties
此显示对象的当前辅助功能选项。
| DisplayObject | ||
alpha : Number
指示指定对象的 Alpha 透明度值。
| DisplayObject | ||
blendMode : String
BlendMode 类中的一个值,用于指定要使用的混合模式。
| DisplayObject | ||
cacheAsBitmap : Boolean
如果设置为 true,则 Flash Player 将缓存显示对象的内部位图表示形式。
| DisplayObject | ||
constructor : Object
对类对象或给定对象实例的构造函数的引用。
| Object | ||
deblocking : int
指示作为后处理的一部分应用于已解码视频的滤镜的类型。
| Video | ||
filters : Array
包含当前与显示对象关联的每个滤镜对象的索引数组。
| DisplayObject | ||
height : Number
指示显示对象的高度,以像素为单位。
| DisplayObject | ||
loaderInfo : LoaderInfo
[read-only]
返回一个 LoaderInfo 对象,其中包含加载此显示对象所属的文件的相关信息。
| DisplayObject | ||
mask : DisplayObject
调用显示对象被指定的 mask 对象遮罩。
| DisplayObject | ||
mouseX : Number
[read-only]
指示鼠标位置的 x 坐标,以像素为单位。
| DisplayObject | ||
mouseY : Number
[read-only]
指示鼠标位置的 y 坐标,以像素为单位。
| DisplayObject | ||
name : String
指示 DisplayObject 的实例名称。
| DisplayObject | ||
opaqueBackground : Object
指定显示对象是否由于具有某种背景颜色而不透明。
| DisplayObject | ||
parent : DisplayObjectContainer
[read-only]
指示包含此显示对象的 DisplayObjectContainer 对象。
| DisplayObject | ||
prototype : Object
[static]
对类或函数对象的原型对象的引用。
| Object | ||
root : DisplayObject
[read-only]
对于加载的 SWF 文件中的显示对象,root 属性是此 SWF 文件所表示的显示列表树结构部分中的顶级显示对象。
| DisplayObject | ||
rotation : Number
指示 DisplayObject 实例距其原始方向的旋转程度,以度为单位。
| DisplayObject | ||
scale9Grid : Rectangle
当前有效的缩放网格。
| DisplayObject | ||
scaleX : Number
指示从注册点开始应用的对象的水平缩放比例(百分比)。
| DisplayObject | ||
scaleY : Number
指示从对象注册点开始应用的对象的垂直缩放比例(百分比)。
| DisplayObject | ||
scrollRect : Rectangle
显示对象的滚动矩形范围。
| DisplayObject | ||
smoothing : Boolean
指定在缩放视频时是否应进行平滑处理(插补数据)。
| Video | ||
stage : Stage
[read-only]
显示对象的舞台。
| DisplayObject | ||
transform : Transform
一个对象,具有与显示对象的矩阵、颜色转换和像素范围有关的属性。
| DisplayObject | ||
videoHeight : int
[read-only]
一个整数,以像素为单位指定视频流的高度。
| Video | ||
videoWidth : int
[read-only]
一个整数,以像素为单位指定视频流的宽度。
| Video | ||
visible : Boolean
显示对象是否可见。
| DisplayObject | ||
width : Number
指示显示对象的宽度,以像素为单位。
| DisplayObject | ||
x : Number
指示 DisplayObject 实例相对于父级 DisplayObjectContainer 本地坐标的 x 坐标。
| DisplayObject | ||
y : Number
指示 DisplayObject 实例相对于父级 DisplayObjectContainer 本地坐标的 y 坐标。
| DisplayObject |
方法 | 定义方 | ||
---|---|---|---|
创建新的 Video 实例。
| Video | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。
| EventDispatcher | ||
指定在应用程序窗口中 Video 对象的边界内显示来自摄像头的视频流。
| Video | ||
指定在应用程序窗口中 Video 对象的边界内显示视频流。
| Video | ||
清除该 Video 对象中当前显示的图像。
| Video | ||
将事件调度到事件流中。
| EventDispatcher | ||
返回一个矩形,该矩形定义相对于 targetCoordinateSpace 对象坐标系的显示对象区域。
| DisplayObject | ||
返回一个矩形,该矩形根据 targetCoordinateSpace 参数定义的坐标系定义显示对象的边界,但不包括形状上的任何笔触。
| DisplayObject | ||
将 point 对象从舞台(全局)坐标转换为显示对象的(本地)坐标。
| DisplayObject | ||
检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。
| EventDispatcher | ||
指示对象是否已经定义了指定的属性。
| Object | ||
计算显示对象,以确定它是否与 obj 显示对象重叠或相交。
| DisplayObject | ||
计算显示对象,以确定它是否与 x 和 y 参数指定的点重叠或相交。
| DisplayObject | ||
指示 Object 类的实例是否在指定为参数的对象的原型链中。
| Object | ||
将 point 对象从显示对象的(本地)坐标转换为舞台(全局)坐标。
| DisplayObject | ||
指示指定的属性是否存在、是否可枚举。
| Object | ||
从 EventDispatcher 对象中删除侦听器。
| EventDispatcher | ||
设置循环操作动态属性的可用性。
| Object | ||
返回指定对象的字符串表示形式。
| Object | ||
返回指定对象的原始值。
| Object | ||
检查是否用此 EventDispatcher 对象或其任何始祖为指定事件类型注册了事件侦听器。
| EventDispatcher |
deblocking | 属性 |
deblocking:int
[read-write]
语言版本 : | ActionScript 3.0 |
Player 版本 : | Flash Player 9 |
指示作为后处理的一部分应用于已解码视频的滤镜的类型。 默认值为 0,指示允许视频压缩程序根据需要应用消除马赛克的滤镜。
压缩视频可能会导致产生不希望有的伪像。 可以使用 deblocking
属性设置用于减少马赛克(而对于使用 On2 编解码器压缩的视频,则用于降低扭曲边缘)的过滤器。
马赛克是指组成每个视频帧的块的边界之间的可见瑕疵。 扭曲边缘是指视频图像内元素周围的扭曲边缘。
有两种消除马赛克的滤镜:分别在 Sorenson 编解码器和 On2 VP6 编解码器中。 此外,如果使用 On2 VP6 编解码器,则可以使用 Deringing 滤镜。 若要设置滤镜,请使用下列值之一:
如果在使用 Sorenson 编解码器时为视频选择了大于 2 的值,则 Sorenson 解码器默认为 2。
使用消除马赛克的滤镜会影响整体回放性能,而且对于高带宽视频通常没有必要。 如果用户系统的功能不够强大,则用户在启用消除马赛克的滤镜的情况下回放视频可能会有困难。
public function get deblocking():int
public function set deblocking(value:int):void
smoothing | 属性 |
smoothing:Boolean
[read-write]
语言版本 : | ActionScript 3.0 |
Player 版本 : | Flash Player 9 |
指定在缩放视频时是否应进行平滑处理(插补数据)。 播放器必须处于高品质模式,平滑处理才能起作用。 默认值为 false
(不进行平滑处理)。
public function get smoothing():Boolean
public function set smoothing(value:Boolean):void
videoHeight | 属性 |
videoHeight:int
[read-only]
语言版本 : | ActionScript 3.0 |
Player 版本 : | Flash Player 9 |
一个整数,以像素为单位指定视频流的高度。 对于实时流,此值与正在捕获该视频流的 Camera 对象的 Camera.height
属性相同。 对于 FLV 文件,此值是以 FLV 形式导出的文件的高度。
例如,您可能需要使用此属性来确保用户以捕获时的相同大小观看视频,而无论 Video 对象在舞台上的实际大小是什么。
public function get videoHeight():int
另请参见
videoWidth | 属性 |
videoWidth:int
[read-only]
语言版本 : | ActionScript 3.0 |
Player 版本 : | Flash Player 9 |
一个整数,以像素为单位指定视频流的宽度。 对于实时流,此值与正在捕获该视频流的 Camera 对象的 Camera.width
属性相同。 对于 FLV 文件,此值是以 FLV 文件形式导出的文件的宽度。
例如,您可能需要使用此属性来确保用户以捕获时的相同大小观看视频,而无论 Video 对象在舞台上的实际大小是什么。
public function get videoWidth():int
另请参见
Video | () | 构造函数 |
public function Video(width:int = 320, height:int = 240)
语言版本 : | ActionScript 3.0 |
Player 版本 : | Flash Player 9 |
创建新的 Video 实例。 如果没有提供 width
和 height
参数的值,将使用默认值。 在初始构建后,也可以使用 Video.width
和 Video.height
设置 Video 对象的宽度和高度属性。 在创建新的 Video 对象时,不允许宽度和高度的值为零;如果传递零,则将应用默认值。
创建 Video 后,请调用 DisplayObjectContainer.addChild()
或 DisplayObjectContainer.addChildAt()
方法以便将 Video 对象添加到父级 DisplayObjectContainer 对象。
width:int (default = 320 ) — 视频的宽度(以像素为单位)。
|
|
height:int (default = 240 ) — 视频的高度,以像素为单位。
|
attachCamera | () | 方法 |
public function attachCamera(camera:Camera):void
语言版本 : | ActionScript 3.0 |
Player 版本 : | Flash Player 9 |
指定在应用程序窗口中 Video 对象的边界内显示来自摄像头的视频流。
参数
camera:Camera — 正在捕获视频数据的 Camera 对象。 若要切断与该 Video 对象的连接,请传递 null 。
|
另请参见
attachNetStream | () | 方法 |
public function attachNetStream(netStream:NetStream):void
语言版本 : | ActionScript 3.0 |
Player 版本 : | Flash Player 9 |
指定在应用程序窗口中 Video 对象的边界内显示视频流。 视频流是通过 NetStream.play()
命令显示的 FLV 文件(如 Camera 对象),或者是 null
。 如果 netStream
参数的值为 null
,将不再在对象内播放视频。
如果 FLV 文件只包含音频,则无需使用此方法;当调用 NetStream.play()
方法时,FLV 文件的音频部分会自动播放。 若要控制与 FLV 文件相关联的音频,请使用用于播放 FLV 文件的 NetStream 对象的 soundTransform
属性。
参数
netStream:NetStream — 一个 NetStream 对象。 若要切断与该 Video 对象的连接,请传递 null 。
|
另请参见
clear | () | 方法 |
public function clear():void
语言版本 : | ActionScript 3.0 |
Player 版本 : | Flash Player 9 |
清除该 Video 对象中当前显示的图像。 如果要显示待机信息,则可以使用此方法。这样就不必隐藏该 Video 对象了。
另请参见
videoURL
的变量相匹配的 FLV 文件,在本例中,使用 SWF 文件所在目录下的一个名为 Video.flv 的 FLV 文件。
在本例中,创建 Video 和 NetStream 对象并调用 Video.attachNetStream()
和 NetStream.play()
的代码放入处理函数。 仅在试图连接 NetConnection 对象成功时调用处理函数,即,当 netStatus
事件返回一个 info 对象,该对象带有一个表示成功的 code
属性时,才调用该处理函数。 建议先等待连接成功,然后再调用 NetStream.play()
。
package { import flash.display.Sprite; import flash.events.*; import flash.media.Video; import flash.net.NetConnection; import flash.net.NetStream; public class VideoExample extends Sprite { private var videoURL:String = "Video.flv"; private var connection:NetConnection; private var stream:NetStream; public function VideoExample() { connection = new NetConnection(); connection.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler); connection.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler); connection.connect(null); } private function netStatusHandler(event:NetStatusEvent):void { switch (event.info.code) { case "NetConnection.Connect.Success": connectStream(); break; case "NetStream.Play.StreamNotFound": trace("Unable to locate video: " + videoURL); break; } } private function connectStream():void { var stream:NetStream = new NetStream(connection); stream.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler); stream.addEventListener(AsyncErrorEvent.ASYNC_ERROR, asyncErrorHandler); var video:Video = new Video(); video.attachNetStream(stream); stream.play(videoURL); addChild(video); } private function securityErrorHandler(event:SecurityErrorEvent):void { trace("securityErrorHandler: " + event); } private function asyncErrorHandler(event:AsyncErrorEvent):void { // ignore AsyncErrorEvent events. } } }
当前页: http://livedocs.adobe.com/flash/9.0_cn/ActionScriptLangRefV3/flash/media/Video.html