| Package | flash.media |
| Class | public class Sound |
| Inheritance | Sound EventDispatcher Object |
| Subclasses | SoundAsset |
SWF 파일에 포함된 사운드를 제어하려면 , SoundMixer 클래스의 property를 사용합니다.
메모 :ActionScript 3.0 의 Sound API 는, ActionScript 2.0 과는 다릅니다. ActionScript 3.0 에서는, 취득해 계층내에 배치한 Sound object의 property를 제어할 수가 없습니다.
이 클래스를 사용할 때는, Flash Player 시큐러티 모델을 고려해 주세요.
Sound.id3,SoundMixer.computeSpectrum(),SoundMixer.bufferTime, 및 SoundTransform 클래스입니다. 상세한 것에 대하여는, 다음의 주제를 참조해 주세요.
See also
| property | 정의 | ||
|---|---|---|---|
| bytesLoaded : uint
[read-only]
이 Sound object로 현재 이용할 수 있는 데이터의 바이트수를 돌려줍니다.
| Sound | ||
| bytesTotal : int
[read-only]
이 Sound object의 합계 바이트수를 돌려줍니다.
| Sound | ||
![]() | constructor : Object
특정의 object 인스턴스의 클래스 object 또는 constructor 함수에의 참조입니다.
| Object | |
| id3 : ID3Info
[read-only]
MP3 파일의 일부인 메타데이타에 대한 액세스를 제공합니다.
| Sound | ||
| isBuffering : Boolean
[read-only]
외부 MP3 파일의 버퍼링 상태를 돌려줍니다.
| Sound | ||
| length : Number
[read-only]
현재의 사운드의 계속 시간을 나타내는 밀리 세컨드수입니다.
| Sound | ||
![]() | prototype : Object
[static]
클래스 또는 함수 object의 prototype object에의 참조입니다.
| Object | |
| url : String
[read-only]
사운드가 로드 되는 URL 입니다.
| Sound | ||
| Methods | 정의 | ||
|---|---|---|---|
| Sound (stream:URLRequest = null, context:SoundLoaderContext = null)
새로운 Sound object를 작성합니다.
| Sound | ||
![]() | addEventListener (type:String , listener:Function , useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
event listener objects를 EventDispatcher object에 등록해, listener가 이벤트의 통지를 받도록(듯이) 합니다.
| EventDispatcher | |
| close ():void
스트림(Stream)을 닫아, 데이터의 다운로드를 중지합니다.
| Sound | ||
![]() | 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 | |
| load (stream:URLRequest , context:SoundLoaderContext = null):void
지정한 URL 로부터 외부 MP3 파일의 로드를 개시합니다.
| Sound | ||
| play (startTime:Number = 0, loops:int = 0, sndTransform:SoundTransform = null):SoundChannel
사운드를 재생하는 SoundChannel object를 새롭게 작성합니다.
| Sound | ||
![]() | propertyIsEnumerable (name:String ):Boolean
지정된 property가 존재해, 열거 가능한가 어떤가를 나타냅니다.
| Object | |
![]() | removeEventListener (type:String , listener:Function , useCapture:Boolean = false):void
EventDispatcher object로부터 listener를 삭제합니다.
| EventDispatcher | |
![]() | setPropertyIsEnumerable (name:String , isEnum:Boolean = true):void
루프 처리에 대한 다이나믹 property의 가용성을 설정합니다.
| Object | |
![]() | toString ():String
지정된 object의 string 표현을 돌려줍니다.
| Object | |
![]() | valueOf ():Object
지정된 object의 원시적치를 돌려줍니다.
| Object | |
![]() | willTrigger (type:String ):Boolean
지정된 event 타입에 대해, 이 EventDispatcher object 또는 그 조상에게 event listener가 등록되어 있는지 어떤지를 확인합니다.
| EventDispatcher | |
| 이벤트 | 일람 | 정의 | ||
|---|---|---|---|---|
| complete | 데이터가 정상적으로 로드 되었을 때에 dispatch됩니다. | Sound | ||
| id3 | MP3 사운드로 ID3 데이터를 사용할 수 있는 경우에, Sound object에 의해 dispatch됩니다. | Sound | ||
| ioError | 입출력 에러가 발생해 로드 조작이 실패했을 때에 dispatch됩니다. | Sound | ||
| open | 로드 조작이 개시했을 때에 dispatch됩니다. | Sound | ||
| progress | 로드 처리를 실행중에 데이터를 수신했을 때에 dispatch됩니다. | Sound | ||
| bytesLoaded | property |
bytesLoaded:uint [read-only]이 Sound object로 현재 이용할 수 있는 데이터의 바이트수를 돌려줍니다. 이것은 통상, 외부로부터 로드하는 파일에만 사용합니다.
Implements public function get bytesLoaded():uint
| bytesTotal | property |
bytesTotal:int [read-only]이 Sound object의 합계 바이트수를 돌려줍니다.
Implements public function get bytesTotal():int
| id3 | property |
id3:ID3Info [read-only]MP3 파일의 일부인 메타데이타에 대한 액세스를 제공합니다.
MP3 사운드 파일에는, 파일에 대한 메타데이타를 나타내는 ID3 태그를 포함할 수가 있습니다. Sound.load() Methods를 사용해 로드한 MP3 사운드에 ID3 태그가 포함되는 경우는, 이러한 property를 조사할 수가 있습니다. 지원(support)되고 있는 것은, UTF-8 캐릭터 세트를 사용하는 ID3 태그 뿐입니다.
Flash Player 9 이후에서는, ID3 2.0 (엄밀하게는 2.3 및 2.4)의 태그의 지원(support)가 추가되었습니다. 다음의 겉(표)에, 표준의 ID3 2.0 태그로 그 태그가 나타내는 컨텐츠 타입을 나타냅니다. Sound.id3 property는 my_sound.id3.COMM,my_sound.id3.TIME 등의 형식을 사용해 이러한 태그에 액세스 할 수 있습니다. 최초의 겉(표)는, ID3 2.0 property명 또는 ActionScript property명의 어느쪽이든을 사용해 액세스 할 수 있는 태그를 나타냅니다. 2 번째의 겉(표)는, 지원(support)되고 있지만, ActionScript 에 정의 끝난 property가 존재하지 않는 ID3 태그를 나타냅니다.
| ID3 2.0 태그 | 대응하는 ActionScript property |
| COMM | Sound.id3.comment |
| TALB | Sound.id3.album |
| TCON | Sound.id3.genre |
| TIT2 | Sound.id3.songName |
| TPE1 | Sound.id3.artist |
| TRCK | Sound.id3.track |
| TYER | Sound.id3.year |
다음의 겉(표)는, 지원(support)되고 있지만, ActionScript 에 정의 끝난 property가 존재하지 않는 ID3 태그를 나타냅니다. 이러한 태그에 액세스 하려면 ,mySound.id3.TFLT,mySound.id3.TIME 등을 호출합니다.
| property | 설명 |
| TFLT | 파일 형식 |
| TIME | 시각 |
| TIT1 | 내용이 속하는 그룹의 설명 |
| TIT2 | 타이틀/곡명/내용의 설명 |
| TIT3 | 부제/설명의 추가 정보 |
| TKEY | 최초의 조 |
| TLAN | 언어 |
| TLEN | 길이 |
| TMED | 미디어 타입 |
| TOAL | 오리지날의 앨범/무비/쇼의 타이틀 |
| TOFN | 오리지날의 파일명 |
| TOLY | 오리지날의 작사가/문서 작성자 |
| TOPE | 오리지날의 아티스트/연주자 |
| TORY | 오리지날의 릴리스년 |
| TOWN | 파일의 소유자/라이센스 보관 유지자 |
| TPE1 | 주된 연주자/솔리스트 |
| TPE2 | 밴드/오케스트라/반주 |
| TPE3 | 지휘자/연주자 상세 정보 |
| TPE4 | 번역, 리믹스, 그 외의 수정을 실시한 사람 |
| TPOS | 세트중의 위치 |
| TPUB | 발행자 |
| TRCK | 트럭 번호/세트내의 위치 |
| TRDA | 녹음일 |
| TRSN | 인터넷 라디오국의 이름 |
| TRSO | 인터넷 라디오국의 소유자 |
| TSIZ | 크기 |
| TSRC | ISRC (국제 표준 녹음 자료 코드) |
| TSSE | encode에 사용한 소프트웨어/하드웨어와 설정 |
| TYER | 년 |
| WXXX | URL 링크 프레임 |
이 property를 사용할 때는, Flash Player 시큐러티 모델을 고려해 주세요.
id3 property는, 사운드 파일과 같은 시큐러티 샌드 박스내에 있는 SWF 파일로 항상 사용할 수 있습니다. 다른 샌드 박스내의 파일에는, 시큐러티 체크가 있습니다. load() Methods를 사용하면, SoundLoaderContext object인 context Parameters를 지정할 수 있습니다. SoundLoaderContext object의 checkPolicyFile property를 true 로 설정했을 경우, Flash Player 는, 사운드가 로드 되는 서버상에 크로스 도메인 policy 파일이 있을지 어떨지를 체크합니다. 크로스 도메인 policy 파일이 존재하고 있어, 그 파일로 로드원 SWF 파일의 도메인이 허가되고 있는 경우, Sound object의 id3 property에 액세스 할 수 있습니다. 그 이외의 경우는, 액세스 할 수 없습니다. 상세한 것에 대하여는, 다음의 주제를 참조해 주세요.
public function get id3():ID3Info
See also
| isBuffering | property |
isBuffering:Boolean [read-only]
외부 MP3 파일의 버퍼링 상태를 돌려줍니다. 값이 true 의 경우, 재생은 현재 중단되어 object가 데이터를 대기하고 있습니다.
public function get isBuffering():Boolean
| length | property |
length:Number [read-only]현재의 사운드의 계속 시간을 나타내는 밀리 세컨드수입니다.
Implements public function get length():Number
| url | property |
url:String [read-only]
사운드가 로드 되는 URL 입니다. 이 property는 Sound.load() Methods를 사용해 로드 된 Sound object에게만 적용할 수 있습니다. SWF 프로그램 라이브러리의 사운드 Assets에 관련지을 수 있었던 Sound object의 url property의 값은 null 입니다.
처음으로 Sound.load() 를 호출할 때는 최종적인 URL 가 불명하기 때문에,url property의 초기치는 null 가 됩니다. Sound object로부터 open 이벤트가 dispatch되는 것과 동시에,url property는 null 이외의 값이 됩니다.
url property에는, 사운드가 로드 되는 최종적인, 절대 URL 가 포함됩니다. url 의 값은, 통상,Sound.load() 의 stream Parameters에게 건네지는 값과 같습니다. 다만,Sound.load() 에 상대 URL 를 건네주어도,url property의 값은 절대 URL 를 나타냅니다. 또, 원의 URL 요구가 HTTP 서버에 의해 리디렉트 되면,url property의 값은 사운드가 실제로 다운로드되는 URL 를 나타냅니다. 이 최종적인 절대 URL 의 보고는,LoaderInfo.url 의 동작과 같습니다.
public function get url():String
See also
| Sound | () | constructor |
public 함수 Sound(stream:URLRequest = null, context:SoundLoaderContext = null)
새로운 Sound object를 작성합니다. Sound constructor 에 유효한 URLRequest object를 건네주면, constructor 은 자동적으로 Sound object의 load() 함수를 호출합니다. Sound constructor 에 유효한 URLRequest object를 건네주지 않는 경우는, 유저 자신이 Sound object의 load() 함수를 호출할 필요가 있습니다. 호출하지 않으면 스트림(Stream)이 로드 되지 않습니다.
Sound object로 load() 가 불려 간 후는, 그 Sound object에 다른 사운드 파일을 로드할 수 없습니다. 다른 사운드 파일을 로드하려면 , 새로운 Sound object를 작성합니다.
stream:URLRequest (default = null) — 외부의 MP3 파일을 지정하는 URL 입니다.
|
|
context:SoundLoaderContext (default = null) — Sound object의 버퍼로 MP3 데이터를 보관 유지하는 최소 시간 (밀리 세컨드 단위)입니다. Sound object는, 재생의 개시전, 및 네트워크 정지 후의 재생의 재개전에 적어도 이 대량의 데이터를 취득할 때까지 대기합니다. 디폴트치는 1000 밀리 세컨드 (1 초)입니다.
|
| close | () | Methods |
public function close():void
스트림(Stream)을 닫아, 데이터의 다운로드를 중지합니다. close() Methods의 호출 후는, 스트림(Stream)로부터 데이터를 읽어들이지 않습니다.
IOError — 스트림(Stream)을 닫을 수가 없는지, 또는 스트림(Stream)이 열려 있지 않습니다.
|
| load | () | Methods |
public function load(stream:URLRequest , context:SoundLoaderContext = null):void
지정한 URL 로부터 외부 MP3 파일의 로드를 개시합니다. Sound constructor 에 유효한 URLRequest object를 건네주면, constructor 은 Sound.load() 를 호출합니다. Sound constructor 에 유효한 URLRequest object를 건네주지 않는 경우, 또는 null 값를 건네주는 경우에게만, 유저 자신으로 Sound.load() 를 호출할 필요가 있습니다.
Sound object로 load() 가 불려 간 후는, 그 Sound object에 다른 사운드 파일을 로드할 수 없습니다. 다른 사운드 파일을 로드하려면 , 새로운 Sound object를 작성합니다.
Sound.load() 를 호출할 수 없습니다. 상세한 것에 대하여는, 다음의 주제를 참조해 주세요.
stream:URLRequest — 외부의 MP3 파일을 지정하는 URL 입니다.
|
|
context:SoundLoaderContext (default = null) — Sound object의 버퍼로 MP3 데이터를 보관 유지하는 최소 시간 (밀리 세컨드 단위)입니다. Sound object는, 재생의 개시전, 및 네트워크 정지 후의 재생의 재개전에 적어도 이 대량의 데이터를 취득할 때까지 대기합니다. 디폴트치는 1000 밀리 세컨드 (1 초)입니다.
|
IOError — 이 로드의 실패 원인인 네트워크 에러입니다.
|
|
SecurityError — 신뢰되어 있지 않은 로컬 SWF 는 인터넷에의 접속이 허가되지 않습니다. 이것은, 네트워크 액세스가 허가된 로컬 SWF 파일, 또는 신뢰할 수 있는 SWF 파일로서 재분류하면 회피할 수 있는 경우가 있습니다.
|
| play | () | Methods |
public function play(startTime:Number = 0, loops:int = 0, sndTransform:SoundTransform = null):SoundChannel 사운드를 재생하는 SoundChannel object를 새롭게 작성합니다. 이 Methods는 SoundChannel object를 돌려줍니다. 이 object에 액세스 해, 사운드의 정지, 및 볼륨의 감시를 실시합니다. 볼륨의 제어, 빵, 밸런스의 설정을 실시하려면 , 사운드 채널에 할당할 수 있었던 SoundTransform object에 액세스 합니다.
ParametersstartTime:Number (default = 0) — 재생을 개시하는 초기 위치 (밀리 세컨드 단위)입니다.
|
|
loops:int (default = 0) — 사운드 채널이 재생을 정지하기 전에 사운드를 루프 재생하는 회수를 정의합니다.
|
|
sndTransform:SoundTransform (default = null) — 사운드 채널에 할당할 수 있었던 초기 SoundTransform object입니다.
|
SoundChannel —
사운드의 제어에 사용하는 SoundChannel object입니다. 이 Methods는, 사운드 카드가 없는 경우, 또는 사용할 수 있는 사운드 채널이 부족했을 경우는 null 를 돌려줍니다. 한 번에 사용할 수 있는 사운드 채널의 최대수는 32 채널입니다.
|
See also
| complete | event |
flash.events.Event
flash.events.Event.COMPLETE
데이터가 정상적으로 로드 되었을 때에 dispatch됩니다.
complete event object의 type property의 값을 정의합니다.
이 이벤트에는, 다음의 property가 있습니다.
| Property | Value |
|---|---|
bubbles | false |
cancelable | false 는, 캔슬하는 디폴트의 동작이 없는 것을 나타냅니다. |
currentTarget | event listener로 Event object를 액티브하게 처리하고 있는 object입니다. |
target | 로드가 완료한 네트워크 object입니다. target 는, 반드시 event listener를 등록한 표시 리스트내의 object라고는 할 수 없습니다. 현재 이벤트를 처리하고 있는 표시 리스트내의 object에 액세스 하려면 ,currentTarget property를 사용합니다. |
See also
| id3 | event |
flash.events.Event
flash.events.Event.ID3
MP3 사운드로 ID3 데이터를 사용할 수 있는 경우에, Sound object에 의해 dispatch됩니다.
id3 event object의 type property의 값을 정의합니다.
이 이벤트에는, 다음의 property가 있습니다.
| Property | Value |
|---|---|
bubbles | false |
cancelable | false 는, 캔슬하는 디폴트의 동작이 없는 것을 나타냅니다. |
currentTarget | event listener로 Event object를 액티브하게 처리하고 있는 object입니다. |
target | ID3 데이터가 현재 사용 가능한 MP3 를 로드하고 있는 Sound object입니다. target 는, 반드시 event listener를 등록한 표시 리스트내의 object라고는 할 수 없습니다. 현재 이벤트를 처리하고 있는 표시 리스트내의 object에 액세스 하려면 ,currentTarget property를 사용합니다. |
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 | 에러 메세지로서 표시되는 텍스트입니다. |
See also
| open | event |
flash.events.Event
flash.events.Event.OPEN
로드 조작이 개시했을 때에 dispatch됩니다.
open event object의 type property의 값을 정의합니다.
이 이벤트에는, 다음의 property가 있습니다.
| Property | Value |
|---|---|
bubbles | false |
cancelable | false 는, 캔슬하는 디폴트의 동작이 없는 것을 나타냅니다. |
currentTarget | event listener로 Event object를 액티브하게 처리하고 있는 object입니다. |
target | 접속을 오픈한 네트워크 object입니다. |
See also
| progress | event |
flash.events.ProgressEvent
flash.events.ProgressEvent.PROGRESS
로드 처리를 실행중에 데이터를 수신했을 때에 dispatch됩니다.
progress event object의 type property의 값을 정의합니다.
이 이벤트에는, 다음의 property가 있습니다.
| Property | Value |
|---|---|
bubbles | false |
bytesLoaded | listener가 이벤트를 처리하고 있을 때 로드 된 아이템수 또는 바이트수입니다. |
bytesTotal | 로드 프로세스가 성공했을 경우에 최종적으로 로드 되는 아이템 또는 바이트의 총수입니다. |
cancelable | false 는, 캔슬하는 디폴트의 동작이 없는 것을 나타냅니다. |
currentTarget | event listener로 Event object를 액티브하게 처리하고 있는 object입니다. |
target | 진행 상황을 리포트하는 네트워크 object입니다. |
See also
package {
import flash.display.Sprite;
import flash.events. *;
import flash.media.Sound;
import flash.media.SoundChannel;
import flash.net.URLRequest;
public class SoundExample extends Sprite {
private var url:String = "MySound.mp3";
private var song:SoundChannel;
public function SoundExample() {
var request:URLRequest = new URLRequest(url);
var soundFactory:Sound = new Sound();
soundFactory.addEventListener(Event.COMPLETE, completeHandler);
soundFactory.addEventListener(Event.ID3, id3Handler);
soundFactory.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
soundFactory.addEventListener(ProgressEvent.PROGRESS, progressHandler);
soundFactory.load(request);
song = soundFactory.play();
}
private function completeHandler(event:Event) :void {
trace("completeHandler: " + event);
}
private function id3Handler(event:Event) :void {
trace("id3Handler: " + event);
}
private function ioErrorHandler(event:Event) :void {
trace("ioErrorHandler: " + event);
}
private function progressHandler(event:ProgressEvent) :void {
trace("progressHandler: " + event);
}
}
}
코멘트가 추가되었을 경우, 메일로 받기. | 코멘트 리포트
현재의 페이지: http://flexdocs.kr/docs/flex2/langref/flash/media/Sound.html