패키지 | flash.media |
클래스 | public final class AudioDeviceManager |
상속 | AudioDeviceManager EventDispatcher Object |
언어 버전: | ActionScript 3.0 |
런타임 버전: | Flash Player 27, AIR 28 - (Desktop) |
한 AIR 응용 프로그램에서 선택한 오디오 장치가 다른 AIR 응용 프로그램 또는 Flash Player 인스턴스의 오디오에 영향을 주지 않습니다.
개인 정보 보호 제한
AudioDeviceManager API는 UIA(User Invoked Action) 제한을 받습니다. 즉, 일부 사용자 상호 작용으로만 호출할 수 있습니다. 이 API가 사용자 상호 작용에 의해 호출되지 않으면 Flash Player에서 오류 코드가 2176으로 설정된 런타임 오류 IllegalOperationError가 발생합니다. AIR 응용 프로그램의 경우 네트워크를 통해 호스팅되는 외부 SWF/HTML을 로드할 때 UIA 검사가 적용됩니다. 외부에서 로드된 SWF/HTML이 UIA 없이 오디오 출력 장치를 변경하려고 하면 AIR 런타임에서 오류 코드 2176의 IllegalOperationError 오류가 발생합니다.
AudioDeviceManager 인스턴스 액세스
AudioDeviceManager 인스턴스는 단일 객체이며 Flash Player의 오디오 출력 설정과 동기화됩니다. 클라이언트는 이 단일 객체에 대한 참조를 얻으려면 AudioDeviceManager.audioDeviceManager
를 사용해야 합니다.
시스템에서 사용할 수 있는 현재 오디오 장치 가져오기
시스템에서 사용 가능한 모든 오디오 출력 장치를 가져오려면 AudioDeviceManager.deviceNames
를 사용합니다.
현재 선택된 오디오 장치 가져오기
현재 사용되는 오디오 출력 장치의 인덱스를 찾으려면 AudioDeviceManager.selectedDeviceIndex
를 사용합니다. 이 인덱스를 사용하여 장치 목록이 AudioDeviceManager.deviceNames
에서 반환한 장치 이름을 찾습니다.
오디오 출력 장치 선택
AudioDeviceManager.selectedDeviceIndex
를 다른 값으로 설정하면 해당 장치가 현재 선택된 오디오 재생 장치가 될 수 있습니다.
오디오 출력 변경 모니터링
사용자가 Flash Player의 설정 UI 또는 컨텐츠 설정 AudioDeviceManager.selectedDeviceIndex
에서 다른 장치를 선택하거나 오디오 장치가 시스템에 추가되거나 시스템에서 제거되면 오디오 출력 장치가 변경될 수 있습니다. 클라이언트 응용 프로그램이 리스너를 AudioOutputChangeEvent.AUDIO_OUTPUT_CHANGE
이벤트에 등록하여 오디오 출력 장치가 변경될 때 알림을 받을 수 있습니다. 이벤트 객체의 reason
속성은 이러한 변경이 트리거되는 방식을 나타냅니다. reason
속성에는 두 가지 값을 지정할 수 있습니다. AudioOutputChangeReason.USER_SELECTION
은 사용자가 Flash Player의 설정 UI 또는 컨텐츠 설정 AudioDeviceManager.selectedDeviceIndex
를 통해 다른 오디오 출력 장치를 선택함을 나타냅니다.. AudioOutputChangeReason.DEVICE_CHANGE
는 오디오 출력 장치가 시스템에 추가되거나 시스템에서 제거되었음을 나타냅니다.
속성 | 정의 주체 | ||
---|---|---|---|
audioDeviceManager : AudioDeviceManager [정적] [읽기 전용]
AudioDeviceManager 객체의 단일 인스턴스입니다. | AudioDeviceManager | ||
constructor : Object
지정된 객체 인스턴스의 클래스 객체 또는 생성자 함수에 대한 참조입니다. | Object | ||
deviceNames : Array [읽기 전용]
사용 가능한 모든 오디오 출력 장치의 이름을 포함하는 문자열 배열입니다. | AudioDeviceManager | ||
isSupported : Boolean [정적] [읽기 전용]
AudioDeviceManager를 사용할 수 있는지 여부입니다. | AudioDeviceManager | ||
selectedDeviceIndex : int
현재 선택된 오디오 출력 장치의 인덱스로, AudioDeviceManager.deviceNames를 통해 반환된 배열에 반영됩니다. | AudioDeviceManager |
이벤트 | 요약 | 정의 주체 | ||
---|---|---|---|---|
[브로드캐스트 이벤트] Flash Player 또는 AIR 응용 프로그램이 운영 체제 포커스를 얻어 활성화될 때 전달됩니다. | EventDispatcher | |||
다음과 같은 이유로 오디오 출력 장치가 변경될 때 전달됩니다. (1) 사용자 선택 - 사용자가 Flash Player의 설정 UI 또는 컨텐츠 설정 AudioDeviceManager.selectedDeviceIndex를 통해 선택합니다. (2) 장치 변경 - 오디오 장치가 시스템에서 추가/제거됩니다. | AudioDeviceManager | |||
[브로드캐스트 이벤트] Flash Player 또는 AIR 응용 프로그램이 운영 체제 포커스를 잃고 비활성화될 때 전달됩니다. | EventDispatcher |
audioDeviceManager | 속성 |
audioDeviceManager:AudioDeviceManager
[읽기 전용] AudioDeviceManager 객체의 단일 인스턴스입니다.
구현
public static function get audioDeviceManager():AudioDeviceManager
deviceNames | 속성 |
deviceNames:Array
[읽기 전용]
사용 가능한 모든 오디오 출력 장치의 이름을 포함하는 문자열 배열입니다. 이 배열은 AudioDeviceManager.deviceNames.length
속성을 통해 시스템에서 각 오디오 출력 장치의 0부터 시작하는 인덱스와 오디오 출력 장치의 수를 제공합니다. 자세한 내용은 Array 클래스 항목을 참조하십시오. 이 장치 이름 목록은 오디오 출력 설정의 목록과 동일합니다.
Chrome 브라우저 참고 사항: Chrome은 오디오 출력 및 오디오 입력이 동일한 권한을 공유하고 사용자에게 오디오 입력 권한 경고만 표시되므로 오디오 출력 장치를 열거하기 위해 사용자가 마이크 액세스 권한을 부여해야 합니다.
구현
public function get deviceNames():Array
isSupported | 속성 |
selectedDeviceIndex | 속성 |
audioOutputChange | 이벤트 |
flash.events.AudioOutputChangeEvent
속성 AudioOutputChangeEvent.type =
flash.events.AudioOutputChangeEvent.AUDIO_OUTPUT_CHANGE
언어 버전: | ActionScript 3.0 |
런타임 버전: | Flash Player 27, AIR 28 - (Desktop) |
다음과 같은 이유로 오디오 출력 장치가 변경될 때 전달됩니다. (1) 사용자 선택 - 사용자가 Flash Player의 설정 UI 또는 컨텐츠 설정 AudioDeviceManager.selectedDeviceIndex
를 통해 선택합니다. (2) 장치 변경 - 오디오 장치가 시스템에서 추가/제거됩니다.
변경 이유를 파악하려면 이 이벤트의 reason
속성을 확인합니다. 가능한 이유는 AudioOutputChangeReason.USER_SELECTION
AudioOutputChangeReason.DEVICE_CHANGE
입니다.
AudioOutputchangeEvent
이벤트 객체의 type
속성 값을 정의합니다.
Tue Jun 12 2018, 03:17 PM Z