Apple Safari の WebRTC について

概要

2020 年 12 月時点で Safari 14.0 を使用して確認しています。

注意点

  • Sora のサイマルキャストに対応していません

  • 音声が含まれているまたは音声のみの配信の場合 iOS の Safari では自動再生されません

    • これは iOS の Safari の仕様のため、今のところ回避の方法はありません

    • macOS の Safari 場合も設定を有効にしないと同様です

  • Certificate Management API に非対応です

    • ECDSA P256 使えません

  • onaddstream ではなく ontrack を利用してください

  • 映像コーデック VP9 には開発メニューから実験的な機能で VP9 を有効にすることで利用可能です

  • getUserMedia を利用するには HTTPS が必須です

    • 開発モードで HTTPS 必須を無効にすることが可能です

  • Let's Encrypt を利用した TURN-TLS が正常に動作しません

  • Safari のバージョンの細かい更新で大きく機能が変わります

  • Insertable Streams API は利用できません

iOS の Chrome や Firefox について

iOS の Chrome や Firefox は WKWebView を利用しています。 WKWebView は iOS 14.3 にて getUserMedia に対応しました。

Safari Technology Preview

VP9 が利用可能

Safari Technology Preview (Safari TP) Safari TP 120 でデフォルトで WebRTC VP9 Profile 0 Codec が有効になりました。

H.265 が利用可能

Safari Technology Preview (Safari TP) 105 以降で開発メニューで有効にすることで H.265 が利用可能です。

https://i.gyazo.com/74f321ba4fc25a90b004965046469b25.png

現在 H.265 を WebRTC で利用できるのは唯一 Safari TP のみのため、 Safari TP 同士でしか検証できません。