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

Sound 클래스를 사용하면, 어플리케이션내의 사운드를 처리할 수가 있습니다. Sound 클래스를 사용하면, 새로운 Sound object의 작성, 외부 MP3 파일의 object에의 로드와 재생을 할 수 있습니다. 또, 사운드 스트림(Stream)을 닫거나 사운드 관련의 데이터 (스트림(Stream) 및 ID3 메타데이타의 바이트수등의 정보)에 액세스 할 수가 있습니다. 사운드의 사운드 소스, SoundChannel object 또는 Microphone object를 사용하면, 사운드를 상세하게 제어할 수 있습니다. 또, 컴퓨터의 스피커에의 사운드 출력을 제어하는 SoundTransform 클래스의 property를 사용할 수도 있습니다.

SWF 파일에 포함된 사운드를 제어하려면 , SoundMixer 클래스의 property를 사용합니다.

메모 :ActionScript 3.0 의 Sound API 는, ActionScript 2.0 과는 다릅니다. ActionScript 3.0 에서는, 취득해 계층내에 배치한 Sound object의 property를 제어할 수가 없습니다.

이 클래스를 사용할 때는, Flash Player 시큐러티 모델을 고려해 주세요.

상세한 것에 대하여는, 다음의 주제를 참조해 주세요.

View the examples

See also

Microphone
SoundChannel
SoundMixer
SoundTransform


Public property
 property정의
  bytesLoaded : uint
[read-only] 이 Sound object로 현재 이용할 수 있는 데이터의 바이트수를 돌려줍니다.
Sound
  bytesTotal : int
[read-only] 이 Sound object의 합계 바이트수를 돌려줍니다.
Sound
 Inheritedconstructor : Object
특정의 object 인스턴스의 클래스 object 또는 constructor    함수에의 참조입니다.
Object
  id3 : ID3Info
[read-only] MP3 파일의 일부인 메타데이타에 대한 액세스를 제공합니다.
Sound
  isBuffering : Boolean
[read-only] 외부 MP3 파일의 버퍼링 상태를 돌려줍니다.
Sound
  length : Number
[read-only] 현재의 사운드의 계속 시간을 나타내는 밀리 세컨드수입니다.
Sound
 Inheritedprototype : Object
[static] 클래스 또는 함수 object의 prototype object에의 참조입니다.
Object
  url : String
[read-only] 사운드가 로드 되는 URL 입니다.
Sound
Public Methods
 Methods정의
  Sound (stream:URLRequest = null, context:SoundLoaderContext = null)
