This page was saved using jaction on 2006-09-04 8:34:12.
Address: http://flexdocs.kr/docs/flex2/langref/flash/media/Video.html
Title: flash.media.Video (Flex™ 2 레퍼런스 가이드)  •  Size: 69784
Packageflash.media
Classpublic class Video
InheritanceVideo Inheritance DisplayObject Inheritance EventDispatcher Inheritance Object

Video 클래스를 사용하면, SWF 파일에 포함하는 일 없이, 라이브 스트리밍 비디오를 어플리케이션으로 표시할 수가 있습니다. Camera.getCamera() Methods를 사용해, 라이브 비디오를 capther 해 재생할 수 있습니다. 또, Video 클래스를 사용해, HTTP 경유 또는 로컬 파일 시스템으로부터 Flash® Video (FLV) 파일을 재생할 수도 있습니다. 상세한 것에 대하여는, NetConnection 클래스와 NetStream 클래스를 참조해 주세요.

Flash Player 9 에서는, Sorenson 또는 On2 VP6 코덱으로 인코딩 된 FLV 파일의 Publish와 재생을 지원(support)해, 알파 채널도 지원(support)하고 있습니다. On2 VP6 비디오 코덱은, 낡은 테크놀러지보다 적은 대역폭을 사용해, 추가의 비블록 필터와 링잉 제거 필터를 제공합니다.

표시 리스트상의 다른 표시 object와 같게, Video object의 각종 property를 제어할 수 있습니다. 예를 들어,xy property를 사용해 스테이지상에서 Video object를 이동하거나heightwidth property를 사용해 크기를 변경할 수도 있습니다.

비디오 스트림(Stream)을 재생하려면 ,. attachCamera() Methods 또는 . attachStream() Methods를 사용해 비디오를 Video object에 관련지어addChild() 를 사용해 그 Video object를 표시 리스트에 추가합니다.

  1. [프로그램 라이브러리] 패널을 표시하고 있지 않는 경우는,[윈도우]-[프로그램 라이브러리] 를 선택해 표시합니다.
  2. [프로그램 라이브러리] 패널의 타이틀 바의 우측에 있는 옵션 메뉴를 클릭해 [신규 비디오] 를 선택해, 포함하기 Video object를 프로그램 라이브러리에 추가합니다.
  3. Video object를 스테이지에 드러그 해, 프로파티인스페크타를 사용해 일의의 인스턴스명 (my_video 등)을 설정합니다. "Video" 라는 이름에는 하지 말아 주세요.

메모:Video 클래스는 InteractiveObject 클래스의 서브 클래스는 아니기 때문에, 마우스 이벤트를 dispatch할 수 없습니다. 다만, Video object를 포함한 표시 object 컨테이너의 addEventListener() Methods를 사용할 수 있습니다.

View the examples

See also

flash.media.Camera.getCamera()
flash.net.NetConnection
flash.net.NetStream
표시 아키텍쳐에 대해
비디오의 조작


Public property
 property정의
 InheritedaccessibilityProperties : AccessibilityProperties
이 표시 object의 현재의 accessibility options입니다.
DisplayObject
 Inheritedalpha : Number
지정된 object의 알파 투명도 값을 나타냅니다.
DisplayObject
 InheritedblendMode : String
사용하는 브렌드 모드를 지정하는 BlendMode 클래스의 값입니다.
DisplayObject
 InheritedcacheAsBitmap : Boolean
true 로 설정되어 있는 경우, 표시 object의 내부 비트 맵 표현이 Flash Player 에 캐쉬됩니다.
DisplayObject
 Inheritedconstructor : Object
특정의 object 인스턴스의 클래스 object 또는 constructor    함수에의 참조입니다.
Object
  deblocking : int
사후 처리중에, 디코드된 비디오에 적용되는 필터의 타입을 나타냅니다.
Video
 Inheritedfilters : Array
