본문 바로가기
웹 오디오 프로그래밍

[Web Audio API #1] 웹에서 오디오 다루기

by 영바이트 2021. 6. 16.

 

웹 페이지 혹은 웹 서비스에서 음원을 다루기 위해서 <bgsound> 태그, 플래시 플레이어 등을 사용했었다. 이들 방법들은 그나마 음원을 재생하는 것 정도에 기능이 머물렀기 때문에 활용 범위도 넓지 못했고 이제는 더 이상 사용되지도 않는다.

 

2010년을 전후로 웹 오디오 표준(Web Audio API)이 논의되기 시작하였고 2011년 12월에는 첫 번째 표준안(draft)이 발표된다. 웹 오디오 표준의 정식 명칭은 Web Audio API이고 Web Audio API는 <bgsound> 태그, 플래시 플레이어 등 기존 방법들과 비교하면 아래와 같은 특징들을 갖는다.

 

출처: https://developer.mozilla.org/ko/docs/Web/API/Web_Audio_API/Using_Web_Audio_API

 

• 모든 브라우저에서 동일하게 동작한다(Cross platform).

• 오디오 믹싱mixing, 필터링filtering 등 다양한 기능을 갖춘다(Advanced functionality).

• 사용자와 상호작용할 수 있도록 한다(Improved interactivity).

 

Web Audio API는 자바스크립트JavaScript를 이용해서 사용할 수 있다(내부적인 구현은 빠른 처리를 위해 C언어로 되어 있다). 현재 Chrome, Edge, Firefox, Opera, Safari 등 주요 웹 브라우서에서 동작할 정도로 안정적으로 자리잡았다.

 

사실 오디오는 우리가 가장 빨리 만들어 낼 수 있는 컨텐츠다. 말하는 것이 글을 쓰거나 그림을 그리는 것과는 비교되지 않을 정도로 빠르다. 이미 Clubhouse, Twitter spaces 등 오디오를 주된 메시지 전달 수단으로 하는 SNS가 생겨났고 늘어가고 있으며, AI를 이용한 궁극적인 서비스 모델의 하나로 음성등 오디오를 기반으로하는 서비스들이 나타날 것이다.

 

앞으로 웹 브라우저만 있으면 쉽게 이용할 수 있는 오디오 기반 서비스나 앱을 만들기 위한 기초인 web audio API에 대해 정리하면서 살펴보고자 한다.

 

댓글