수년간 인터넷 음성은 음악을 잘 처리하지 못하는 음성 최적화 코덱을 사용했고, 음악 코덱은 음성에 비트를 낭비했다. IETF의 Internet Wideband Audio Codec 워킹 그룹은 6 kbit/s 협대역 음성부터 고품질 스테레오 음악까지 아우르는 대화형 오디오용 단일 코덱을 만들고자 했다.

그 결과물인 Opus는 Skype의 SILK 코덱과 Xiph.Org의 CELT 코덱 기술을 하나의 하이브리드로 합쳤으며, 2012년 9월 IETF 표준 트랙에서 RFC 6716으로 정의되었다. 이 코덱은 완전히 개방되어 있고 로열티가 없으며, 최신 참조 구현이 모든 사람에게 제공된다.

결정적인 설계 선택은 하이브리드 자체였다. 하나의 비트스트림 안에 음성 모드와 음악 모드가 있다는 것은 하나의 코덱이 VoIP, 화상 회의, 게임 내 채팅, 스트리밍을 모두 담당할 수 있다는 뜻이었다. IETF가 Opus를 WebRTC의 필수 코덱으로 지정하자 모든 브라우저 기반 통화에 Opus가 탑재되었고, 이 형식은 인프라가 되었다.

두 코덱을 합치고, 양측이 모두 받아들이는 하이브리드를 만들다

하이브리드는 어느 한쪽에 자기 코덱을 포기하라고 요구하는 대신 기존의 두 커뮤니티를 합쳤다.

로열티 없는 라이선스는 다른 코덱을 막았던 특허 장벽을 제거했다.

IETF 표준화는 중립적인 거버넌스와 폭넓은 업계의 지지를 부여했다.

WebRTC의 의무화는 Opus를 기본적으로 모든 브라우저에 탑재되게 했다.

두 집단이 서로 다른 속성을 필요로 할 때, 두 코덱을 하나의 표준으로 접어 넣는 하이브리드는 선택할 필요 자체를 없앤다. 합쳐진 명세는 각 측의 지지자를 물려받아 기본값이 된다.

Opus는 이제 WebRTC 엔드포인트의 필수 오디오 코덱이므로, WebRTC 기반으로 구축된 브라우저와 VoIP 서비스는 기본적으로 Opus를 탑재하며, 개방형 참조 구현은 모든 사람이 이용할 수 있다. SILK와 CELT를 하나로 묶은 하이브리드 설계는 어느 한쪽도 단독으로는 이룰 수 없었던 표준이 되었다.

근거 확인하기

출처

  1. RFC 6716 — Definition of the Opus Audio Codec Internet Engineering Task Force · rfc-editor.org
  2. RFC 7874 — WebRTC Audio Codec and Processing Requirements Internet Engineering Task Force · rfc-editor.org
  3. Opus Codec — Documentation Xiph.Org Foundation · opus-codec.org
  4. Opus (audio format) Wikipedia · en.wikipedia.org