표시 object에 현재 관련지을 수 있고 있는 각 필터 object가 포함되고 있는 인덱스 첨부의 배열입니다.
DisplayObject
 Inheritedheight : Number
표시 object의 높이를 나타냅니다 (픽셀 단위).
DisplayObject
 InheritedloaderInfo : LoaderInfo
이 표시 object가 속하는 파일의 로드 정보를 포함한 LoaderInfo object를 돌려줍니다.
DisplayObject
 Inheritedmask : DisplayObject
호출원 display object는, 지정된 mask object에 의해 마스크 됩니다.
DisplayObject
 InheritedmouseX : Number
마우스 위치의 x 좌표를 나타냅니다 (픽셀 단위).
DisplayObject
 InheritedmouseY : Number
마우스 위치의 y 좌표를 나타냅니다 (픽셀 단위).
DisplayObject
 Inheritedname : String
DisplayObject 의 인스턴스명을 나타냅니다.
DisplayObject
 InheritedopaqueBackground : Object
표시 object가 특정의 배경색으로 불투명한지 어떤지를 지정합니다.
DisplayObject
 Inheritedparent : DisplayObjectContainer
이 표시 object를 포함한 DisplayObjectContainer object를 나타냅니다.
DisplayObject
 Inheritedprototype : Object
[static] 클래스 또는 함수 object의 prototype object에의 참조입니다.
Object
 Inheritedroot : DisplayObject
로드 된 SWF 파일내 display object의 경우,root property는 그 SWF 파일이 나타내는 표시 리스트의 트리 구조 부분의 맨 위에 있는 표시 object가 됩니다.
DisplayObject
 Inheritedrotation : Number
DisplayObject 인스턴스의 원래의 위치로부터의 회전각을 번단위로 가리킵니다.
DisplayObject
 Inheritedscale9Grid : Rectangle
현재 유효한 확대 / 축소 격자입니다.
DisplayObject
 InheritedscaleX : Number
기준점으로부터 적용되는 object의 수평 스케일 (percentage)을 나타냅니다.
DisplayObject
 InheritedscaleY : Number
object의 기준점으로부터 적용되는 object의 수직 스케일 (percentage)을 나타냅니다.
DisplayObject
 InheritedscrollRect : Rectangle
표시 object의 스크롤 구형의 경계.
DisplayObject
  smoothing : Boolean
비디오를 확대·축소할 때에 스무딩 (보간) 할지 어떨지를 지정합니다.
Video
 Inheritedstage : Stage
표시 object의 스테이지.
DisplayObject
 Inheritedtransform : Transform
표시 object의 매트릭스, 칼라 변환, 픽셀 경계에 관계하는 property를 가지는 object입니다.
DisplayObject
  videoHeight : int
[read-only] 비디오 스트림(Stream)의 높이를 픽셀 단위로 지정하는 정수입니다.
Video
  videoWidth : int
[read-only] 비디오 스트림(Stream)의 폭을 픽셀 단위로 지정하는 정수입니다.
Video
 Inheritedvisible : Boolean
표시 object가 가시인가 어떤가를 나타냅니다.
DisplayObject
 Inheritedwidth : Number
표시 object의 폭을 나타냅니다 (픽셀 단위).
DisplayObject
 Inheritedx : Number
친 DisplayObjectContainer 의 로컬 좌표를 기준으로 한 DisplayObject 인스턴스의 x 좌표를 나타냅니다.
DisplayObject
 Inheritedy : Number
친 DisplayObjectContainer 의 로컬 좌표를 기준으로 한 DisplayObject 인스턴스의 y 좌표를 나타냅니다.
DisplayObject
Public Methods
 Methods정의
  Video (width:int = 320, height:int = 240)
