Kotlin

キャプチャの開始:パブリッシャーのライフサイクルへの配線

  1. パブリッシャーでのカスタムキャプチャーの使用

パブリッシャーを作成する場所(例えば MainActivity または専用のコールマネージャー)に、カスタムキャプチャーのインスタンスを渡す。 Publisher.Builder:

を構築した後 Publisher そして、あなたの MirrorVideoCapturer インスタンス - そのパブリッシャーのすべての送信ビデオは、デフォルトのキャプチャではなく、カスタムキャプチャから送信されます。

  1. カスタムキャプチャを使用してパブリッシャーを作成し、以下を呼び出します。 session.publish(パブリッシャー)、SDKはあなたのキャプチャーの startCapture() メソッドを使用する。

大まかな流れは以下の通り:

カメラの状態をチェックする基礎となるカメラリソースが初期化され準備ができていることを確認します。 キャプチャ・ループの開始: カメラを開きます(まだ開いていない場合)。 繰り返しキャプチャ要求(Camera2)を開始するか、プレビューパイプライン(CameraX / Camera1)を開始します。 まだ準備ができていない」ケースを処理する: カメラのセットアップがまだ進行中の場合は、カメラが開くまで実際の開始を待ちます(競合状態を回避)。 エラー処理: 何か根本的に間違っている場合(startCaptureの呼び出しが早すぎるなど)、エラーを投げるかシグナルを送る。

startCapture()が成功すると、キャプチャーはカメラフレームの受信を開始し、SDKにプッシュします。