| Package | flash.net |
| Class | public class NetStream |
| Inheritance | NetStream EventDispatcher Object |
NetStream.publish() 를 사용해 오디오 데이터나 비디오 데이터를 Publish 할 수 있습니다. 혹은,NetStream.play() 를 사용해, Publish 된 스트림(Stream)에 예약(subscribe) 해, 데이터를 수신할 수가 있습니다. 라이브 (리얼타임) 데이터 및 이전에 기록한 데이터를 Publish 하는 일도, 재생할 수도 있습니다. NetStream object를 사용해, 예약(subscribe) 하고 있는 모든 클라이언트에 텍스트 메세지를 송신할 수도 있습니다. NetStream.send() Methods를 참조해 주세요.
Flash 문서내에 비디오를 포함하는 것보다도, 외부의 FLV 파일을 재생한 (분)편이, 퍼포먼스와 메모리 메니지먼트의 효율이 좋아지는, 비디오와 Flash 의 frame rate를 독립화할 수 있는 등의 메리트가 있습니다. 이 클래스에는, 파일의 로드 및 재생시에 그 진척을 추적해, 유저가 재생을 제어 (정지, 일시정지등)할 수 있도록(듯이)하기 위한 , 다양한 Methods 및 property가 준비되어 있습니다.
NetStream 클래스내의 property와 Methods안에는, 주로 Flash Media Server 나 Flex 등의 서버로 사용하는 것을 목적으로 한 것이 있습니다. 이러한 property와 Methods에는, 서버 사이드 기능을 추가할 수 있습니다. 상세한 것에 대하여는, Flash Media Server 메뉴얼의 「NetStream class」를 참조해 주세요.
비디오 재생의 상세한 것에 대하여는, 「ActionScript 2.0 의 학습」의 「외부 FLV 파일의 다이나믹 재생」을 참조해 주세요.
스트리밍 오디오 또는 비디오의 일반적인 워크플로우입니다. 다음의 순서에서는, 리얼타임 오디오와 비디오의 Publish에 필요한, 통상의 일련의 액션을 개설합니다.
NetConnection.connect() Methods를 사용해, 어플리케이션 인스턴스를 서버에 접속합니다. NetStream.attachAudio()Methods를 사용해, 이 스트림(Stream)을 개입시킨 오디오의 capther 및 송신을 실시합니다. 이 스트림(Stream)을 개입시켜 비디오를 capther 및 송신하는 경우는,NetStream.attachVideo() Methods를 사용합니다. NetStream.publish() Methods를 사용해, 이 스트림(Stream)에 일의의 이름을 붙입니다. 또, 스트림(Stream)을 개입시켜 서버에 데이터를 송신합니다. 이것에 의해, 다른 유저가 데이터를 수신할 수 있게 됩니다. 데이터를 Publish 했을 때에, 그 데이터를 기록할 수도 있습니다. 이것에 의해, 다음에 데이터를 재생할 수가 있습니다.
이 스트림(Stream)에 예약(subscribe) 하는 SWF 파일에서는,play() 를 호출할 때 publish() 에게 건네지는 이름을 사용합니다. 또, 발행자와 같은 NetConnection.connect() Methods를 호출합니다. 비디오를 스트리밍 하려면 ,Video.attachNetStream() Methods를 호출할 필요가 있습니다. 또, 비디오를 재생하려면 ,NetStream.play() Methods를 호출할 필요가 있습니다.
See also
| property | 정의 | ||
|---|---|---|---|
| bufferLength : Number
[read-only]
버퍼에 데이터가 포함되고 나서의 경과초수입니다.
| NetStream | ||
| bufferTime : Number
스트림(Stream)의 표시를 개시하기까지 메세지를 어느 정도의 시간 버퍼링 해 두는지를 지정합니다.
| NetStream | ||
| bytesLoaded : uint
[read-only]
이미 Player 에 로드 되고 있는 데이터의 바이트수입니다.
| NetStream | ||
| bytesTotal : uint
[read-only]
Player 에 로드 되는 파일의 총바이트수입니다.
| NetStream | ||
| checkPolicyFile : Boolean
FLV 파일의 로드를 개시하기 전에, Flash Player 가, 로드 되는 FLV 파일의 서버로부터 크로스 도메인 policy 파일을 다운로드하려고 할지 어떨지를 지정합니다.
| NetStream | ||
| client : Object
콜백 Methods를 호출하는 object를 지정합니다.
| NetStream | ||
![]() | constructor : Object
특정의 object 인스턴스의 클래스 object 또는 constructor 함수에의 참조입니다.
| Object | |
| currentFPS : Number
[read-only]
1 초 쯤 보기 프레임수입니다.
| NetStream | ||
| liveDelay : Number
[read-only]
라이브 (버퍼링되어 있지 않다) 모드로 예약(subscribe) 하고 있는 스트림(Stream) 버퍼내에 있는 데이터의 초수입니다.
| NetStream | ||
| objectEncoding : uint
[read-only]
이 NetStream object의 encode (AMF 버젼)입니다.
| NetStream | ||
![]() | prototype : Object
[static]
클래스 또는 함수 object의 prototype object에의 참조입니다.
| Object | |
| soundTransform : SoundTransform
이 NetStream object의 사운드를 제어합니다.
| NetStream | ||
| time : Number
[read-only]
재생 헤드의 위치 (초단위)입니다.
| NetStream | ||
| Methods | 정의 | ||
|---|---|---|---|
| NetStream (connection:NetConnection )
지정된 NetConnection object를 사용해, FLV 파일을 재생하기 위한 스트림(Stream)을 생성합니다.
| NetStream | ||
![]() | addEventListener (type:String , listener:Function , useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
event listener objects를 EventDispatcher object에 등록해, listener가 이벤트의 통지를 받도록(듯이) 합니다.
| EventDispatcher | |
| attachAudio (microphone:Microphone ):void
소스로서 건네받는 Microphone object로부터 NetStream object를 개입시켜 송신되는 오디오 스트림(Stream)을 지정합니다.
| NetStream | ||
| attachCamera (theCamera:Camera , snapshotMilliseconds:int = -1):void
지정의 소스로부터 비디오의 capther를 개시합니다. 또는,
theCamera 가 null 로 설정되면, capther를 정지합니다. | NetStream | ||
| close ():void
스트림(Stream)상의 모든 데이터의 재생을 정지해,
time property를 0 으로 설정해, 다른 유저가 스트림(Stream)에 액세스 할 수 있도록(듯이) 합니다. | NetStream | ||
![]() | dispatchEvent (event:Event ):Boolean
이벤트를 event 플로우(flow)에 dispatch합니다.
| EventDispatcher | |
![]() | hasEventListener (type:String ):Boolean
EventDispatcher object에, 특정의 event 타입에 대해서 등록된 listener가 있을지 어떨지를 확인합니다.
| EventDispatcher | |
![]() | hasOwnProperty (name:String ):Boolean
object로 지정된 property가 정의되고 있는지 어떤지를 나타냅니다.
| Object | |
![]() | isPrototypeOf (theClass:Object ):Boolean
Object 클래스의 인스턴스가, Parameters로서 지정된 object의 prototype 체인내에 있을지 어떨지를 나타냅니다.
| Object | |
| pause ():void
비디오 스트림(Stream)의 재생을 일시정지합니다.
| NetStream | ||
| play (... arguments):void
외부 오디오 파일 또는 비디오 파일 (FLV)의 재생을 개시합니다.
| NetStream | ||
![]() | propertyIsEnumerable (name:String ):Boolean
지정된 property가 존재해, 열거 가능한가 어떤가를 나타냅니다.
| Object | |
| publish (name:String = null, type:String = null):void
클라이언트로부터 Flash Media Server 2 등의 서버에, 스트리밍 오디오, 비디오, 및 텍스트 메세지를 송신합니다. 송신중에 스트림(Stream)을 녹음할 수도 있습니다.
| NetStream | ||
| receiveAudio (flag:Boolean ):void
스트림(Stream)상에서 착신 오디오가 재생될지 어떨지를 나타냅니다.
| NetStream | ||
| receiveVideo (flag:Boolean ):void
스트림(Stream)상에서 착신 비디오가 재생될지 어떨지를 나타냅니다.
| NetStream | ||
![]() | removeEventListener (type:String , listener:Function , useCapture:Boolean = false):void
EventDispatcher object로부터 listener를 삭제합니다.
| EventDispatcher | |
| resume ():void
재생을 일시정지하고 있던 비디오 스트림(Stream)을 재개합니다.
| NetStream | ||
| seek (offset:Number ):void
지정의 위치, 즉 스트림(Stream)의 선두로부터의 오프셋(offset) (초단위)에 가장 가까운 키 프레임을 시크 합니다.
| NetStream | ||
| send (handlerName:String , ... arguments):void
지정된 스트림(Stream)상에서, 예약(subscribe) 하고 있는 모든 클라이언트에 메세지를 송신합니다.
| NetStream | ||
![]() | setPropertyIsEnumerable (name:String , isEnum:Boolean = true):void
루프 처리에 대한 다이나믹 property의 가용성을 설정합니다.
| Object | |
| togglePause ():void
스트림(Stream)의 재생을 일시정지 또는 재개합니다.
| NetStream | ||
![]() | toString ():String
지정된 object의 string 표현을 돌려줍니다.
| Object | |
![]() | valueOf ():Object
지정된 object의 원시적치를 돌려줍니다.
| Object | |
![]() | willTrigger (type:String ):Boolean
지정된 event 타입에 대해, 이 EventDispatcher object 또는 그 조상에게 event listener가 등록되어 있는지 어떤지를 확인합니다.
| EventDispatcher | |
| 이벤트 | 일람 | 정의 | ||
|---|---|---|---|---|
| asyncError | 비동기 형식에서, 즉 네이티브비동기 코드로부터 예외가 슬로우 되면 dispatch됩니다. | NetStream | ||
| ioError | 입출력 에러가 발생해 네트워크 처리가 실패했을 때에 dispatch됩니다. | NetStream | ||
| netStatus | NetStream object가, 그 스테이터스 또는 에러 상태를 리포트하면 dispatch됩니다. | NetStream | ||
| onCuePoint | FLV 파일의 재생중에, 포함하기 큐 포인트에 이르면 불려 갑니다. | NetStream | ||
| onMetaData | 재생중의 FLV 파일에 포함되고 있는 설명 정보를 Flash Player 가 받았을 때에 dispatch됩니다. | NetStream | ||
| onPlayStatus | NetStream object에 의한 스트림(Stream)의 재생이 종료했을 때에 dispatch됩니다. | NetStream | ||
| bufferLength | property |
bufferLength:Number [read-only]
버퍼에 데이터가 포함되고 나서의 경과초수입니다. 이 property를 bufferTime property와 조합하는 것으로, 버퍼가 채워질 때까지의 추정 시간을 추측할 수가 있습니다. 예를 들어, 버퍼에 데이터가 로드 되는 것을 기다리는 유저에 대해서 피드백 정보를 제공하는 것이 가능하게 됩니다.
public function get bufferLength():Number
See also
| bufferTime | property |
bufferTime:Number [read-write]
스트림(Stream)의 표시를 개시하기까지 메세지를 어느 정도의 시간 버퍼링 해 두는지를 지정합니다. 예를 들어, 스트림(Stream)의 최초의 15 초간을 중단하는 일 없이 재생하려면 ,bufferTime 를 15 로 설정합니다. 이 경우, Flash Player 는 데이터를 15 초간 버퍼링 하고 나서 스트림(Stream)의 재생을 개시합니다.
디폴트치는 0.1 (1/10 초)입니다. 버퍼내의 데이터의 경과초수를 조사하려면 ,bufferLength property를 사용합니다.
public function get bufferTime():Number
public function set bufferTime(value:Number ):void
See also
| bytesLoaded | property |
bytesLoaded:uint [read-only]
이미 Player 에 로드 되고 있는 데이터의 바이트수입니다. 이 property를 bytesTotal property와 조합하는 것으로, 버퍼가 채워질 때까지의 추정 시간을 추측할 수가 있습니다. 예를 들어, 버퍼에 데이터가 로드 되는 것을 기다리는 유저에 대해서 피드백 정보를 제공하는 것이 가능하게 됩니다.
public function get bytesLoaded():uint
See also
| bytesTotal | property |
bytesTotal:uint [read-only]Player 에 로드 되는 파일의 총바이트수입니다.
Implements public function get bytesTotal():uint
See also
| checkPolicyFile | property |
checkPolicyFile:Boolean [read-write]FLV 파일의 로드를 개시하기 전에, Flash Player 가, 로드 되는 FLV 파일의 서버로부터 크로스 도메인 policy 파일을 다운로드하려고 할지 어떨지를 지정합니다. 이 property는, 프로그래시브 비디오 다운로드에 NetStream object (standalone FLV 파일)를 사용하는 경우, 또는 호출해 원의 SWF 파일의 전용 도메인외에 있는 FLV 파일을 로드하는 경우에 적용합니다. 이 property는, NetStream object를 사용해 RTMP Assets을 취득하는 경우에는 무시됩니다.
호출원의 SWF 파일의 도메인외로부터 FLV 파일을 로드해,BitmapData.draw() Methods를 사용해, 비디오에 픽셀 레벨로 액세스 할 필요가 있는 경우는, 이 property를 true 로 설정합니다. 로드시에 checkPolicyFile property를 true 로 설정하지 않고 BitmapData.draw() 를 호출했을 경우,SecurityError 예외를 받는 경우가 있습니다. 이것은, 필요한 policy 파일이 다운로드되어 있지 않기 때문입니다.
로드하는 비디오에의 픽셀 레벨의 액세스가 필요없는 경우는,checkPolicyFile 를 true 로 설정하지 말아 주세요. policy 파일의 확인은 네트워크 대역폭의 낭비가 되어, 다운로드의 개시가 늦는 경우가 있습니다.
checkPolicyFile 를 true 로 설정해 NetStream.play() Methods를 호출하는 경우, Flash Player 는, 관련하는 크로스 도메인 policy 파일을 정상적으로 다운로드하는지,NetStream.play() 의 호출로 지정한 object의 다운로드를 개시하기 전에, 그러한 policy 파일이 존재하지 않는 것을 판별해 둘 필요가 있습니다. policy 파일의 존재를 확인하기 위해(때문에), Flash Player 는 다음의 액션을 이 차례로 실행합니다.
Security.loadPolicyFile() Methods의 호출로 지정한 보류중 policy 파일을 다운로드하려고 합니다. NetStream.play() 에게 건네진 URL 에 대응하는 디폴트의 장소로부터 policy 파일을 다운로드하려고 합니다. 이것은, 그 URL 와 같은 서버상의 /crossdomain.xml 입니다. 어떠한 경우도, Flash Player 에서는, 해당하는 policy 파일이 비디오의 서버상에 존재하고 있어, policy 파일의 장소에 근거해 play() 에게 건네진 URL 에 있는 object에의 액세스를 제공해,<allow-access-from> 태그에 의해 호출원 SWF 파일의 도메인이 비디오에 액세스 할 수 있도록(듯이) 할 필요가 있습니다.
checkPolicyFile 를 true 로 설정했을 경우, Flash Player 는 비디오를 다운로드하기 전에, policy 파일이 검증될 때까지 대기합니다. NetStream object로부터 onMetaData event 또는 NetStatus 이벤트를 받을 때까지,BitmapData.draw() 를 호출하는 등의, 비디오 데이터에 대한 픽셀 레벨의 조작은 실행을 기다릴 필요가 있습니다.
checkPolicyFile 를 true 로 설정해, 관련하는 policy 파일이 발견되지 않는 경우, policy 파일을 필요로 하는 조작을 실행할 때까지 에러는 표시되지 않습니다. 그 후, Flash Player 는 SecurityError 예외를 슬로우 합니다.
서버 사이드 HTTP 리디렉트를 사용하는 URL 로부터 FLV 파일을 다운로드하는 경우는,checkPolicyFile 에 주의해 주세요. Flash Player 는,NetStream.play() 로 지정하는 초기 URL 에 대응하는 policy 파일을 취득하려고 합니다. 최종적인 FLV 파일이 HTTP 리디렉트에 의해 다른 URL 로부터 취득되는 경우, 최초로 다운로드된 policy 파일은 FLV 파일의 최종적인 URL 에 적용할 수 없는 것이 있습니다. 이 URL 는 시큐러티 판정에 대해 중요합니다.
policy 파일의 상세한 것에 대하여는, 「ActionScript 3.0 의 프로그래밍」의 「Flash Player 시큐러티」의 장을 참조해 주세요.
Implements public function get checkPolicyFile():Boolean
public function set checkPolicyFile(value:Boolean ):void
See also
| client | property |
client:Object [read-write]
콜백 Methods를 호출하는 object를 지정합니다. 디폴트의 object는, 작성되는 NetStream object this 입니다. client property를 다른 object로 설정하는 경우는, 콜백 Methods를 그 다른 object로 호출할 수가 있습니다.
public function get client():Object
public function set client(value:Object ):void
TypeError — client property는, null 이외의 object로 설정할 필요가 있습니다.
|
| currentFPS | property |
currentFPS:Number [read-only]1 초 쯤 보기 프레임수입니다. 복수의 시스템상에서 재생할 수 있도록(듯이) FLV 파일을 써내는 경우, 테스트중에 이 값을 체크하는 것으로, 파일의 서두시에 어느 정도의 압축이 필요한가를 지켜볼 수가 있습니다.
Implements public function get currentFPS():Number
| liveDelay | property |
liveDelay:Number [read-only]라이브 (버퍼링되어 있지 않다) 모드로 예약(subscribe) 하고 있는 스트림(Stream) 버퍼내에 있는 데이터의 초수입니다. 이 property는, 현재의 네트워크 전송이 지연 하고 있는 것을 나타냅니다 (지연 시간).
이 property는, 주로 Flash Media Server 등의 서버로 사용하는 것을 목적으로 하고 있습니다. 상세한 것에 대하여는, 클래스의 설명을 참조해 주세요.
이 property의 값을 취득해, 스트림(Stream)의 전송 품질을 대략적으로 판단해, 그것을 유저에게 전할 수가 있습니다.
Implements public function get liveDelay():Number
| objectEncoding | property |
objectEncoding:uint [read-only]
이 NetStream object의 encode (AMF 버젼)입니다. NetStream object는, 관련짓고 된 NetConnection object로부터 그 objectEncoding 값를 Inheritance합니다. ActionScript 3.0 SWF 파일로 Flash Player 9 이전에 릴리스 된 서버와 통신할 필요가 있는 경우는, 이 property를 이해하는 것이 중요합니다. 상세한 것에 대하여는, NetConnection 클래스의 objectEncoding property에 관한 설명을 참조해 주세요.
이 property의 값은, 로컬 스트림(Stream)이나 리모트 스트림(Stream) 등에 의해서 다릅니다. 로컬 스트림(Stream)에서는,NetConnection.connect() Methods에 null 가 건네받아NetConnection.defaultObjectEncoding 의 값이 돌려주어집니다. 리모트 스트림(Stream)에서는, 서버에 접속되고 있어 이 서버와의 접속의 object 인코딩이 돌려주어집니다.
접속되어 있지 않은 경우에 이 property를 읽어내려고 하는지, 이 property를 변경하려고 하면, Flash Player 에 의해 예외가 슬로우 됩니다.
Implements public function get objectEncoding():uint
See also
| soundTransform | property |
soundTransform:SoundTransform [read-write]이 NetStream object의 사운드를 제어합니다. 상세한 것에 대하여는, SoundTransform 클래스를 참조해 주세요.
Implements public function get soundTransform():SoundTransform
public function set soundTransform(value:SoundTransform ):void
See also
| time | property |
| NetStream | () | constructor |
public 함수 NetStream(connection:NetConnection )지정된 NetConnection object를 사용해, FLV 파일을 재생하기 위한 스트림(Stream)을 생성합니다.
Parametersconnection:NetConnection — NetConnection object입니다.
|
ArgumentError — NetConnection 인스턴스는 접속되고 있지 않습니다.
|
See also
| attachAudio | () | Methods |
public function attachAudio(microphone:Microphone ):void 소스로서 건네받는 Microphone object로부터 NetStream object를 개입시켜 송신되는 오디오 스트림(Stream)을 지정합니다. 이 Methods는, 지정된 스트림(Stream)의 발행자만을 사용할 수 있습니다.
이 Methods는, 주로 Flash Media Server 등의 서버로 사용하는 것을 목적으로 하고 있습니다. 상세한 것에 대하여는, 클래스의 설명을 참조해 주세요.
이 Methods는,publish() Methods를 호출하기 전 또는 후에 호출할 수가 있어 실제로 송신을 개시합니다. 오디오를 (듣)포함하고 싶은 subscribers는 NetStream.play() Methods를 호출할 필요가 있습니다. 지정의 Microphone object의 soundTransform property를 사용해, 이 오디오 스트림(Stream)의 사운드 property를 제어할 수 있습니다.
microphone:Microphone — 송신하는 오디오 스트림(Stream)의 소스입니다.
|
See also
| attachCamera | () | Methods |
public function attachCamera(theCamera:Camera , snapshotMilliseconds:int = -1):void
지정의 소스로부터 비디오의 capther를 개시합니다. 또는,theCamera 가 null 로 설정되면, capther를 정지합니다. 이 Methods는, 지정된 스트림(Stream)의 발행자만을 사용할 수 있습니다.
이 Methods는, 주로 Flash Media Server 등의 서버로 사용하는 것을 목적으로 하고 있습니다. 상세한 것에 대하여는, 클래스의 설명을 참조해 주세요.
비디오 소스의 아탓치 후에,NetStream.publish() 를 호출해 전송을 개시할 필요가 있습니다. 비디오를 표시하고 싶은 subscribers는,NetStream.play() 와 Video.attachCamera() 의 각 Methods를 호출해, 스테이지상에 비디오를 표시할 필요가 있습니다.
snapshotMilliseconds 를 사용해 값 0 을 지정하면, 단일의 snapshot를 송신할 수 있습니다. 또, 정의 수를 지정해, 비디오 피드로 지정의 밀리 세컨드수의 부속차를 추가하면, 일련의 snapshot, 즉 사실상의 팽이 흘림 비디오를 송신할 수가 있습니다. 부속차는, 비디오 메세지 보기 시간을 확장합니다. snapshotMilliseconds 에 정의 값을 지정해,attachCamera() 를 반복해 호출하면, snapshot와 부속차의 교호의 순차 순서에 의해, 팽이 흘림 비디오가 작성됩니다. 예를 들어, 매일 1 프레임씩 capther 해, 비디오 파일에 추가할 수가 있습니다. subscribers가 파일을 재생하면, 각 프레임이 지정의 밀리 세컨드간 화면상에 표시되어 그 후, 다음의 프레임이 표시됩니다.
이 snapshotMilliseconds Parameters의 목적은,Camera.setMode() 로 설정할 수 있는 fps Parameters와는 다릅니다. snapshotMilliseconds 를 지정하면, 기록한 각 프레임간에 경과시간을 제어할 수 있습니다. Camera.setMode() 를 사용해 fps 를 지정하면, 기록시와 재생시에 경과시간을 제어할 수 있습니다.
예를 들어, 5 분 마다 snapshot를 1 매 찍어, 합계로 100 매의 snapshot를 찍는다고 합니다. 이 조작을 실시하려면 , 다음의 2 개의 방법이 있습니다.
NetStream.attachCamera(myCamera, 500) 커멘드를 5 분에 1 회, 합계 100 회 실행할 수 있습니다. 이 경우, 기록에 500 분 걸립니다만, 생성되는 파일은 50 초 (100 프레임, 각 프레임간 500 밀리 세컨드)에 재생됩니다. fps 값를 지정해 Camera.setMode() 커멘드를 발행한 후,NetStream.attachCamera(source) 커멘드를 발행해, 카메라가 500 분간 연속해 capther 하도록(듯이) 설정할 수 있습니다. 생성되는 파일은, 500 분 , 즉 기록에 필요로 한 시간으로 같은 길이로 재생되어 각 프레임은 5 분간 표시됩니다. 어느 쪽의 수법에서도, 같은 500 개의 프레임이 capther 됩니다. 어느 쪽의 어프로치도 유용합니다만, 사용하는 어프로치는, 주로 재생 요건에 따라서 다릅니다. 예를 들어, 후자의 경우, 처음부터 끝까지 오디오를 계속 녹음할 수가 있습니다. 또, 어느 쪽의 경우도 파일 크기는 거의 같습니다.
ParameterstheCamera:Camera — 비디오 전송의 소스입니다. 유효한 값은, 비디오의 capther를 개시하는 Camera object와 null 입니다. null 를 건네주면, Flash Player 는 비디오의 capther를 정지해, 유저가 송신한 추가 Parameters는 모두 무시됩니다.
|
|
snapshotMilliseconds:int (default = -1) — 비디오 스트림(Stream)이 연속적인가, 단일의 프레임인가, 팽이 촬영 사진의 작성에 사용하는 일련의 단일 프레임인지를 지정합니다.
|
| close | () | Methods |
public function close():void
스트림(Stream)상의 모든 데이터의 재생을 정지해,time property를 0 으로 설정해, 다른 유저가 스트림(Stream)에 액세스 할 수 있도록(듯이) 합니다. 또, 이 커멘드는, HTTP 를 사용해 다운로드된 FLV 파일의 로컬 복사를 삭제합니다. Flash Player 에서는, Flash Player 로 작성한 FLV 파일의 로컬 복사를 삭제합니다만, 비디오의 복사가 브라우저의 캐쉬 디렉토리에 남는 경우가 있습니다. FLV 파일을 캐쉬나 로컬 기억역에 일절 남기지 않게 할 필요가 있는 경우에는, Flash Media Server 2 를 사용해 주세요.
See also
| pause | () | Methods |
public function pause():void 비디오 스트림(Stream)의 재생을 일시정지합니다. 비디오가 이미 일시정지하고 있는 경우는, 이 Methods를 호출해도 아무것도 실행되지 않습니다.
See also
| play | () | Methods |
public function play(... arguments):void
외부 오디오 파일 또는 비디오 파일 (FLV)의 재생을 개시합니다. 비디오 데이터를 표시하려면 , VIdeo object를 작성해,Video.attachNetStream() Methods를 호출할 필요가 있습니다. 비디오와 함께 스트림(Stream) 되는 오디오, 또는 오디오만이 포함된 FLV 파일은 자동적으로 재생됩니다. 마이크로폰으로부터 오디오를 스트림(Stream) 하려면 ,NetStream.attachAudio() Methods를 사용해, Microphone object를 사용해, 오디오의 몇개의 특성을 제어합니다.
FLV 파일에 관련지을 수 있었던 오디오를 제어하려면 ,DisplayObjectContainer.addChild() Methods를 사용해, 표시 리스트상의 object에 오디오를 아탓치 합니다. 그 후, Sound object를 작성하는 것으로써, 오디오의 몇개의 특성을 제어할 수 있습니다. 상세한 것에 대하여는,DisplayObjectContainer.addChild() Methods를 참조해 주세요.
FLV 파일이 발견되지 않았던 경우는,netStatus 이벤트가 dispatch됩니다. 재생중의 스트림(Stream)을 정지하려면 ,close() Methods를 사용합니다.
이 Methods를 사용할 때는, Flash Player 시큐러티 모델을 고려해 주세요.
NetStream.play() 를 호출할 수 없습니다. 상세한 것에 대하여는, 다음의 주제를 참조해 주세요.
... arguments — URLRequest object 또는 string로서의, 재생하는 FLV 파일의 장소입니다. SWF 파일과 같은 디렉토리 또는 하위 디렉토리에 포함된 로컬의 FLV 파일을 재생할 수 있습니다만, 상위의 디렉토리를 참조할 수 없습니다.
|
SecurityError — 신뢰되어 있지 않은 로컬 SWF 파일은 인터넷에의 접속이 허가되지 않습니다. 이 제한은, 네트워크 액세스가 허가된 로컬 SWF 파일, 또는 신뢰할 수 있는 SWF 파일로서 재분류하면 회피할 수 있는 경우가 있습니다.
|
|
ArgumentError — 적어도 1 개의 Parameters를 지정할 필요가 있습니다.
|
See also
| publish | () | Methods |
public function publish(name:String = null, type:String = null):void 클라이언트로부터 Flash Media Server 2 등의 서버에, 스트리밍 오디오, 비디오, 및 텍스트 메세지를 송신합니다. 송신중에 스트림(Stream)을 녹음할 수도 있습니다. 이 Methods는, 지정된 스트림(Stream)의 발행자만을 사용할 수 있습니다.
이 Methods는, 주로 Flash Media Server 2 등의 서버로 사용하는 것을 목적으로 하고 있습니다. 상세한 것에 대하여는, 클래스의 설명을 참조해 주세요.
이미 Publish 되고 있는지, 기록되고 있는 스트림(Stream)을 클라이언트에 재생시키는 경우는, 이 Methods를 사용하지 말아 주세요. 대신에, 그 클라이언트의 NetStream 인스턴스를 작성해,play() 를 호출합니다.
var 예약(subscribe)NS:NetStream = new NetStream(myNetConnection);
예약(subscribe)NS.play("streamToPlay");
Flash Media Server 2 로 스트림(Stream)을 기록하는 경우, FLV 파일이 작성되어 서버상의 어플리케이션 디렉토리의 하위 디렉토리에 포함됩니다. 각 스트림(Stream)은,NetConnection.connect() Methods의 command Parameters에게 건네진 어플리케이션 인스턴스명의 값과 일치하는 이름의 디렉토리에 포함됩니다. 이러한 디렉토리는 자동적으로 작성되기 (위해)때문에, 인스턴스명 마다 작성할 필요는 없습니다. 예를 들어, 다음의 코드에서는, 어플리케이션 디렉토리내의 lectureSeries 라고 하는 디렉토리에 포함되고 있는 어플리케이션의 특정의 인스턴스와의 접속 방법을 나타내고 있습니다. lecture.flv 라는 이름의 파일이 /yourAppsFolder/lectureSeries/streams/Monday 라고 하는 하위 디렉토리에 포함되고 있습니다.
var myNC:NetConnection = new NetConnection();
myNC.connect("rtmp://server.domain.com/lectureSeries/Monday");
var myNS:NetStream = new NetStream(myNC);
myNS.publish("lecture", "record");
다음의 예에서는, 같은 어플리케이션의 다른 인스턴스에 접속해, 동일한 publish 커멘드를 발행하는 방법을 나타냅니다. lecture.flv 라는 이름의 파일이 /yourAppsFolder/lectureSeries/streams/Tuesday 라고 하는 하위 디렉토리에 포함되고 있습니다.
var myNC:NetConnection = new NetConnection();
myNC.connect("rtmp://server.domain.com/lectureSeries/Tuesday");
var myNS:NetStream = new NetStream(my_nc);
myNS.publish("lecture", "record");
인스턴스명의 값을 건네주지 않는 경우,name property에게 건네진 값에 일치하는 파일이 /yourAppsFolder/appName/streams/_definst_ ("디폴트의 인스턴스" 의 경우)라고 하는 하위 디렉토리에 포함됩니다. 인스턴스명의 사용에 대해서는,NetConnection.connect() Methods를 참조해 주세요. FLV 파일의 재생에 대해서는, NetStream.play() Methods를 참조해 주세요.
이 Methods는, 각종 정보 object로 netStatus 이벤트를 dispatch할 수가 있습니다. 예를 들어, 누군가가 이미 지정한 이름으로 스트림(Stream)을 Publish 하고 있는 경우,netStatus 이벤트는 NetStream.Publish.BadName 의 코드 property로 dispatch됩니다. 상세한 것에 대하여는,netStatus 이벤트를 참조해 주세요.
name:String (default = null) — 스트림(Stream)을 식별하는 string입니다. false 를 건네주면, Publish 조작이 정지합니다. 이 스트림(Stream)에 예약(subscribe) 하고 있는 클라이언트는,NetStream.play() 를 호출하는 경우에, 이 같은 이름을 건네줄 필요가 있습니다. 스트림(Stream)명에 파일 확장자(extension)를 포함할 필요는 없습니다.
|
|
type:String (default = null) — 스트림(Stream)의 Publish 방법을 지정하는 string입니다. 유효한 값은 "record","append", 및 "live" 입니다. 디폴트치는 "live" 입니다.
|
See also
| receiveAudio | () | Methods |
public function receiveAudio(flag:Boolean ):void 스트림(Stream)상에서 착신 오디오가 재생될지 어떨지를 나타냅니다. 이 Methods는, 지정된 스트림(Stream)에 예약(subscribe) 된 클라이언트에서만 사용할 수 있습니다. 스트림(Stream)의 발행자는 사용할 수 없습니다.
이 Methods는, 주로 Flash Media Server 등의 서버로 사용하는 것을 목적으로 하고 있습니다. 상세한 것에 대하여는, 클래스의 설명을 참조해 주세요.
이 Methods는,NetStream.play() Methods를 호출하기 전 또는 호출한 후에 호출할 수가 있어 실제로 스트림(Stream)의 수신을 개시합니다. 예를 들어, 착신 오디오 스트림(Stream)을 뮤트 및 뮤트 해제하는 경우, 유저가 클릭하는 버튼에 이러한 Methods를 아탓치 할 수 있습니다.
지정의 스트림(Stream)에 오디오 데이터만이 포함되는 경우, 이 Methods에 false 의 값을 건네주면 NetStream.time 는 더 이상 증가하지 않게 됩니다.
flag:Boolean — 지정의 스트림(Stream)상에서 착신 오디오가 재생될지 어떨지를 나타냅니다. 재생하는 경우는 true, 재생하지 않는 경우는 false 를 지정합니다. 디폴트치는 true 입니다.
|
| receiveVideo | () | Methods |
public function receiveVideo(flag:Boolean ):void 스트림(Stream)상에서 착신 비디오가 재생될지 어떨지를 나타냅니다. 이 Methods는, 지정된 스트림(Stream)에 예약(subscribe) 된 클라이언트에서만 사용할 수 있습니다. 스트림(Stream)의 발행자는 사용할 수 없습니다.
이 Methods는, 주로 Flash Media Server 2 등의 서버로 사용하는 것을 목적으로 하고 있습니다. 상세한 것에 대하여는, 클래스의 설명을 참조해 주세요.
이 Methods는,NetStream.play() Methods를 호출하기 전 또는 호출한 후에 호출할 수가 있어 실제로 스트림(Stream)의 수신을 개시합니다. 예를 들어, 착신 비디오 스트림(Stream)을 표시 또는 비표시로 하는 경우, 유저가 누르는 버튼에 이러한 Methods를 아탓치 할 수 있습니다.
지정의 스트림(Stream)에 비디오 데이터만이 포함되는 경우, 이 Methods에 false 의 값을 건네주면 NetStream.time 는 더 이상 증가하지 않게 됩니다.
flag:Boolean — 지정의 스트림(Stream)상에서 착신 비디오가 재생될지 어떨지를 나타냅니다. 재생하는 경우는 true, 재생하지 않는 경우는 false 를 지정합니다. 디폴트치는 true 입니다.
|
| resume | () | Methods |
public function resume():void 재생을 일시정지하고 있던 비디오 스트림(Stream)을 재개합니다. 비디오가 이미 재생중인 경우는, 이 Methods를 호출해도 아무것도 실행되지 않습니다.
See also
| seek | () | Methods |
public function seek(offset:Number ):void 지정의 위치, 즉 스트림(Stream)의 선두로부터의 오프셋(offset) (초단위)에 가장 가까운 키 프레임을 시크 합니다. 이 정도치에 도달하면, 스트림(Stream)이 재생을 재개합니다.
Parametersoffset:Number — FLV 파일에 있어서의, 재생 헤드의 대체로의 이동 시간 (초단위)입니다. offset 에 가장 가까운 비디오 키 프레임에 재생 헤드를 이동합니다.
비디오가 시크 하는 정확한 위치는, 서두시의 1 초 쯤의 프레임수 (fps)의 설정에 따라서 다릅니다. 따라서, 같은 비디오를 6 fps 및 30 fps 로 써내, 양쪽 모두의 비디오 object에 |
See also
| send | () | Methods |
public function send(handlerName:String , ... arguments):void 지정된 스트림(Stream)상에서, 예약(subscribe) 하고 있는 모든 클라이언트에 메세지를 송신합니다. 이 Methods는, 지정된 스트림(Stream)의 발행자만을 사용할 수 있습니다.
이 Methods는, 주로 Flash Media Server 2 등의 서버로 사용하는 것을 목적으로 하고 있습니다. 상세한 것에 대하여는, 클래스의 설명을 참조해 주세요.
메세지를 처리해, 응답하려면 ,myStream.HandlerName 의 형식에서 핸들러를 작성합니다.
Flash Player 는 Methods나 그러한 데이터, object prototype 변수, 또는 열거 불가능한 변수를 직렬화하지 않습니다. 표시 object의 경우, Flash Player 는 패스를 직렬화합니다만, 데이터는 직렬화하지 않습니다.
ParametershandlerName:String — 송신되는 메세지입니다. 메세지를 받아들이는 ActionScript 핸들러의 이름이기도 합니다. 핸들러명의 깊이는 1 레벨만으로 (즉, 부모와 자식 형식을 취할 수가 없습니다), 스트림(Stream) object에 대립됩니다. 핸들러명에는 예약어(reserved word)를 사용하지 말아 주세요. 예를 들어, 핸들러명으로서 "close" 를 사용하면, 이 Methods는 실패합니다.
|
|
... arguments — 옵션의 Parameters로, 임의의 데이터형을 지정할 수 있습니다. 그것들은 직렬화 되어 접속을 개입시켜 송신됩니다. 수신측의 핸들러는 같은 차례로 그것들을 받습니다. Parameters가 순환 object (순환하는 링크 된 리스트등)인 경우, serializer는 참조를 올바르게 처리합니다.
|
See also
ns1 를 사용해,send() Methods를 호출합니다. 또, 이제(벌써) 한편의 NetStream object ns2 를 사용해,client object를 등록해,send() 호출에 대한 핸들러 함수를 등록합니다.
import flash.net.NetConnection;
import flash.net.NetStream;
import flash.events.NetStatusEvent;
import flash.media.Video;
import flash.utils.setTimeout;
var nc:NetConnection = new NetConnection();
nc.objectEncoding = 0;
nc.addEventListener("netStatus", onNCStatus);
nc.connect("rtmp://www.example.com/MyApp/MyInstance");
var ns1:NetStream;
var vid:Video = new Video(300,300);
addChild(vid);
var obj:Object = new Object();
obj.myFunction = function(event:String) :void {
trace(event);
}
function onNCStatus(event:NetStatusEvent) :void {
if(event.info.code == "NetConnection.Connect.Success") {
ns1 = new NetStream(nc);
ns1.play("MyVideo");
vid.attachNetStream(ns1);
ns1.client = obj;
ns1.publish("dummy", "live");
var ns2:NetStream = new NetStream(nc);
ns2.play("dummy");
ns2.client = obj;
setTimeout(sendHello, 3000);
}
}
function sendHello() :void {
ns1.send("myFunction", "hello");
}
| togglePause | () | Methods |
public function togglePause():void 스트림(Stream)의 재생을 일시정지 또는 재개합니다. 이 Methods를 호출하면 처음은 재생을 일시정지해, 다음에 호출했을 때에는 재생을 재개합니다. 이 Methods를 사용해, 유저가 1 개의 버튼을 누르는 것만으로 재생을 일시정지 또는 재생할 수 있도록(듯이) 할 수가 있습니다.
See also
| asyncError | event |
flash.events.AsyncErrorEvent
flash.events.AsyncErrorEvent.ASYNC_ERROR
비동기 형식에서, 즉 네이티브비동기 코드로부터 예외가 슬로우 되면 dispatch됩니다. 이 이벤트는, 서버가 정의되어 있지 않은 Methods를 클라이언트상에서 호출했을 때에 dispatch됩니다.
AsyncErrorEvent.ASYNC_ERROR 정수는,asyncError event object의 type property치를 정의합니다.
이 이벤트에는, 다음의 property가 있습니다.
| Property | Value |
|---|---|
bubbles | false |
cancelable | false 는, 캔슬하는 디폴트의 동작이 없는 것을 나타냅니다. |
currentTarget | event listener로 Event object를 액티브하게 처리하고 있는 object입니다. |
target | 네트워크 조작 에러가 발생한 object입니다. |
error | 이벤트를 방아쇠 한 에러입니다. |
See also
| ioError | event |
flash.events.IOErrorEvent
flash.events.IOErrorEvent.IO_ERROR
입출력 에러가 발생해 네트워크 처리가 실패했을 때에 dispatch됩니다.
ioError event object의 type property의 값을 정의합니다.
이 이벤트에는, 다음의 property가 있습니다.
| Property | Value |
|---|---|
bubbles | false |
cancelable | false 는, 캔슬하는 디폴트의 동작이 없는 것을 나타냅니다. |
currentTarget | event listener로 Event object를 액티브하게 처리하고 있는 object입니다. |
target | 입출력 에러가 발생한 네트워크 object입니다. |
text | 에러 메세지로서 표시되는 텍스트입니다. |
| netStatus | event |
flash.events.NetStatusEvent
flash.events.NetStatusEvent.NET_STATUS
NetStream object가, 그 스테이터스 또는 에러 상태를 리포트하면 dispatch됩니다. netStatus 이벤트에는,info property가 포함됩니다. 이 property는, 접속 시행이 성공했는지 어떠했는지 등, 이벤트에 관한 특정의 정보를 포함한 정보 object입니다.
netStatus event object의 type property의 값을 정의합니다.
이 이벤트에는, 다음의 property가 있습니다.
| Property | Value |
|---|---|
bubbles | false |
cancelable | false 는, 캔슬하는 디폴트의 동작이 없는 것을 나타냅니다. |
currentTarget | event listener로 Event object를 액티브하게 처리하고 있는 object입니다. |
info | object의 스테이터스 또는 에러 상태를 기술하는 property를 가지는 object입니다. |
target | 그 스테이터스를 리포트하는 NetConnection 또는 NetStream object입니다. |
See also
| onCuePoint | event |
FLV 파일의 재생중에, 포함하기 큐 포인트에 이르면 불려 갑니다. 이 핸들러를 사용해, 비디오가 특정의 큐 포인트에 이르렀을 때에 코드내의 액션을 방아쇠 할 수가 있습니다. 이것에 의해, 어플리케이션의 다른 액션과 비디오 재생 이벤트와 동기 시킬 수가 있습니다.
이 이벤트는, 주로 Flash Media Server 2 등의 서버로 사용하는 것을 목적으로 하고 있습니다. 상세한 것에 대하여는, 클래스의 설명을 참조해 주세요. 이 이벤트는 Flash Player API 의 일부에서는 없습니다만, 편의상, 레퍼런스 가이드로 다루고 있습니다. addEventListener() Methods 또는 그 외의 EventDispatcher Methods를 사용해, 이 이벤트를 받거나 처리하거나 할 수 없습니다. 대신에, 1 개의 콜백 함수를 정의해, 이하의 object의 어느쪽이든을 직접 아탓치 할 필요가 있습니다.
client property로 참조되는 object입니다. FLV 파일에 포함 가능한 큐 포인트에는, 다음의 타입이 있습니다.
time property를 지정합니다. 네비게이션 큐 포인트는, 유저를 비디오 파일에 이동시키는 북마크나 엔트리 포인트로서 자주(잘) 사용됩니다. onCuePoint event object에는, 다음의 property가 포함됩니다.
| property | 설명 |
|---|---|
name |
큐 포인트가 FLV 파일내에 포함되었을 때에, 큐 포인트로 지정된 이름입니다. |
parameters |
이 큐 포인트로 지정된 이름과 값의 페어의 string의 결합 배열입니다. Parameters명 또는 값에는, 임의의 유효한 string를 사용할 수 있습니다. |
time |
비디오 파일의 재생시에 큐 포인트가 발생한 시간 (초수)입니다. |
type |
도달한 큐 포인트의 종류입니다. 네비게이션 또는 이벤트의 머지않아인가입니다. |
최초로 FLV 파일을 encode 할 때, 또는 Flash authoring tool로 비디오의 read 위저드를 사용해 비디오 클립을 읽어들일 때, FLV 파일에 큐 포인트를 정의할 수 있습니다.
onMetaData 이벤트도, 비디오 파일내의 큐 포인트에 관한 정보를 취득합니다. 다만,onMetaData 이벤트는, 비디오의 재생이 개시되기 전에, 모든 큐 포인트에 관한 정보를 취득합니다. onCuePoint 이벤트는, 재생시에 그 큐 포인트로 지정된 시간에, 1 개의 큐 포인트에 관한 정보를 취득합니다.
일반적으로, 코드로 특정의 큐 포인트의 발생시에 응답하려면 ,onCuePoint 이벤트를 사용해, 코드내의 특정의 액션을 방아쇠 합니다.
onMetaData 이벤트로 지정된 큐 포인트의 리스트를 사용하면, 비디오 스트림(Stream)의 사전에 정의된 포인트로 유저에게 비디오의 재생을 개시시킬 수가 있습니다. 큐 포인트의 time property의 값을 NetStream.seek() Methods에 건네주어, 그 큐 포인트로부터 비디오를 재생합니다.
See also
| onMetaData | event |
재생중의 FLV 파일에 포함되고 있는 설명 정보를 Flash Player 가 받았을 때에 dispatch됩니다.
이 특별한 이벤트는, 주로 Flash Media Server 등의 서버로 사용하는 것을 목적으로 하고 있습니다. 상세한 것에 대하여는, 클래스의 설명을 참조해 주세요. 이 특별한 이벤트는 엄밀하게는 Flash Player API 의 일부에서는 없습니다만, 편의상, 레퍼런스 가이드로 다루고 있습니다. addEventListener() Methods 또는 그 외의 EventDispatcher Methods를 사용해, 이 이벤트를 받거나 처리하거나 할 수 없습니다. 대신에, 1 개의 콜백 함수를 정의해, 이하의 object의 어느쪽이든을 직접 아탓치 할 필요가 있습니다.
client property로 참조되는 object입니다. Flash Video Exporter 유틸리티 (버젼 1.1 이후)는, 비디오의 계속 시간, 작성 일자, 데이터 레이트, 그 외의 정보를 비디오 파일에 포함합니다. 각 비디오 엔코더는, 각각 다른 메타데이타세트를 포함합니다.
이 이벤트는,NetStream.play() Methods의 호출 후, 다만 비디오 재생 헤드가 진행되는 것보다는 전에 방아쇠 됩니다.
많은 경우, FLV 메타데이타에 포함된 계속기간의 값은 실제의 계속 시간에 근사 한 것이 됩니다만, 정확한 값이 아닙니다. 즉, 재생 헤드가 비디오 스트림(Stream)의 말미에 있는 경우, FLV 메타데이타에 포함된 계속기간의 값은 NetStream.time property의 값과 반드시 일치하는 것은 아닙니다.
See also
| onPlayStatus | event |
NetStream object에 의한 스트림(Stream)의 재생이 종료했을 때에 dispatch됩니다. 이 핸들러에 의해, 정보 object가 돌려주어져netStatus 이벤트에 의해 돌려주어지는 정보 이외의 정보도 제공됩니다. 이 핸들러를 사용하면, (정보 object NetStream.Play.Switch 로 나타나고 있도록(듯이)) 재생 리스트로 NetStream object가 스트림(Stream)을 바꾸었을 때, 또는 (정보 object NetStream.Play.Complete 로 나타나고 있도록(듯이)) NetStream object가 마지막까지 재생했을 때에, 코드내의 액션을 방아쇠 할 수 있습니다. 이 이벤트에 응답하려면 , 서버로부터 보내지는 정보 object를 처리하는 함수를 작성할 필요가 있습니다.
이 이벤트는, 주로 Flash Media Server 등의 서버로 사용하는 것을 목적으로 하고 있습니다. 상세한 것에 대하여는, 클래스의 설명을 참조해 주세요. 이 이벤트는 Flash Player API 의 일부에서는 없습니다만, 편의상, 레퍼런스 가이드로 다루고 있습니다. addEventListener() Methods 또는 그 외의 EventDispatcher Methods를 사용해, 이 이벤트를 받거나 처리하거나 할 수 없습니다. 대신에, 1 개의 콜백 함수를 정의해, 이하의 object의 어느쪽이든을 직접 아탓치 할 필요가 있습니다.
client property로 참조되는 object입니다. 이 이벤트에서는, 다음의 property가 지정된 정보 object를 돌려줄 수가 있습니다.
| code property | level property | 설명 |
|---|---|---|
NetStream.Play.Switch |
"status" |
subscribers가, 재생 리스트로 스트림(Stream)을 바꾸고 있습니다. |
NetStream.Play.Complete |
"status" |
재생이 종료했습니다. |
See also
videoURL 에게 건네지는 변수와 파일명 및 장소가 일치하는 FLV 파일이 필요합니다.
이 경우는, SWF 파일과 같은 디렉토리에 있는 Video.flv 라는 이름의 FLV 파일입니다.
이 예에서는, Video object와 NetStream object를 작성해,
Video.attachNetStream() Methods와 NetStream.play() Methods를 호출하는 코드가
핸들러 함수에 배치됩니다. 핸들러는,
NetConnection object와의 접속이 성공했을 경우에게만 불려 갑니다. 즉,
netStatus 이벤트가, 성공한 것을 나타내는 code property와 함께 info object를 돌려준다
경우입니다.
접속에 성공할 때까지 기다리고 나서, 다음의 코드를 호출하는 것을 추천합니다.
NetStream.play().
package {
import flash.display.Sprite;
import flash.events.NetStatusEvent;
import flash.events.SecurityErrorEvent;
import flash.media.Video;
import flash.net.NetConnection;
import flash.net.NetStream;
import flash.events.Event;
public class NetConnectionExample extends Sprite {
private var videoURL:String = "Video.flv";
private var connection:NetConnection;
private var stream:NetStream;
public function NetConnectionExample() {
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("Stream not found: " + videoURL);
break;
}
}
private function securityErrorHandler(event:SecurityErrorEvent) :void {
trace("securityErrorHandler: " + event);
}
private function connectStream() :void {
var stream:NetStream = new NetStream(connection);
stream.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
stream.client = new CustomClient();
var video:Video = new Video();
video.attachNetStream(stream);
stream.play(videoURL);
addChild(video);
}
}
}
class CustomClient {
public function onMetaData(info:Object) :void {
trace("metadata: duration=" + info.duration + " width=" + info.width + " height=" + info.height + " framerate=" + info.framerate);
}
public function onCuePoint(info:Object) :void {
trace("cuepoint: time=" + info.time + " name=" + info.name + " type=" + info.type);
}
}
코멘트가 추가되었을 경우, 메일로 받기. | 코멘트 리포트
현재의 페이지: http://flexdocs.kr/docs/flex2/langref/flash/net/NetStream.html