> ## Documentation Index
> Fetch the complete documentation index at: https://docs.apifycloud.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Browser & device support

> Which browsers, operating systems, and hardware can join a Video session

Video sessions run on **WebRTC**. Any browser that implements a recent
WebRTC stack and has access to a camera and microphone can join.

## Browsers

Video is tested on current versions of the major browsers:

* **Google Chrome** (desktop and Android)
* **Microsoft Edge** (desktop)
* **Mozilla Firefox** (desktop and Android)
* **Safari** (macOS and iOS)

<Note>
  Keeping the browser on a current version is the single highest-impact
  thing a user can do when they hit trouble — most WebRTC regressions
  are fixed in recent releases.
</Note>

## Operating systems

* **Windows** 10 and 11
* **macOS** recent major versions
* **Linux** with a supported browser
* **iOS / iPadOS** — Safari is the only engine on iOS (by OS policy);
  other browsers on iOS use WebKit internally
* **Android** — recent versions with a supported browser

## Hardware

Video and audio require working input devices:

* A **camera** (built-in or USB) exposed to the browser
* A **microphone** (built-in or USB, or a Bluetooth / wired headset)
* **Speakers or headphones**

The browser chooses inputs based on the operating system's active
devices. Users can pick a different input in the pre-join preview or
from the in-meeting settings.

<Warning>
  Bluetooth headsets add latency and can introduce audio artefacts. When
  quality matters (sales demos, interviews), wired headsets are cleaner
  and more predictable.
</Warning>

## What the browser must support

To join a meeting the browser needs:

* A secure (HTTPS) page — see
  [Network requirements](/guides/video/network-requirements)
* Permission to use the camera and microphone
* JavaScript enabled

These requirements are satisfied by default on current releases of all
the browsers listed above.

## In-app webviews

Opening a video link from inside another app's in-app browser
(WhatsApp, Instagram, Facebook Messenger, X, LinkedIn, TikTok, etc.)
is inconsistent — some webviews strip WebRTC support or block camera
permissions.

Recommended pattern:

* Share links that **open in the system browser**.
* If a user lands inside an in-app webview and can't start camera or
  microphone, ask them to tap the "Open in browser" option that most
  apps expose in their overflow menu.

## What's next

<CardGroup cols={2}>
  <Card title="Network requirements" href="/guides/video/network-requirements">
    Ports and firewall configuration for corporate networks.
  </Card>

  <Card title="Permissions" href="/guides/video/permissions">
    Camera and microphone permission flow.
  </Card>
</CardGroup>
