Web Real-Time Communication lets users access audio, video and data communications via web browsers without the need for additional plugins or third-party software.
Among other benefits, the open source technology provides end-to-end encryption and low-latency transmission. WebRTC is an essential part of today's communication and collaboration landscape and underpins collaboration tools from Snapchat, Discord, Facebook and Google.
Common use cases for WebRTC implementations include video conferencing, IM, voice calls, file sharing, livestreaming and online gaming.
You often find WebRTC in remote education environments, telehealth offerings, IT, customer service, and anywhere collaboration and online communication are useful. It already serves more than 8 billion connected devices and is projected to grow extensively over the next several years. WebRTC is particularly appealing to SMBs that wish to avoid major infrastructure deployments, while reaping the benefits of high-quality, browser-based communication.
The advantages of WebRTC include the following:
There is no additional installation or management of plugins or software.
It is free and open source, with broad community support and standardization.
It is supported by most major browsers and OSes.
It is supported on workstations, laptops, tablets and phones.
It does not require expensive server and infrastructure deployments.
The disadvantages include the following:
Security settings must be carefully managed, which may be challenging in enterprise deployments.
Scaling up to large webinars and mass broadcasts is challenging.
Implementations vary by OS and browser.
Network performance impacts communication quality.
There is limited customization for branding or other modifications.
It is memory-intensive in some situations.
Modern and legacy WebRTC standards are not well documented.
Although WebRTC has been part of Firefox and Chrome for more than a decade, Apple's support of WebRTC only stems back to 2017. This article covers Apple Safari WebRTC use cases and offers some practical knowledge for working with the implementation.
The Apple Safari browser differs from competitors like Chrome and Firefox. Its implementation tends to be more limited and less forgiving of older deployments. Whether that's a problem depends on your environment and your company's stance on keeping web browsers up to date; generally, keeping web browsers current is a critical component of cybersecurity.
Because Chrome and Firefox have supported WebRTC longer, they retain built-in backward compatibility. Apple's Safari WebRTC implementation is much newer, so it began with the more current standard.
Managing Apple Safari WebRTC
Safari's WebRTC implementation is less complete than that of other popular browsers. However, much of what's missing centers on backward compatibility and support for legacy security and connectivity protocols. Is that bad? Not necessarily. Maintaining current web browser versions is crucial to mitigating security threats and providing extensive feature support, whether for WebRTC or other technologies.
Safari handles basic WebRTC connectivity well, so most users don't experience problems. In addition, WebRTC is enabled by default in Safari; no additional user settings are required. This basic deployment enables users to get up and running quickly, with few finicky settings to manage or obscure options to troubleshoot.
Developers creating sites and services that host or push multimedia communications should carefully follow the current WebRTC API standard to ensure the best compatibility with Apple Safari.
For example, Safari's WebRTC support extends only to the standard's Promise-based API. Although that means Safari doesn't work with the legacy callback API, it also means it's not subject to vulnerabilities and the less-than-ideal performance configurations of the original API.
Developers creating sites and services that host or push multimedia communications should carefully follow the current WebRTC API standard to ensure the best compatibility with Apple Safari. Modern Chrome and Firefox users should also have no problems with these settings.
Safari WebRTC quality settings
The client side of WebRTC doesn't require any management; the capability is enabled by default. Most quality management and connection options are defined on the web application side. These typically include receive-only video support, where the user receives video without sharing their own video, or configuring bitrate constraints.
Camera choice -- front-facing or rear-facing -- on tablets and phones also impacts the stream. Rear-facing cameras offer higher-quality images, which may hurt performance.
Another way to enhance UX with Apple Safari WebRTC is managing device access settings correctly.
Use the following steps on an Apple laptop or desktop system:
Safari > Settings > Websites tab.
Select Camera.
Select the website you want to grant camera access to, and select Allow or Ask.
Repeat these steps for Microphone.
You can also manage these settings from the address bar when connected to a website hosting a WebRTC-based session.
Use these steps on an iPhone or iPad:
Tap the left side of the address bar.
Select Website Settings.
Select Camera or Microphone.
Select Allow or Ask.
Safari may also prompt you when you first connect to the session.
Other settings to manage include the following:
Private Browsing mode blocks access to the camera and microphone.
Safari's settings are managed independently of the system's Privacy & Security settings.
Help your Safari users manage these settings and improve their experience.
Alternatives to WebRTC
Alternative technologies to WebRTC do exist. For example, proprietary platforms are often more extensive, but they typically come with a higher cost and require additional infrastructure and support. Examples include Zoom SDK, Amazon Chime and Agora. Alternative protocols, like WebSockets, WebTransport and gRPC, also offer specific advantages.
Older, centralized Session Initiation Protocol-based approaches rely on extensive and expensive infrastructure but do not necessarily provide better UX. Many organizations use these for traditional telephony and older VoIP deployments. Expect WebRTC options to perform significantly better.
Keeping WebRTC up to date
Open source WebRTC technology is an important element of today's audio and video communications and collaboration platforms. It lets people use their browsers to connect to a variety of resources, ranging from doctor visits to customer support.
Apple Safari offers an unapologetically current implementation of WebRTC without the potential pitfalls associated with extensive backward compatibility. And, while it doesn't provide extensive end-user configuration, its fundamental approach works effectively if the hosting site uses modern options and settings.
Now is the perfect opportunity to ensure your WebRTC applications are up to date and provide the best UX for all clients, regardless of whether they use Safari.
Damon Garn owns Cogspinner Coaction and provides freelance IT writing and editing services. He has written multiple CompTIA study guides, including the Linux+, Cloud Essentials+ and Server+ guides, and contributes extensively to Informa TechTarget, The New Stack and CompTIA Blogs.