问题标签 [webrtc-android]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
944 浏览

android - 在 RecyclerView 中显示 MediaStream 对象后,是否有正确的方法来处理/释放它?

我正在尝试MediaStreamRecyclerView. 目前,我的同伴MediaStream在我们初次握手时给了我所有的对象,我能够将它们显示在具有自定义TextureView. 当我获得大量流以滚动浏览时,就会出现问题。滚动浏览足够的列表项后,我最终崩溃了。

MediaStream#dispose()当我的列表项被回收时,我尝试使用该功能。这似乎避免了使用过多解码器资源的问题,但也导致无法再次查看流。如果用户想要滚动到已处理的流,我的应用程序在MediaStreamTrack has been disposed.尝试启用MediaStream.VideoTrack

我希望从视频轨道中删除接收器videoTrack?.removeSink(cameraStreamView)以及release()在我的 TextureView 中调用 EglRenderer 上的函数的组合足以清理onViewRecycled().

然而,在向下滚动列表足够远之后,我得到了错误: Unable to instantiate codec 'OMX.qcom.video.decoder.avc' with err 0xfffffff4.我认为这是由于我没有完全清理和释放我的编解码器,因为我一路旋转它们,而且我用完了资源。

有谁知道是否有某个函数可以调用以正确清理MediaStream资源/用于解码它们的编解码器?是否有任何文件讨论这种情况?

谢谢!

0 投票
1 回答
373 浏览

java - “org.webrtc.PeerConnectionFactory”中的“createVideoSource(boolean)”不能应用于“(org.webrtc.CameraVideoCapturer)”

使用 google webrtc 我一直面临这个问题,这是创建视频源的代码

但我遇到了一个错误

知道为什么它会出错吗?

谢谢。

0 投票
1 回答
193 浏览

java - WebRTC 没有为视频创建 IceCandidates

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

当我是被调用者时,我会IceCandidate从套接字连接收到足够数量的视频和音频。当我IceCandidate的 s 被创建时,它们的数量要少得多。其中大约创建了 6 个,它们都是用于音频的。

从日志消息中,我看到连接成功并且音频是双向的,我也设法将我的视频发送给呼叫者,但是我无法接收呼叫者的视频流。我想这与无法创建足够IceCandidate的 s 来发送到套接字连接有关。有任何想法吗?

0 投票
1 回答
1602 浏览

java - 后台服务中的 Android webRTC 视频通话

如果已经问过这个问题,请原谅我,我找不到我的案例的答案。

所以,我有一个带有语音和视频通话功能的 Android 应用程序。我为此使用了 webRTC。

我能够使语音和视频通话在 Activity 中完美运行,但现在我想在用户退出 CallActivity 并返回 ChatActivity 时保持通话运行(例如发送文件/链接/照片)。

我设法使语音通话在后台服务中完美运行,但视频通话无法按预期工作。

即使正在播放视频轨道中的音频,也不会显示远程视频。

这是我的后台服务代码:

在我的 CallActivity 代码下方:

我正在从 Service 向 Activity 发送订单,“case Constants.START_REMOTE_VIDEO”在收到 Service 的订单后工作。

我看不出问题出在哪里,为什么我只听到声音但远程视频无法开始显示!

预先感谢您的帮助。

0 投票
1 回答
1209 浏览

android - 如何创建 webrtc 的仅接收 sdp 报价?

我知道如何通过在此方法的参数 MediaConstraints 中添加“OfferToReceiveVideo:false”和“OfferToReceiveAudio:false”来创建仅发送优惠:

但是如何创建只接收的 sdp 报价?我尝试通过不向对等连接添加任何媒体流来创建它,但是,它会导致 sdp 非常短并且没有“a:recvonly”行包含。并且没有产生冰候选。

我想创建一个 webrtc 对等连接来接收媒体流,但不发送。

0 投票
1 回答
256 浏览

android - RTCFileLogger:如何解码日志文件?

如果您使用RTCFileLoggeror RTCPeerConnectionstartRtcEventLogWithFilePath它们都记录似乎以某种人类不可读的格式编码的数据:

你如何解码这些数据?

0 投票
0 回答
153 浏览

android - libjingle Android 在重新启动视频通话时崩溃

使用 libjingle 进行视频通话 android。用例是重新连接网络时应重新连接呼叫。因此,发生的情况是当网络丢失并且对等连接状态断开连接然后进入故障状态时。网络恢复时尝试重新连接时出现崩溃。下面是用于重新连接的代码。

碰撞 :

A/libc:致命信号 11 (SIGSEGV)、代码 1 (SEGV_MAPERR)、tid 3630 (signaling_threa) 中的故障地址 0x0、pid 3541 (droid.ivvsample)

谁能告诉我崩溃的问题是什么?

注意:按照以下链接 https://stackoverflow.com/a/49450225/1954763

或者任何人都可以告诉我如果对等连接失败如何重新连接呼叫?

0 投票
1 回答
975 浏览

kotlin - Android (Kotlin) WebRTC - “解析失败:”。原因:无效的 SDP 行“

我正在将 WebRTC 集成到一个项目中并使用“实现 'org.webrtc:google-webrtc:1.0.30039'”。当我只使用来自 Google 源https://webrtc.googlesource.com/src/的示例项目时,它可以正常工作,没有任何问题。但是,当将所有 Java 文件转换为 Kotlin 并运行时,它总是抛出以下错误(无效的 SDP 行)。我确实验证了 Java 和 Kotlin 项目之间的 SDP 是相似的。我也尝试按照某些论坛的建议在 SDP 末尾添加新行,但也没有帮助。

以下是我在尝试创建报价时在 Logcat 中看到的错误:

以下是 SDP:

在基于 Kotlin 的 Android 应用程序中使用 WebRTC 库时,有人见过类似的问题吗?

0 投票
0 回答
780 浏览

android - 如何在android中使用webRTC缩放相机

是否有任何 API 可以在 android 中使用 webRTC来缩放相机。我阅读了这个链接,但我没有在 webRTC 库中找到 setZoom 或 isZoomSupported 方法。请帮我解决这个问题。

0 投票
1 回答
902 浏览

java - 如何在 Webrtc 中增加音量输出

我正在开发一个 webrtc android 应用程序,除了两件事之外,一切都运行良好……它们是;

  1. 将默认声音输出设备从听筒切换到扬声器,反之亦然。我尝试使用此 stackoverflow 线程中的以下代码,但它们不起作用
  1. 并且提高视频性能,视频流有很多滞后,甚至流挂起很多。如果有任何人可以在这方面帮助我,非常感谢。下面是我的 peerConnection 配置

谢谢