Java WebRTC未为视频创建候选对象

Java WebRTC未为视频创建候选对象,java,android,kotlin,webrtc,webrtc-android,Java,Android,Kotlin,Webrtc,Webrtc Android,在Android应用程序上,我正在尝试建立webRTC连接 当我是被叫方时,我从套接字连接接收足够数量的视频和音频ICE候选者。当我的ICE候选s被创建时,它们的数量要少得多。其中大约有6个是为音频而创建的 从日志消息中,我看到连接成功,音频双向传输,我也设法将视频发送给呼叫者,但我无法接收呼叫者的视频流。我想这与无法创建足够的ICE候选s来发送到套接字连接有关。有什么想法吗?也许不太理想,但下面的方法解决了我的问题 首先,可以减少ICE候选者的数量。在我这边创建ICE候选s期间,sdpMid字

在Android应用程序上,我正在尝试建立
webRTC
连接

当我是被叫方时,我从套接字连接接收足够数量的视频和音频
ICE候选者。当我的
ICE候选
s被创建时,它们的数量要少得多。其中大约有6个是为音频而创建的


从日志消息中,我看到连接成功,音频双向传输,我也设法将视频发送给呼叫者,但我无法接收呼叫者的视频流。我想这与无法创建足够的
ICE候选
s来发送到套接字连接有关。有什么想法吗?

也许不太理想,但下面的方法解决了我的问题

首先,可以减少
ICE候选者的数量。在我这边创建
ICE候选
s期间,
sdpMid
字段仍然不包含视频值-我从套接字连接接收
sdpMid
的视频和音频值

我所要做的就是在使用以下方法设置连接后再次触摸我的视图

我走过这些,然后走了过去


也许这不太理想,但下面解决了我的问题

首先,可以减少
ICE候选者的数量。在我这边创建
ICE候选
s期间,
sdpMid
字段仍然不包含视频值-我从套接字连接接收
sdpMid
的视频和音频值

我所要做的就是在使用以下方法设置连接后再次触摸我的视图

我走过这些,然后走了过去


Hii我和urs有同样的问题,根据你建议的文章,我也在记录音频而不是视频,但我的问题仍然没有像你说的那样解决。你能分享我的约束和初始对等连接属性吗?Hii我和urs有同样的问题,根据你建议的文章,我也在记录音频而不是视频,但我的问题并没有像你说的那样得到解决。你能分享我的限制和初始对等连接属性吗?
private void updateVideoViews(final boolean remoteVisible) {
    activity.runOnUiThread(() -> {
        ViewGroup.LayoutParams params = localVideoView.getLayoutParams();
        ViewGroup.LayoutParams params2 = remoteVideoView.getLayoutParams();
        if (remoteVisible) {
            params.height = dpToPx(100);
            params.width = dpToPx(100);

            params2.height = dpToPx(100);
            params2.width = dpToPx(100);
        } else {
            params = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT);
            params2 = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT);
        }
        localVideoView.setLayoutParams(params);
        remoteVideoView.setLayoutParams(params2);
    });
}

public int dpToPx(int dp) {
    DisplayMetrics displayMetrics = getResources().getDisplayMetrics();
    return Math.round(dp * (displayMetrics.xdpi / DisplayMetrics.DENSITY_DEFAULT));
}