새로운 Sound object를 작성합니다.
Sound
 InheritedaddEventListener (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
 InheriteddispatchEvent (event:Event ):Boolean
이벤트를 event 플로우(flow)에 dispatch합니다.
EventDispatcher
 InheritedhasEventListener (type:String ):Boolean
EventDispatcher object에, 특정의 event 타입에 대해서 등록된 listener가 있을지 어떨지를 확인합니다.
EventDispatcher
 InheritedhasOwnProperty (name:String ):Boolean
object로 지정된 property가 정의되고 있는지 어떤지를 나타냅니다.
Object
 InheritedisPrototypeOf (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
 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
이벤트
 이벤트일람정의
  complete 데이터가 정상적으로 로드 되었을 때에 dispatch됩니다. Sound
  id3 MP3 사운드로 ID3 데이터를 사용할 수 있는 경우에, Sound object에 의해 dispatch됩니다. Sound
  ioError 입출력 에러가 발생해 로드 조작이 실패했을 때에 dispatch됩니다. Sound
  open 로드 조작이 개시했을 때에 dispatch됩니다. Sound
  progress 로드 처리를 실행중에 데이터를 수신했을 때에 dispatch됩니다. Sound
property의 상세
bytesLoadedproperty
bytesLoaded:uint   [read-only]

이 Sound object로 현재 이용할 수 있는 데이터의 바이트수를 돌려줍니다. 이것은 통상, 외부로부터 로드하는 파일에만 사용합니다.

Implements
    public function get bytesLoaded():uint
bytesTotalproperty 
bytesTotal:int   [read-only]

이 Sound object의 합계 바이트수를 돌려줍니다.

Implements
    public function get bytesTotal():int
id3property 
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 시큐러티 모델을 고려해 주세요.

상세한 것에 대하여는, 다음의 주제를 참조해 주세요.

Implements
    public function get id3():ID3Info

See also

isBufferingproperty 
isBuffering:Boolean   [read-only]

외부 MP3 파일의 버퍼링 상태를 돌려줍니다. 값이 true 의 경우, 재생은 현재 중단되어 object가 데이터를 대기하고 있습니다.

Implements
    public function get isBuffering():Boolean
lengthproperty 
length:Number   [read-only]

현재의 사운드의 계속 시간을 나타내는 밀리 세컨드수입니다.

Implements
    public function get length():Number
urlproperty 
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 의 동작과 같습니다.

Implements
    public function get url():String

See also

constructor    의 상세
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를 작성합니다.

Parameters
stream:URLRequest (default = null) — 외부의 MP3 파일을 지정하는 URL 입니다.
 
context:SoundLoaderContext (default = null) — Sound object의 버퍼로 MP3 데이터를 보관 유지하는 최소 시간 (밀리 세컨드 단위)입니다. Sound object는, 재생의 개시전, 및 네트워크 정지 후의 재생의 재개전에 적어도 이 대량의 데이터를 취득할 때까지 대기합니다. 디폴트치는 1000 밀리 세컨드 (1 초)입니다.
Methods의 상세
close()Methods
public function close():void

스트림(Stream)을 닫아, 데이터의 다운로드를 중지합니다. close() Methods의 호출 후는, 스트림(Stream)로부터 데이터를 읽어들이지 않습니다.


Throws
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를 작성합니다.

이 Methods를 사용할 때는, Flash Player 시큐러티 모델을 고려해 주세요.

상세한 것에 대하여는, 다음의 주제를 참조해 주세요.

Parameters
stream:URLRequest — 외부의 MP3 파일을 지정하는 URL 입니다.
 
context:SoundLoaderContext (default = null) — Sound object의 버퍼로 MP3 데이터를 보관 유지하는 최소 시간 (밀리 세컨드 단위)입니다. Sound object는, 재생의 개시전, 및 네트워크 정지 후의 재생의 재개전에 적어도 이 대량의 데이터를 취득할 때까지 대기합니다. 디폴트치는 1000 밀리 세컨드 (1 초)입니다.

Throws
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에 액세스 합니다.

Parameters
startTime:Number (default = 0) — 재생을 개시하는 초기 위치 (밀리 세컨드 단위)입니다.
 
loops:int (default = 0) — 사운드 채널이 재생을 정지하기 전에 사운드를 루프 재생하는 회수를 정의합니다.
 
sndTransform:SoundTransform (default = null) — 사운드 채널에 할당할 수 있었던 초기 SoundTransform object입니다.

반환값
SoundChannel — 사운드의 제어에 사용하는 SoundChannel object입니다. 이 Methods는, 사운드 카드가 없는 경우, 또는 사용할 수 있는 사운드 채널이 부족했을 경우는 null 를 돌려줍니다. 한 번에 사용할 수 있는 사운드 채널의 최대수는 32 채널입니다.

See also

이벤트의 상세
completeevent 
Event object type: flash.events.Event
Event.type property = flash.events.Event.COMPLETE

데이터가 정상적으로 로드 되었을 때에 dispatch됩니다.

complete event object의 type property의 값을 정의합니다.

이 이벤트에는, 다음의 property가 있습니다.

PropertyValue
bubblesfalse
cancelablefalse 는, 캔슬하는 디폴트의 동작이 없는 것을 나타냅니다.
currentTargetevent listener로 Event object를 액티브하게 처리하고 있는 object입니다.
target로드가 완료한 네트워크 object입니다. target 는, 반드시 event listener를 등록한 표시 리스트내의 object라고는 할 수 없습니다. 현재 이벤트를 처리하고 있는 표시 리스트내의 object에 액세스 하려면 ,currentTarget property를 사용합니다.

See also

id3event  
Event object type: flash.events.Event
Event.type property = flash.events.Event.ID3

MP3 사운드로 ID3 데이터를 사용할 수 있는 경우에, Sound object에 의해 dispatch됩니다.

id3 event object의 type property의 값을 정의합니다.

이 이벤트에는, 다음의 property가 있습니다.

PropertyValue
bubblesfalse
cancelablefalse 는, 캔슬하는 디폴트의 동작이 없는 것을 나타냅니다.
currentTargetevent listener로 Event object를 액티브하게 처리하고 있는 object입니다.
targetID3 데이터가 현재 사용 가능한 MP3 를 로드하고 있는 Sound object입니다. target 는, 반드시 event listener를 등록한 표시 리스트내의 object라고는 할 수 없습니다. 현재 이벤트를 처리하고 있는 표시 리스트내의 object에 액세스 하려면 ,currentTarget property를 사용합니다.

See also

ioErrorevent  
Event object type: flash.events.IOErrorEvent
IOErrorEvent.type property = flash.events.IOErrorEvent.IO_ERROR

입출력 에러가 발생해 로드 조작이 실패했을 때에 dispatch됩니다.

ioError event object의 type property의 값을 정의합니다.

이 이벤트에는, 다음의 property가 있습니다.

PropertyValue
bubblesfalse
cancelablefalse 는, 캔슬하는 디폴트의 동작이 없는 것을 나타냅니다.
currentTargetevent listener로 Event object를 액티브하게 처리하고 있는 object입니다.
target입출력 에러가 발생한 네트워크 object입니다.
text에러 메세지로서 표시되는 텍스트입니다.

See also

openevent  
Event object type: flash.events.Event
Event.type property = flash.events.Event.OPEN

로드 조작이 개시했을 때에 dispatch됩니다.

open event object의 type property의 값을 정의합니다.

이 이벤트에는, 다음의 property가 있습니다.

PropertyValue
bubblesfalse
cancelablefalse 는, 캔슬하는 디폴트의 동작이 없는 것을 나타냅니다.
currentTargetevent listener로 Event object를 액티브하게 처리하고 있는 object입니다.
target접속을 오픈한 네트워크 object입니다.

See also

progressevent  
Event object type: flash.events.ProgressEvent
ProgressEvent.type property = flash.events.ProgressEvent.PROGRESS

로드 처리를 실행중에 데이터를 수신했을 때에 dispatch됩니다.

progress event object의 type property의 값을 정의합니다.

이 이벤트에는, 다음의 property가 있습니다.

PropertyValue
bubblesfalse
bytesLoadedlistener가 이벤트를 처리하고 있을 때 로드 된 아이템수 또는 바이트수입니다.
bytesTotal로드 프로세스가 성공했을 경우에 최종적으로 로드 되는 아이템 또는 바이트의 총수입니다.
cancelablefalse 는, 캔슬하는 디폴트의 동작이 없는 것을 나타냅니다.
currentTargetevent listener로 Event object를 액티브하게 처리하고 있는 object입니다.
target진행 상황을 리포트하는 네트워크 object입니다.

See also

Examples

다음의 코드의 예에서는, MP3 파일이 열려 재생되면 발생하는 사운드 이벤트에 관한 정보가 표시됩니다. 이 예를 실행하려면 , MySound.mp3 파일을 SWF 파일과 같은 디렉토리에 배치합니다.
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