Kotlin

カスタムレンダラーをパブリッシャー/サブスクライバーに接続する

  1. レンダラーをパブリッシャーに追加するには renderer ビルダーメソッド
publisher = Publisher.Builder(this@MainActivity)
                .renderer(InvertedColorsVideoRenderer(this@MainActivity))
                .build()
                ...
  1. を作成した場所で同じ手順を行う。 subscriber例えば onStreamReceived
override fun onStreamReceived(session: Session, stream: Stream) {
    Log.d(TAG, "Stream received: ${stream.streamId}")

    if (subscriber == null) {
        val newSubscriber = Subscriber.Builder(this@MainActivity, stream)
            .renderer(InvertedColorsVideoRenderer(this@MainActivity))
            .build()
            .apply {
                renderer.setStyle(
                    BaseVideoRenderer.STYLE_VIDEO_SCALE,
                    BaseVideoRenderer.STYLE_VIDEO_FILL
                )
                setSubscriberListener(subscriberListener)
            }

        session.subscribe(newSubscriber)
        subscriber = newSubscriber
        subscriberView = newSubscriber.view
    }
}