Swift

概要

仕組み

タイマーは10fpsで作動する。ティックごとに、キャプチャーはターゲット・ビューをレンダリングする。 UIViewに変換する。 UIImage 経由 drawHierarchy(in:afterScreenUpdates:)エンコーダーとの互換性を保つために、画像のサイズとパッドを変更し、それを CVPixelBufferで包む。 OTVideoFrameを経由してVonage SDKに渡します。 videoCaptureConsumer?.consumeFrame(_:).SDKはフレームをエンコードし、スクリーン共有ストリームとして公開します。ターゲットビューは、フルルートビューまたは任意の UIView あなたが提供するものは、その会社が生産したものも含む。 UIViewRepresentable (下記の代替案を参照)。

テスト

この例では、複数の参加者(少なくとも2人)を使って、通話中の別の人に画面共有が機能することを確認します。

iOSシミュレータでのテスト

  1. iOSシミュレータでアプリを実行する
  2. シミュレーターはデモビデオを使用する(カメラへのアクセスは不可)
  3. タイマーのテキストが表示されます。

物理デバイスのテスト

  1. iOSデバイスを接続する
  2. 実行先として選択する
  3. プロンプトが表示されたら、カメラのアクセス許可を与える
  4. タイマーのテキストが表示されます。

複数参加者によるテスト

  1. デバイスまたはシミュレーターでアプリを実行する
  2. を使用する。 ビデオ・プレイグラウンド 同じセッションに参加する
  3. カスタムレンダリングされたストリームと標準のサブスクライバーストリームが表示されるはずです。