BaseAudioContext - Web API | MDN
속성
BaseAudioContext.audioWorkletExperimental 읽기 전용 보안 컨텍스트-
AudioWorklet객체를 반환하는데, 이는AudioWorkletProcessor인터페이스를 구현하는 JavaScript 코드가 오디오 데이터를 처리하기 위해 백그라운드에서 실행되는AudioNode들을 생성하고 관리하는 데 쓰일 수 있습니다. BaseAudioContext.currentTime읽기 전용-
스케쥴링에 사용되는 초 단위로 계속 증가하는 하드웨어 시간을 나타내는 double을 반환합니다. 이는
0에서 시작합니다. BaseAudioContext.destination읽기 전용-
컨텍스트 내의 모든 오디오의 최종 도착지를 나타내는
AudioDestinationNode를 반환합니다. 이것은 오디오를 렌더링하는 장치로 생각될 수 있습니다. BaseAudioContext.listener읽기 전용-
3D 공간화에 사용되는
AudioListener객체를 반환합니다. BaseAudioContext.sampleRate읽기 전용-
이 컨텍스트 내의 모든 노드에 의해 사용되는 샘플 레이트(초당 샘플)를 나타내는 float을 반환합니다.
AudioContext의 샘플 레이트는 변경될 수 없습니다. BaseAudioContext.state읽기 전용-
AudioContext의 현재 상태를 반환합니다.
이벤트 처리기
statechange-
statechange 유형의 이벤트가 발생되었을 때 실행되는 이벤트 처리기입니다. 이것은 상태 변화 메서드(
AudioContext.suspend,AudioContext.resume, 또는AudioContext.close) 중 하나의 호출에 기인해AudioContext의 상태가 변경되었을 때 발생됩니다.
메서드
또한 EventTarget 인터페이스로부터의 메서드를 구현합니다.
BaseAudioContext.createAnalyser()-
오디오 시간과 주파수 데이터를 드러내고 데이터 시각화를 생성하는 데 사용될 수 있는
AnalyserNode를 생성합니다. BaseAudioContext.createBiquadFilter()-
high-pass, low-pass, band-pass와 같은 몇몇 다른 흔한 필터 유형으로 설정 가능한 2차 필터를 나타내는
BiquadFilterNode를 생성합니다. BaseAudioContext.createBuffer()-
데이터를 넣거나
AudioBufferSourceNode를 통해 재생될 수 있는 새로운 빈AudioBuffer객체를 생성합니다. BaseAudioContext.createBufferSource()-
AudioBuffer객체 내부에 포함된 오디오 데이터를 재생하거나 조작하기 위해 사용될 수 있는AudioBufferSourceNode를 생성합니다.AudioBuffer들은AudioContext.createBuffer()를 사용해 생성되거나 성공적으로 오디오 트랙을 디코드했을 때AudioContext.decodeAudioData()에 의해 반환됩니다. BaseAudioContext.createConstantSource()-
샘플이 모두 같은 값을 가지고 있는 모노럴의(한 채널의) 사운드 신호를 계속적으로 출력하는 오디오 소스인
ConstantSourceNode객체를 생성합니다. BaseAudioContext.createChannelMerger()-
다수의 오디오 스트림으로부터 하나의 오디오 스트림에 채널을 결합하기 위해 사용되는
ChannelMergerNode를 생성합니다. BaseAudioContext.createChannelSplitter()-
오디오 스트림의 각 채널에 접근하고 별도로 그것들을 처리하기 위해 사용되는
ChannelSplitterNode를 생성합니다. BaseAudioContext.createConvolver()-
오디오 그래프에 잔향(reverberation) 효과와 같은 콘볼루션 이펙트를 적용하기 위해 사용될 수 있는
ConvolverNode를 생성합니다. BaseAudioContext.createDelay()-
들어오는 오디오 신호를 지연시키기 위해 사용되는
DelayNode를 생성합니다. 이 노드는 Web Audio API 그래프에서 피드백 루프를 생성하는 데 유용합니다. BaseAudioContext.createDynamicsCompressor()-
음향 압축(acoustic compression)을 오디오 신호에 적용하기 위해 사용될 수 있는
DynamicsCompressorNode를 생성합니다. BaseAudioContext.createGain()-
오디오 그래프의 전반적인 볼륨을 제어하기 위해 사용될 수 있는
GainNode를 생성합니다. BaseAudioContext.createIIRFilter()-
몇몇 다른 흔한 필터 유형으로 설정 가능한 2차 필터를 나타내는
IIRFilterNode를 생성합니다. BaseAudioContext.createOscillator()-
주기적인 파형을 나타내는 소스인
OscillatorNode를 생성합니다. 이것은 기본적으로 음색을 생성합니다. BaseAudioContext.createPanner()-
들어오는 오디오 스트림을 3D 공간에서 공간화하기 위해 사용되는
PannerNode를 생성합니다. BaseAudioContext.createPeriodicWave()-
OscillatorNode의 출력을 결정하기 위해 사용될 수 있는 주기적인 파형을 정의하는 데 쓰이는PeriodicWave를 생성합니다. BaseAudioContext.createScriptProcessor()지원이 중단되었습니다-
JavaScript를 통한 직접적인 오디오 프로세싱을 위해 사용될 수 있는
ScriptProcessorNode를 생성합니다. BaseAudioContext.createStereoPanner()-
오디오 소스에 스테레오 패닝을 적용하기 위해 사용될 수 있는
StereoPannerNode를 생성합니다. BaseAudioContext.createWaveShaper()-
비선형 변형(non-linear distortion) 효과를 구현하기 위해 사용되는
WaveShaperNode를 생성합니다. BaseAudioContext.decodeAudioData()-
비동기적으로
ArrayBuffer에 포함된 오디오 파일 데이터를 디코드합니다. 이 경우, ArrayBuffer는 보통arraybuffer에responseType을 설정한 후XMLHttpRequest의response특성으로부터 로딩됩니다. 이 메서드는 오디오 파일의 조각이 아니라, 오직 완전한 파일에서만 작동합니다.
예제
기본적인 오디오 컨텍스트 선언
js
const audioContext = new AudioContext();
크로스 브라우저를 위한 다른 형태
js
const AudioContext = window.AudioContext || window.webkitAudioContext;
const audioContext = new AudioContext();
const oscillatorNode = audioContext.createOscillator();
const gainNode = audioContext.createGain();
const finish = audioContext.destination;
명세
| Specification |
|---|
| Web Audio API # BaseAudioContext |