WebRTC Audio Codec and Processing Requirements
RFC 7874
Internet Engineering Task Force (IETF) JM. Valin
Request for Comments: 7874 Mozilla
Category: Standards Track C. Bran
ISSN: 2070-1721 Plantronics
May 2016
WebRTC Audio Codec and Processing Requirements
Abstract
This document outlines the audio codec and processing requirements
for WebRTC endpoints.
Status of This Memo
This is an Internet Standards Track document.
This document is a product of the Internet Engineering Task Force
(IETF). It represents the consensus of the IETF community. It has
received public review and has been approved for publication by the
Internet Engineering Steering Group (IESG). Further information on
Internet Standards is available in Section 2 of RFC 5741.
Information about the current status of this document, any errata,
and how to provide feedback on it may be obtained at
http://www.rfc-editor.org/info/rfc7874.
Copyright Notice
Copyright (c) 2016 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
Valin & Bran Standards Track [Page 1]
RFC 7874 WebRTC Audio May 2016
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 2
3. Codec Requirements . . . . . . . . . . . . . . . . . . . . . 2
4. Audio Level . . . . . . . . . . . . . . . . . . . . . . . . . 4
5. Acoustic Echo Cancellation (AEC) . . . . . . . . . . . . . . 4
6. Legacy VoIP Interoperability . . . . . . . . . . . . . . . . 5
7. Security Considerations . . . . . . . . . . . . . . . . . . . 5
8. References . . . . . . . . . . . . . . . . . . . . . . . . . 6
8.1. Normative References . . . . . . . . . . . . . . . . . . 6
8.2. Informative References . . . . . . . . . . . . . . . . . 6
Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . 7
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 7
1. Introduction
An integral part of the success and adoption of Web Real-Time
Communications (WebRTC) will be the voice and video interoperability
between WebRTC applications. This specification will outline the
audio processing and codec requirements for WebRTC endpoints.
2. Terminology
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
"OPTIONAL" in this document are to be interpreted as described in RFC
2119 [RFC2119].
3. Codec Requirements
To ensure a baseline level of interoperability between WebRTC
endpoints, a minimum set of required codecs are specified below. If
other suitable audio codecs are available for the WebRTC endpoint to
use, it is RECOMMENDED that they also be included in the offer in
order to maximize the possibility of establishing the session without
the need for audio transcoding.
WebRTC endpoints are REQUIRED to implement the following audio
codecs:
o Opus [RFC6716] with the payload format specified in [RFC7587].
o PCMA and PCMU (as specified in ITU-T Recommendation G.711 [G.711])
with the payload format specified in Section 4.5.14 of [RFC3551].
Valin & Bran Standards Track [Page 2]
RFC 7874 WebRTC Audio May 2016
o [RFC3389] comfort noise (CN). WebRTC endpoints MUST support
[RFC3389] CN for streams encoded with G.711 or any other supported
codec that does not provide its own CN. Since Opus provides its
own CN mechanism, the use of [RFC3389] CN with Opus is NOT
RECOMMENDED. Use of Discontinuous Transmission (DTX) / CN by
senders is OPTIONAL.
o the 'audio/telephone-event' media type as specified in [RFC4733].
The endpoints MAY send DTMF events at any time and SHOULD suppress
in-band dual-tone multi-frequency (DTMF) tones, if any. DTMF
events generated by a WebRTC endpoint MUST have a duration of no
more than 8000 ms and no less than 40 ms. The recommended default
Show full document text