새로운 Video 인스턴스를 작성합니다.
Video
 InheritedaddEventListener (type:String , listener:Function , useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
event listener objects를 EventDispatcher object에 등록해, listener가 이벤트의 통지를 받도록(듯이) 합니다.
EventDispatcher
  attachCamera (camera:Camera ):void
어플리케이션 윈도우내의 Video object의 경계내에 표시하는 카메라로부터의 비디오 스트림(Stream)을 지정합니다.
Video
  attachNetStream (netStream:NetStream ):void
어플리케이션 윈도우내의 Video object의 경계내에 표시하는 비디오 스트림(Stream)을 지정합니다.
Video
  clear ():void
Video object에 현재 표시되고 있는 이미지를 클리어 합니다.
Video
 InheriteddispatchEvent (event:Event ):Boolean
이벤트를 event 플로우(flow)에 dispatch합니다.
EventDispatcher
 InheritedgetBounds (targetCoordinateSpace:DisplayObject ):Rectangle
targetCoordinateSpace object의 좌표계를 기준으로 해, 표시 object의 area를 정의하는 구형을 돌려줍니다.
DisplayObject
 InheritedgetRect (targetCoordinateSpace:DisplayObject ):Rectangle
셰이프상의 선을 제외해,targetCoordinateSpace Parameters에 의해 정의된 좌표계에 근거해, 표시 object의 경계를 정의하는 구형을 돌려줍니다.
DisplayObject
 InheritedglobalToLocal (point:Point ):Point
point object를 스테이지 (글로벌) 좌표로부터 표시 object의 (로컬) 좌표로 변환합니다.
DisplayObject
 InheritedhasEventListener (type:String ):Boolean
EventDispatcher object에, 특정의 event 타입에 대해서 등록된 listener가 있을지 어떨지를 확인합니다.
EventDispatcher
 InheritedhasOwnProperty (name:String ):Boolean
object로 지정된 property가 정의되고 있는지 어떤지를 나타냅니다.
Object
 InheritedhitTestObject (obj:DisplayObject ):Boolean
표시 object를 평가해,obj 표시 object와 중복 또는 교차할지 어떨지를 조사합니다.
DisplayObject
 InheritedhitTestPoint (x:Number , y:Number , shapeFlag:Boolean = false):Boolean
표시 object를 평가해,xy Parameters로 지정된 포인트와 중복 또는 교차할지 어떨지를 조사합니다.
DisplayObject
 InheritedisPrototypeOf (theClass:Object ):Boolean
Object 클래스의 인스턴스가, Parameters로서 지정된 object의 prototype 체인내에 있을지 어떨지를 나타냅니다.
Object
 InheritedlocalToGlobal (point:Point ):Point
point object를 표시 object의 (로컬) 좌표로부터 스테이지 (글로벌) 좌표로 변환합니다.
DisplayObject
 InheritedpropertyIsEnumerable (name:String ):Boolean
지정된 property가 존재해, 열거 가능한가 어떤가를 나타냅니다.
Object
 InheritedremoveEventListener (type:String , listener:Function , useCapture:Boolean = false):void
EventDispatcher object로부터 listener를 삭제합니다.
EventDispatcher
 InheritedsetPropertyIsEnumerable (name:String , isEnum:Boolean = true):void
루프 처리에 대한 다이나믹 property의 가용성을 설정합니다.
Object
 InheritedtoString ():String
지정된 object의 string 표현을 돌려줍니다.
Object
 InheritedvalueOf ():Object
지정된 object의 원시적치를 돌려줍니다.
Object
 InheritedwillTrigger (type:String ):Boolean
지정된 event 타입에 대해, 이 EventDispatcher object 또는 그 조상에게 event listener가 등록되어 있는지 어떤지를 확인합니다.
EventDispatcher
이벤트
 이벤트일람정의
 Inheritedactivate Flash Player 가 operating system의 포커스를 취득해, 액티브하게 되었을 때에 dispatch됩니다. DisplayObject
 Inheritedadded 표시 object가 표시 리스트에 추가되었을 때에 dispatch됩니다. DisplayObject
 Inheriteddeactivate Flash Player 가 operating system의 포커스를 잃어, 비액티브하게 되었을 때에 dispatch됩니다. DisplayObject
 InheritedenterFrame 재생 헤드가 새로운 프레임에 들어갈 때 dispatch됩니다. DisplayObject
 Inheritedremoved 표시 object가 표시 리스트로부터 삭제 되려고 하고 있을 때 dispatch됩니다. DisplayObject
 Inheritedrender 표시 리스트가 갱신 및 렌더링 되려고 하고 있을 때 dispatch됩니다. DisplayObject
property의 상세
deblockingproperty
deblocking:int   [read-write]

사후 처리중에, 디코드된 비디오에 적용되는 필터의 타입을 나타냅니다. 디폴트치의 0 으로 설정하면, 비디오 압력은 필요에 따라서 비블록 필터를 적용합니다.

비디오의 압축에 의해, 바람직하지 않은 생성 결과가 되는 경우가 있습니다. deblocking property를 사용해, 블로킹과 On2 코덱을 사용해 압축된 비디오의 링잉을 저감 하는 필터를 설정할 수 있습니다.

블로킹이란, 각 비디오 프레임을 구성하는 블록의 경계와 경계의 사이로 보여지는 불편입니다. 링잉이란, 비디오 이미지내의 요소의 주위가 왜곡하는 것입니다.

다음의 2 개의 비블록 필터를 사용할 수 있습니다. 1 개은 Sorenson 코덱에 있어, 이제(벌써) 1 개은 On2 VP6 코덱에 있습니다. 게다가 On2 VP6 코덱을 사용하려면 링잉 제거 필터를 사용할 수 있습니다. 필터를 설정하려면 , 다음의 몇개의 값을 사용합니다.

Sorenson 코덱의 사용시에 비디오에 2 보다 큰 값을 선택하면, Sorenson 디코더는 디폴트로 2 가 됩니다.

비블록 필터를 사용하면, 전체적인 재생의 퍼포먼스에 영향을 줍니다. 고대역폭의 비디오에는, 통상은 필요 없습니다. 비블록 필터를 유효하게 한 비디오는, 저성능의 시스템에서는 재생이 곤란한 일이 있습니다.

Implements
    public function get deblocking():int
    public function set deblocking(value:int ):void
smoothingproperty 
smoothing:Boolean   [read-write]

비디오를 확대·축소할 때에 스무딩 (보간) 할지 어떨지를 지정합니다. 스무딩을 실시하려면 , Flash Player 가 고품질 모드일 필요가 있습니다. 디폴트치는 false (스무딩 없음)입니다.

Implements
    public function get smoothing():Boolean
    public function set smoothing(value:Boolean ):void
videoHeightproperty 
videoHeight:int   [read-only]

비디오 스트림(Stream)의 높이를 픽셀 단위로 지정하는 정수입니다. 라이브 스트림(Stream)의 경우, 이 값은 비디오 스트림(Stream)을 capther 하고 있는 Camera object의 Camera.height property와 같습니다. FLV 파일의 경우, 이 값은 FLV 로서 써내진 파일의 높이가 됩니다.

이 property는, 스테이지상의 실제의 Video object의 크기와는 관계없이, capther 한 것과 같은 크기로 유저에 대해서 비디오를 표시하는 경우 등에 사용합니다.

Implements
    public function get videoHeight():int

See also

videoWidthproperty 
videoWidth:int   [read-only]

비디오 스트림(Stream)의 폭을 픽셀 단위로 지정하는 정수입니다. 라이브 스트림(Stream)의 경우, 이 값은 비디오 스트림(Stream)을 capther 하고 있는 Camera object의 Camera.width property와 같습니다. FLV 파일의 경우, 이 값은 FLV 파일로서 써내진 파일의 폭이 됩니다.

이 property는, 스테이지상의 실제의 Video object의 크기와는 관계없이, capther 한 것과 같은 크기로 유저에 대해서 비디오를 표시하는 경우 등에 사용합니다.

Implements
    public function get videoWidth():int

See also

constructor    의 상세
Video()constructor   
public 함수 Video(width:int = 320, height:int = 240)

새로운 Video 인스턴스를 작성합니다. width Parameters와 height Parameters의 값이 지정되어 있지 않은 경우는, 디폴트치가 사용됩니다. Video object의 초기 구축 후에,Video.widthVideo.height 를 사용해 폭과 높이의 property를 설정할 수도 있습니다. 새로운 Video object를 작성할 때에, 폭 또는 높이에 0 은 설정할 수 없습니다. 0 을 건네주면, 디폴트치가 적용됩니다.

Video object의 작성 후,DisplayObjectContainer.addChild() Methods 또는 DisplayObjectContainer.addChildAt() Methods를 호출해, 친 DisplayObjectContainer object에 Video object를 추가할 수 있습니다.

Parameters
width:int (default = 320) — 비디오의 폭 (픽셀 단위)입니다.
 
height:int (default = 240) — 비디오의 높이 (픽셀 단위)입니다.
Methods의 상세
attachCamera()Methods
public function attachCamera(camera:Camera ):void

어플리케이션 윈도우내의 Video object의 경계내에 표시하는 카메라로부터의 비디오 스트림(Stream)을 지정합니다.

Parameters
camera:Camera — 비디오 데이터를 capther 하는 Camera object입니다. Video object에의 접속을 닫으려면 ,null 를 건네줍니다.

See also

attachNetStream()Methods 
public function attachNetStream(netStream:NetStream ):void

어플리케이션 윈도우내의 Video object의 경계내에 표시하는 비디오 스트림(Stream)을 지정합니다. 비디오 스트림(Stream)은,NetStream.play() 커멘드를 사용해 표시되는 FLV 파일, Camera object, 또는 null 의 어느 쪽인가에 됩니다. netStream Parameters의 값에 null 를 지정하면, object내에서 비디오가 재생되지 않게 됩니다.

FLV 파일에 오디오 밖에 포함되지 않는 경우는, 이 Methods를 사용할 필요는 없습니다. FLV 파일의 오디오는,NetStream.play() Methods가 불려 가면 자동적으로 재생됩니다. FLV 파일에 관련지을 수 있었던 오디오를 제어하려면 , NetStream object의 soundTransform property를 사용합니다. 이 object는, FLV 파일을 재생합니다.

Parameters
netStream:NetStream — NetStream object입니다. Video object에의 접속을 닫으려면 ,null 를 건네줍니다.

See also

clear()Methods 
public function clear():void

Video object에 현재 표시되고 있는 이미지를 클리어 합니다. 이 Methods는, Video object를 비표시로 하지 않고 스탠바이 정보를 표시하고 싶은 경우에 편리합니다.

See also

Examples

다음의 예에서는, Video object를, FLV 파일을 로드해 재생하는 NetConnection 클래스와 NetStream 클래스와 함께 사용해, FLV 파일을 로드 및 재생합니다. 이 예를 실행하려면 , 이 FLV 파일은,videoURL 에게 건네지는 변수와 파일명 및 장소가 일치할 필요가 있습니다. 이 경우는, SWF 파일과 같은 디렉토리에 있는 Video.flv 라는 이름의 FLV 파일입니다.

이 예에서는, Video object와 NetStream object를 작성해, Video.attachNetStream()NetStream.play() 를 호출하는 코드가 핸들러 함수에 배치됩니다. 핸들러는, NetConnection object에의 접속이 성공했을 경우에게만 불려 갑니다. 즉, netStatus 이벤트가, 성공한 것을 나타내는 code property와 함께 info object를 경우입니다. 접속에 성공할 때까지 기다리고 나서, 다음의 코드를 호출하는 것을 추천합니다. 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://flexdocs.kr/docs/flex2/langref/flash/media/Video.html