<?xml version="1.0" encoding="UTF-8"?>
<feature id="webrtc"><name>WebRTC</name><description>The WebRTC API establishes real-time communication channels directly between browsers. It is commonly used in video conferencing applications.</description><group>webrtc</group><group_name>WebRTC</group_name><baseline><status>widely</status><low_date>2020-01-15</low_date><high_date>2022-07-15</high_date></baseline><support><browser name="chrome" version="56" supported="true"></browser><browser name="firefox" version="22" supported="true"></browser><browser name="safari" version="11" supported="true"></browser><browser name="edge" version="79" supported="true"></browser><browser name="chrome_android" version="56" supported="true"></browser><browser name="firefox_android" version="24" supported="true"></browser><browser name="safari_ios" version="11" supported="true"></browser></support><specifications><spec>https://w3c.github.io/webrtc-pc/</spec></specifications><caniuse><id>rtcpeerconnection</id></caniuse><mdn_url>https://developer.mozilla.org/docs/Web/API/RTCError</mdn_url><compat_features><key>api.RTCCertificate</key><key>api.RTCCertificate.expires</key><key>api.RTCCertificate.getFingerprints</key><key>api.RTCDTMFSender</key><key>api.RTCDTMFSender.canInsertDTMF</key><key>api.RTCDTMFSender.insertDTMF</key><key>api.RTCDTMFSender.toneBuffer</key><key>api.RTCDTMFSender.tonechange_event</key><key>api.RTCDTMFToneChangeEvent</key><key>api.RTCDTMFToneChangeEvent.RTCDTMFToneChangeEvent</key><key>api.RTCDTMFToneChangeEvent.tone</key><key>api.RTCDataChannel</key><key>api.RTCDataChannel.binaryType</key><key>api.RTCDataChannel.binaryType.arraybuffer_value</key><key>api.RTCDataChannel.binaryType.blob_value</key><key>api.RTCDataChannel.bufferedAmount</key><key>api.RTCDataChannel.bufferedAmountLowThreshold</key><key>api.RTCDataChannel.bufferedamountlow_event</key><key>api.RTCDataChannel.close</key><key>api.RTCDataChannel.close_event</key><key>api.RTCDataChannel.closing_event</key><key>api.RTCDataChannel.error_event</key><key>api.RTCDataChannel.id</key><key>api.RTCDataChannel.label</key><key>api.RTCDataChannel.maxPacketLifeTime</key><key>api.RTCDataChannel.maxRetransmits</key><key>api.RTCDataChannel.message_event</key><key>api.RTCDataChannel.negotiated</key><key>api.RTCDataChannel.open_event</key><key>api.RTCDataChannel.ordered</key><key>api.RTCDataChannel.protocol</key><key>api.RTCDataChannel.readyState</key><key>api.RTCDataChannel.sctp_sdp_21</key><key>api.RTCDataChannel.send</key><key>api.RTCDataChannel.transferable</key><key>api.RTCDataChannelEvent</key><key>api.RTCDataChannelEvent.RTCDataChannelEvent</key><key>api.RTCDataChannelEvent.channel</key><key>api.RTCDtlsTransport</key><key>api.RTCDtlsTransport.error_event</key><key>api.RTCDtlsTransport.getRemoteCertificates</key><key>api.RTCDtlsTransport.iceTransport</key><key>api.RTCDtlsTransport.state</key><key>api.RTCDtlsTransport.statechange_event</key><key>api.RTCError</key><key>api.RTCError.RTCError</key><key>api.RTCError.errorDetail</key><key>api.RTCError.receivedAlert</key><key>api.RTCError.sctpCauseCode</key><key>api.RTCError.sdpLineNumber</key><key>api.RTCError.sentAlert</key><key>api.RTCErrorEvent</key><key>api.RTCErrorEvent.RTCErrorEvent</key><key>api.RTCErrorEvent.error</key><key>api.RTCIceCandidate</key><key>api.RTCIceCandidate.RTCIceCandidate</key><key>api.RTCIceCandidate.address</key><key>api.RTCIceCandidate.candidate</key><key>api.RTCIceCandidate.component</key><key>api.RTCIceCandidate.foundation</key><key>api.RTCIceCandidate.port</key><key>api.RTCIceCandidate.priority</key><key>api.RTCIceCandidate.protocol</key><key>api.RTCIceCandidate.relatedAddress</key><key>api.RTCIceCandidate.relatedPort</key><key>api.RTCIceCandidate.relayProtocol</key><key>api.RTCIceCandidate.sdpMLineIndex</key><key>api.RTCIceCandidate.sdpMid</key><key>api.RTCIceCandidate.tcpType</key><key>api.RTCIceCandidate.toJSON</key><key>api.RTCIceCandidate.type</key><key>api.RTCIceCandidate.url</key><key>api.RTCIceCandidate.usernameFragment</key><key>api.RTCIceTransport</key><key>api.RTCIceTransport.gatheringState</key><key>api.RTCIceTransport.gatheringstatechange_event</key><key>api.RTCIceTransport.getLocalCandidates</key><key>api.RTCIceTransport.getLocalParameters</key><key>api.RTCIceTransport.getRemoteCandidates</key><key>api.RTCIceTransport.getRemoteParameters</key><key>api.RTCIceTransport.getSelectedCandidatePair</key><key>api.RTCIceTransport.role</key><key>api.RTCIceTransport.selectedcandidatepairchange_event</key><key>api.RTCIceTransport.state</key><key>api.RTCIceTransport.statechange_event</key><key>api.RTCPeerConnection</key><key>api.RTCPeerConnection.RTCPeerConnection</key><key>api.RTCPeerConnection.RTCPeerConnection.configuration_bundlePolicy_parameter</key><key>api.RTCPeerConnection.RTCPeerConnection.configuration_certificates_parameter</key><key>api.RTCPeerConnection.RTCPeerConnection.configuration_iceCandidatePoolSize_parameter</key><key>api.RTCPeerConnection.RTCPeerConnection.configuration_iceServers_parameter</key><key>api.RTCPeerConnection.RTCPeerConnection.configuration_iceServers_parameter.credential_parameter</key><key>api.RTCPeerConnection.RTCPeerConnection.configuration_iceServers_parameter.urls_parameter</key><key>api.RTCPeerConnection.RTCPeerConnection.configuration_iceServers_parameter.username_parameter</key><key>api.RTCPeerConnection.RTCPeerConnection.configuration_iceTransportPolicy_parameter</key><key>api.RTCPeerConnection.RTCPeerConnection.configuration_peerIdentity_parameter</key><key>api.RTCPeerConnection.RTCPeerConnection.configuration_rtcpMuxPolicy_parameter</key><key>api.RTCPeerConnection.addIceCandidate</key><key>api.RTCPeerConnection.addIceCandidate.returns_promise</key><key>api.RTCPeerConnection.addTrack</key><key>api.RTCPeerConnection.addTransceiver</key><key>api.RTCPeerConnection.addTransceiver.init_direction_parameter</key><key>api.RTCPeerConnection.addTransceiver.init_sendEncodings_parameter</key><key>api.RTCPeerConnection.addTransceiver.init_streams_parameter</key><key>api.RTCPeerConnection.canTrickleIceCandidates</key><key>api.RTCPeerConnection.close</key><key>api.RTCPeerConnection.connectionState</key><key>api.RTCPeerConnection.connectionstatechange_event</key><key>api.RTCPeerConnection.createAnswer</key><key>api.RTCPeerConnection.createAnswer.returns_promise</key><key>api.RTCPeerConnection.createDataChannel</key><key>api.RTCPeerConnection.createOffer</key><key>api.RTCPeerConnection.createOffer.returns_promise</key><key>api.RTCPeerConnection.currentLocalDescription</key><key>api.RTCPeerConnection.currentRemoteDescription</key><key>api.RTCPeerConnection.datachannel_event</key><key>api.RTCPeerConnection.generateCertificate_static</key><key>api.RTCPeerConnection.getConfiguration</key><key>api.RTCPeerConnection.getReceivers</key><key>api.RTCPeerConnection.getReceivers.stopped_transceivers_removed</key><key>api.RTCPeerConnection.getSenders</key><key>api.RTCPeerConnection.getSenders.stopped_transceivers_removed</key><key>api.RTCPeerConnection.getTransceivers</key><key>api.RTCPeerConnection.getTransceivers.stopped_transceivers_removed</key><key>api.RTCPeerConnection.iceConnectionState</key><key>api.RTCPeerConnection.iceGatheringState</key><key>api.RTCPeerConnection.icecandidate_event</key><key>api.RTCPeerConnection.icecandidateerror_event</key><key>api.RTCPeerConnection.iceconnectionstatechange_event</key><key>api.RTCPeerConnection.icegatheringstatechange_event</key><key>api.RTCPeerConnection.localDescription</key><key>api.RTCPeerConnection.negotiationneeded_event</key><key>api.RTCPeerConnection.pendingLocalDescription</key><key>api.RTCPeerConnection.pendingRemoteDescription</key><key>api.RTCPeerConnection.remoteDescription</key><key>api.RTCPeerConnection.removeTrack</key><key>api.RTCPeerConnection.restartIce</key><key>api.RTCPeerConnection.setConfiguration</key><key>api.RTCPeerConnection.setLocalDescription</key><key>api.RTCPeerConnection.setLocalDescription.description_parameter_optional</key><key>api.RTCPeerConnection.setLocalDescription.returns_promise</key><key>api.RTCPeerConnection.setRemoteDescription</key><key>api.RTCPeerConnection.setRemoteDescription.implicit_rollback</key><key>api.RTCPeerConnection.setRemoteDescription.returns_promise</key><key>api.RTCPeerConnection.signalingState</key><key>api.RTCPeerConnection.signalingstatechange_event</key><key>api.RTCPeerConnection.track_event</key><key>api.RTCPeerConnectionIceErrorEvent</key><key>api.RTCPeerConnectionIceErrorEvent.RTCPeerConnectionIceErrorEvent</key><key>api.RTCPeerConnectionIceErrorEvent.address</key><key>api.RTCPeerConnectionIceErrorEvent.errorCode</key><key>api.RTCPeerConnectionIceErrorEvent.errorText</key><key>api.RTCPeerConnectionIceErrorEvent.port</key><key>api.RTCPeerConnectionIceErrorEvent.url</key><key>api.RTCPeerConnectionIceEvent</key><key>api.RTCPeerConnectionIceEvent.RTCPeerConnectionIceEvent</key><key>api.RTCPeerConnectionIceEvent.candidate</key><key>api.RTCRtpReceiver</key><key>api.RTCRtpReceiver.createEncodedStreams</key><key>api.RTCRtpReceiver.getCapabilities_static</key><key>api.RTCRtpReceiver.getContributingSources</key><key>api.RTCRtpReceiver.getContributingSources.audioLevel</key><key>api.RTCRtpReceiver.getContributingSources.audio_tracks_supported</key><key>api.RTCRtpReceiver.getContributingSources.rtpTimestamp</key><key>api.RTCRtpReceiver.getContributingSources.source</key><key>api.RTCRtpReceiver.getContributingSources.timestamp</key><key>api.RTCRtpReceiver.getContributingSources.video_tracks_supported</key><key>api.RTCRtpReceiver.getParameters</key><key>api.RTCRtpReceiver.getParameters.return_object_property_codecs</key><key>api.RTCRtpReceiver.getParameters.return_object_property_headerExtensions</key><key>api.RTCRtpReceiver.getParameters.return_object_property_rtcp</key><key>api.RTCRtpReceiver.getSynchronizationSources</key><key>api.RTCRtpReceiver.getSynchronizationSources.audio_tracks_supported</key><key>api.RTCRtpReceiver.getSynchronizationSources.video_tracks_supported</key><key>api.RTCRtpReceiver.jitterBufferTarget</key><key>api.RTCRtpReceiver.track</key><key>api.RTCRtpReceiver.transport</key><key>api.RTCRtpSender</key><key>api.RTCRtpSender.createEncodedStreams</key><key>api.RTCRtpSender.dtmf</key><key>api.RTCRtpSender.getCapabilities_static</key><key>api.RTCRtpSender.getParameters</key><key>api.RTCRtpSender.getParameters.return_object_property_codecs</key><key>api.RTCRtpSender.getParameters.return_object_property_encodings</key><key>api.RTCRtpSender.getParameters.return_object_property_headerExtensions</key><key>api.RTCRtpSender.getParameters.return_object_property_rtcp</key><key>api.RTCRtpSender.getParameters.return_object_property_transactionId</key><key>api.RTCRtpSender.replaceTrack</key><key>api.RTCRtpSender.setParameters</key><key>api.RTCRtpSender.setParameters.parameters_codecs_parameter</key><key>api.RTCRtpSender.setParameters.parameters_encodings_parameter</key><key>api.RTCRtpSender.setParameters.parameters_encodings_parameter.active</key><key>api.RTCRtpSender.setParameters.parameters_encodings_parameter.maxBitrate</key><key>api.RTCRtpSender.setParameters.parameters_encodings_parameter.maxFramerate</key><key>api.RTCRtpSender.setParameters.parameters_encodings_parameter.rid</key><key>api.RTCRtpSender.setParameters.parameters_encodings_parameter.scaleResolutionDownBy</key><key>api.RTCRtpSender.setParameters.parameters_headerExtensions_parameter</key><key>api.RTCRtpSender.setParameters.parameters_rtcp_parameter</key><key>api.RTCRtpSender.setParameters.parameters_transactionId_parameter</key><key>api.RTCRtpSender.setStreams</key><key>api.RTCRtpSender.track</key><key>api.RTCRtpSender.transport</key><key>api.RTCRtpTransceiver</key><key>api.RTCRtpTransceiver.currentDirection</key><key>api.RTCRtpTransceiver.currentDirection.stopped_value</key><key>api.RTCRtpTransceiver.direction</key><key>api.RTCRtpTransceiver.direction.value_stopped</key><key>api.RTCRtpTransceiver.getHeaderExtensionsToNegotiate</key><key>api.RTCRtpTransceiver.getNegotiatedHeaderExtensions</key><key>api.RTCRtpTransceiver.mid</key><key>api.RTCRtpTransceiver.receiver</key><key>api.RTCRtpTransceiver.sender</key><key>api.RTCRtpTransceiver.setCodecPreferences</key><key>api.RTCRtpTransceiver.setHeaderExtensionsToNegotiate</key><key>api.RTCRtpTransceiver.stop</key><key>api.RTCSessionDescription</key><key>api.RTCSessionDescription.sdp</key><key>api.RTCSessionDescription.toJSON</key><key>api.RTCSessionDescription.type</key><key>api.RTCTrackEvent</key><key>api.RTCTrackEvent.RTCTrackEvent</key><key>api.RTCTrackEvent.receiver</key><key>api.RTCTrackEvent.streams</key><key>api.RTCTrackEvent.track</key><key>api.RTCTrackEvent.transceiver</key></compat_features><canonical_url>https://nowyoucanuse.com/features--webrtc.html</canonical_url></feature>