From 2a6500fa9b98c7b57305b14744fea66a58724291 Mon Sep 17 00:00:00 2001 From: logic-finder <83723320+logic-finder@users.noreply.github.com> Date: Sun, 18 Jul 2021 23:40:32 +0900 Subject: [ko] Work done for 'createPeriodicWave()' article. (#1578) * Work done for 'createPeriodicWave()' article. * translation modified Co-authored-by: hochan Lee * translation modified Co-authored-by: hochan Lee * translation modified Co-authored-by: hochan Lee Co-authored-by: hochan Lee --- .../baseaudiocontext/createperiodicwave/index.html | 155 +++++++++++++++++++++ 1 file changed, 155 insertions(+) create mode 100644 files/ko/web/api/baseaudiocontext/createperiodicwave/index.html (limited to 'files/ko') diff --git a/files/ko/web/api/baseaudiocontext/createperiodicwave/index.html b/files/ko/web/api/baseaudiocontext/createperiodicwave/index.html new file mode 100644 index 0000000000..ac48d4576c --- /dev/null +++ b/files/ko/web/api/baseaudiocontext/createperiodicwave/index.html @@ -0,0 +1,155 @@ +--- +title: BaseAudioContext.createPeriodicWave() +slug: Web/API/BaseAudioContext/createPeriodicWave +tags: + - API + - Audio + - AudioContext + - BaseAudioContext + - Media + - Method + - Reference + - Web Audio API + - createPeriodicWave +browser-compat: api.BaseAudioContext.createPeriodicWave +--- +

{{ APIRef("Web Audio API") }}

+ +

{{ domxref("BaseAudioContext") }} 인터페이스의 createPeriodicWave() 메서드는 {{domxref("PeriodicWave")}}를 생성하기 위해 사용되는데, 이는 {{ domxref("OscillatorNode") }}의 출력을 형성하기 위해 사용될 수 있는 주기적인 파형을 정의하기 위해 사용됩니다.

+ +

문법

+ +
var wave = AudioContext.createPeriodicWave(real, imag[, constraints]);
+ +

반환

+ +

{{domxref("PeriodicWave")}}.

+ +

매개변수

+ +
+
real
+
코사인 항의 배열 (전통적으로 A 항).
+
imag
+
사인 항의 배열 (전통적으로 B 항).
+
+ +

realimag 배열은 같은 길이를 가져야만 합니다. 그렇지 않으면 오류가 발생됩니다.

+ +
+
constraints {{optional_inline}}
+
정규화(normalization)가 비활성화되어야 하는지를 명시하는 dictionary 객체입니다 (만약 명시되지 않으면, 기본적으로 정규화는 활성화 됩니다.) 이것은 하나의 프로퍼티를 취합니다: +
    +
  • disableNormalization: 만약 true로 설정되면, 정규화는 주기파에 대해 비활성화 됩니다. 기본값은 false입니다.
  • +
+
+
+ +
+

만약 정규화되면, 결과 파동은 최고 절대값(maximum absolute peak value) 1을 가지게 됩니다.

+
+ +

예제

+ +

다음의 예제는 단순한 사인파를 포함하는 {{domxref("PeriodicWave")}} 객체를 생성하기 위한 createPeriodicWave()의 간단한 사용을 보여줍니다.

+ +
var real = new Float32Array(2);
+var imag = new Float32Array(2);
+var ac = new AudioContext();
+var osc = ac.createOscillator();
+
+real[0] = 0;
+imag[0] = 0;
+real[1] = 1;
+imag[1] = 0;
+
+var wave = ac.createPeriodicWave(real, imag, {disableNormalization: true});
+
+osc.setPeriodicWave(wave);
+
+osc.connect(ac.destination);
+
+osc.start();
+osc.stop(2);
+ +

이는 정의에 의해 오직 기본음을 포함하는 소리가 사인파이기 때문에 작동합니다.

+ +

여기서, 우리는 두 값과 함께 PeriodicWave를 생성합니다. 첫번째 값은 oscillator가 시작하는 값인 DC 오프셋입니다. 여기서 0은 좋은데, 왜냐하면 우리는 곡선을 [-1.0; 1.0] 범위의 중간에서 시작하기를 원하기 때문입니다.

+ +

두번째와 그 다음의 값은 사인과 코사인 요소입니다. 여러분은 이것을 시간 도메인 값으로부터 주파수 도메인 값을 얻는 푸리에 변환의 결과로 생각할 수 있습니다. 여기서, createPeriodicWave()와 함께, 여러분은 주파수를 명시하고, 브라우저는 oscillator의 주파수에 대한 시간 도메인 버퍼를 얻기 위해 역 푸리에 변환을 수행합니다. 여기서, 우리는 오직 기본음의 전체 볼륨 (1.0)에서의 한 요소만을 설정했으므로, 우리는 사인파를 얻습니다.

+ +

푸리에 변환의 계수는 오름차순으로 주어져야만 하고 + (예:  + + + + ( + + a + + + b + i + + ) + + + e + i + + , + + ( + + c + + + d + i + + ) + + + e + + 2 + i + + + , + + ( + + f + + + g + i + + ) + + + e + + 3 + i + + + + \left(a+bi\right)e^{i} , \left(c+di\right)e^{2i} , + \left(f+gi\right)e^{3i}    + + etc.) 양이거나 음일 수 있습니다. 수동으로 이러한 계수들을 얻는 간단한 방법은 (최고의 방법은 아니지만) 그래프 계산기를 사용하는 것입니다.

+ +

Specifications

+ +{{Specifications}} + +

Browser compatibility

+ +

{{Compat}}

+ +

See also

+ + -- cgit v1.2.3-54-g00ecf