Apple added support for WebRTC in Safari 11 for macOS and Safari on iOS 11, and you can now use OpenTok.js apps on Safari.
Additionally, Safari 12.1 supports the VP8 video codec, in addition to H.264. VP8 support in Safari 12.1 ships on macOS 10.14.4, and it is also available for macOS 10.13.6 and 10.12.6. And it is available in the latest iOS 12.2 release.
You must use version 2.16.0 or later of OpenTok.js to use the VP8 video codec in Safari.
For more information on video codec support, see this developer guide.
Older versions of Safari use the H.264 video codec exclusively, and as such do not support the VP8 video codec.
In routed sessions (sessions that use the OpenTok Media Router), you must use a OpenTok project with the preferred codec set to H.264, to have older versions of Safari be able to publish and subscribe to video. Set the preferred video codec for a project on the Project page of your Video API account.
In a routed session (a session that uses the OpenTok Media Router) in an OpenTok project that has the preferred video codec set to VP8 (not H.264), clients using older versions of Safari can use OpenTok but without video support.
If you would like to see the OpenTok.js in action in older versions of Safari, see our demo.
The following are limitations in OpenTok running in Safari: