ORTC (Object Real-Time Communications)

[Some information relates to pre-released product which may be substantially modified before it's commercially released. Microsoft makes no warranties, express or implied, with respect to the information provided here.]

ORTC (Object Real-Time Communications) enables media (audio and/or video) to be streamed (sent and received) in real-time directly between web browsers, mobile devices, and servers via native Javascript APIs.

Note  Microsoft Edge now implements ORTC for Windows 10 devices. However, this implementation differs from the most recent version of the ORTC API. ORTC has continued to evolve since the development and release of Microsoft Edge -- the browser does not implement every object or method within the ORTC API, and includes extensions not currently incorporated within the specification. Further development will continue with the goal to enable developers around the world to build experiences that include the ability to talk to Skype users and other WebRTC compatible communication services.

 

ORTC uses "sender", "receiver" and "transport" objects, which have "capabilities" describing what they are capable of doing, as well as "parameters" which define what they are configured to do. "Tracks" capture and encode media streams by senders, traveling over transports, then decoded by receivers that render the media stream tracks to video/audio tags.

For an overview and code sample walk-through, visit the ORTC Developer Guide entry.

In this section

Topic Description

RTCIceGatherer

Gathers local host, server reflexive and relay candidates, as well as enabling the retrieval of local Interactive Connectivity Establishment (ICE) parameters which can be exchanged in signaling.

RTCIceTransport

Exposes information relating to Interactive Connectivity Establishment (ICE).

RTCDtlsTransport

Exposes information relating to Datagram Transport Layer Security (DTLS) transport.

RTCSrtpSdesTransport

**Soon to be depricated** Exposes information relating to SRTP/SDES transport [RFC4568].

RTCRtpSender

Exposes information relating to the RTP sender.

RTCRtpReceiver

Exposes information relating to the RTP receiver.

RTCRtpHeaderExtensionParameters (Dictionary)

Configures a header extension.

RTCRtpCapabilities (Dictionary)

Called with the getCapabilities method to express the capabilities of RTCRtpSender and RTCRtpReceiver objects.

RTCRtcpFeedback (Dictionary)

Provides information on RTCP feedback messages.

RTCRtpHeaderExtension (Dictionary)

Specifies a supported RTP header extension.

RTCRtpCodecCapability (Dictionary)

Provides information on the capabilities of a codec.

Microsoft Edge Codec Capabilities (Dictionary)

This section describes the codec capabilities supported by the Microsoft Edge ORTC API implementation.

RTCRtpParameters (Dictionary)

Contains the RTP stack settings.

RTCRtcpParameters (Dictionary)

Provides information on RTCP settings.

RTCRtpCodecParameters (Dictionary)

Provides information on codec settings.

RTCRtpEncodingParameters (Dictionary)

Provides information regarding parameters for RTP Encoding.

RTCRtpRtxParameters (Dictionary)

The RTCRtpRtxParameters dictionary is used to represent the SSRC to use for retransmission for the RTCRtpEncodingParameters dictionary.

RTCDtmfSender

Allows sending DTMF tones to/from the remote peer, as per [RFC4733].

Statistics API

The Statistics API enables retrieval of statistics relating to RTCRtpSender, RTCRtpReceiver, RTCDtlsTransport, RTCIceGathererand RTCIceTransport objects.

Microsoft-specific extensions

The extensions defined in this section relate to Microsoft Edge-specific implementation.

Error Codes

Microsoft Edge ORTC API error codes and their meanings.