如何在 Android Studio 的 Kotlin 中设置 WebRTC?我找不到可行的解决方案。请提供详细信息。
最佳答案
许多在线示例都使用旧的 Android WebRTC api。过去几年发生了很多变化。以下示例是 Java 语言的,但应该与 Kotlin 类似。
首先,您需要请求摄像头和音频的权限。然后也许使用 findviewbyid 设置您的 View ,然后将您的ice 服务器添加到数组中:
List<PeerConnection.IceServer> peerIceServers = new ArrayList<>();
peerIceServers.add(PeerConnection.IceServer.builder("stun:stun1.l.google.com:19302").createIceServer());
然后初始化您的对等连接工厂。
DefaultVideoEncoderFactory defaultVideoEncoderFactory = new DefaultVideoEncoderFactory(eglBase.getEglBaseContext(), true, true);
DefaultVideoDecoderFactory defaultVideoDecoderFactory = new DefaultVideoDecoderFactory(eglBase.getEglBaseContext());
PeerConnectionFactory.InitializationOptions initializationOptions =
PeerConnectionFactory.InitializationOptions.builder(this)
.createInitializationOptions();
PeerConnectionFactory.initialize(initializationOptions);
PeerConnectionFactory.Options options = new PeerConnectionFactory.Options();
factory = PeerConnectionFactory.builder()
.setVideoEncoderFactory(defaultVideoEncoderFactory)
.setVideoDecoderFactory(defaultVideoDecoderFactory)
.setOptions(options)
.createPeerConnectionFactory();
然后您可以初始化摄像头和音频以及信号客户端。
看着这个example在 Java 中可能会有所帮助:
关于android - 如何在原生 android 2019 中使用 WebRTC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58268613/