Voice

    [ Web Audio API ] Introduction

    [ Web Audio API ] Introduction

    🔴 Web Audio API 자바스크립트로 오디오 소스에 변화를 줄 수 있는 시스템이다. 기본적인 음원 로딩, 재생, 정리 뿐만 아니라 패닝, 디스토션, 딜레이 등 여러 가지 음향 효과를 추가할 수 있고, 파형 막대를 그리는 등 음원 데이터의 시각화도 손쉽게 가능하다. 🟠 동작 과정 Web Audio API의 모든 기능은 AudioContext 객체를 생성하면서 시작된다. AudioContext 객체는 내부에 여러 개의 Audio Node들을 가질 수 있다. 여기서 Audio Node들은 각각 하나의 역할을 수행하는 모듈들이다. 예를 들어 아래와 같은 노드들이 있다고 하자. GainNode : 음원의 볼륨 크기를 조절 PannerNode : 음원에 패닝 효과를 적용하고 조절 AnalyserNode : 음..

    [ Voice ] PCM

    [ Voice ] PCM

    아날로그 신호와 디지털 신호 💬 우리가 귀로 듣는 소리는 기본적으로 공기를 타고 전파되는 아날로그 파형이다. 아날로그 신호는 시간에 따라 변화하는 모양이 끈임없이 자연스럽게 이어지게 된다. 💬 이를 디지털 신호로 바꿀 때에는 매시간 변하는 신호의 모양을 순간적으로 포착해서 저장하게 된다. 디지털로 저장되는 동영상과 음성은 그렇게 찰나의 순간을 포착한 상태의 연속으로 이루어져 있다. 💬 이에 따라 디지털로 저장된 사운드를 그대로 재생하면 파형에 계단 현상이 생기게 된다. 그래서 적절한 필터를 거친 디지털 소스의 파형은 원래의 아날로그 신호처럼 매끈하다. PCM이란? 💬 PCM = Pulse-code modulation = 펄스 부호 변조 💬 아날로그 음성 신호를 0과 1의 펄스 신호로 바꾸어 기록하는 방식..