【问题标题】:Vonage screensharing not worksVonage 屏幕共享不起作用
【发布时间】:2021-01-30 09:09:57
【问题描述】:

我在 android studio java 中使用 vonage api 的屏幕共享。我遵循了他们的文档,但问题是:当我尝试共享屏幕时,它会从相机发送视频而不是屏幕捕获。这里是代码 sn-p, (另外,我需要使用不同的 API 密钥,会话 id 进行屏幕共享 perpose 与视频共享 api 不同)

@Override
public void onConnected(Session session) {
    Log.d(TAG, "onConnected: Connected to session " + session.getSessionId());

    mPublisher = new Publisher.Builder(MainActivity.this).name("publisher").build();
    mPublisher.setPublisherListener(this);
    mPublisher.setPublisherVideoType(PublisherKit.PublisherKitVideoType.PublisherKitVideoTypeScreen);
    mPublisher.setAudioFallbackEnabled(false);

    ScreenSharingCapturer screenCapturer = new ScreenSharingCapturer(MainActivity.this, mWebViewContainer);
    mPublisher.setCapturer(screenCapturer);

    mWebViewContainer.setWebViewClient(new WebViewClient());
    WebSettings webSettings = mWebViewContainer.getSettings();
    webSettings.setJavaScriptEnabled(true);
    mWebViewContainer.setLayerType(View.LAYER_TYPE_SOFTWARE, null);
    mWebViewContainer.loadUrl("http://www.tokbox.com");

    mPublisher.setStyle(BaseVideoRenderer.STYLE_VIDEO_SCALE, BaseVideoRenderer.STYLE_VIDEO_FILL);
    mPublisherViewContainer.addView(mPublisher.getView());

    mSession.publish(mPublisher);
}

【问题讨论】:

    标签: java tokbox screensharing


    【解决方案1】:

    我终于解决了这个问题:

    Publisher.Builder mPublisherBuilder = new Publisher.Builder(MainActivity.this); //.build();
    ScreenSharingCapturer screenCapturer = new ScreenSharingCapturer(MainActivity.this, mWebViewContainer);
    mPublisherBuilder=mPublisherBuilder.capturer(screenCapturer);
    mPublisher=mPublisherBuilder.build();
    

    setCapturer 已被弃用,因此它没有从BaseVideoCapture 设置捕获器。

    【讨论】:

    • 因为 setCapturer 已被弃用,所以它没有从 BaseVideoCapture 设置捕获器
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多