问题标签 [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 回答
339 浏览

webrtc - 移动浏览器的 WebRTC ondevicechange 解决方法

根据https://developer.mozilla.org/en-US/docs/Web/API/MediaDevices/ondevicechangeondevicechangeChrome Android 和 Safari iOS 不支持该事件。

那么在会话期间是否有任何替代或解决方法来检测设备更改?

0 投票
0 回答
960 浏览

android - Android位图到WebRtc I420帧损坏

尝试通过 WebRtc 流式传输位图。我的 Capturer 类大致如下所示:

生成的流如下所示:

损坏的帧

下面,我将尝试给出迄今为止我的实验结果。

  1. 如果框架旋转到 90 度 - 流看起来很正常。

    /li>

框架旋转

  1. 试图交换 TextureBuffer 大小

    /li>

帧交换

  1. 还尝试将高度作为高度和宽度传递

    /li>

拉伸框架

我在这里很困惑。尽管所有尺寸都设置为垂直,但 WebRtc 似乎以某种方式期望水平框架。我尝试将 WebRtc 库中的所有帧缓冲区大小记录到视频编码器,它们是正确的。问题似乎与转换方法无关,因为除此之外,我尝试使用 libyuv 中的 ARGBToI420 进行转换。产生的结果是一样的。

非常感谢任何帮助

0 投票
0 回答
262 浏览

android - 在 Android 应用程序中监控 WebRTC 比特率

我正在尝试使用 WebRTC 在 Android 中开发视频通话应用程序。我需要在视频通话期间向其他呼叫者显示实时视频上传比特率。有没有办法通过控制视频通话期间的带宽来获取上传视频比特率并设置不同的视频质量。

0 投票
0 回答
261 浏览

android - webrtc 本机库中的随机崩溃

当我请求在发布版本中关闭对等连接时,我在某些设备上随机收到此错误。我试图为此设置 pro-guard 规则,但仍然低于错误。请帮我解决这个问题。我的 Proguard 规则:

致命错误:

0 投票
2 回答
1519 浏览

android - WebRTC Android:来自电话扬声器的声音通过电话麦克风进入会议并引起回声

在某些移动设备(如 Motorola One Power - Android 10、Redmi Note 5 Pro - Android 7.1.2)中,来自手机扬声器的声音通过手机麦克风进入会议并引起回声。仅当电话扬声器处于开启状态时才会出现此回声问题。

我使用了 AudioManager 的 MODE_IN_COMMUNICATION 模式:

此外,使用 PeerConnectionFactory 的 createAudioSource() API 在以下音频约束下创建音频源:

解决问题的任何帮助或指导将不胜感激。

0 投票
1 回答
2264 浏览

android - WebRTC Android 回声消除

我想在android中实现语音和视频通话。我使用这个示例项目作为参考:Amazon Kinesis Video Streams Android WebRTC SDK 问题是麦克风拾取了远程声音,这导致了极端的回声效果。我们使用这个版本:

AudioManager 处于这种模式:

这是我们尝试过的,没有任何效果:

和这个:

我真的迷路了。如何在android中激活回声消除?

0 投票
2 回答
825 浏览

webrtc - 使用 DataChannels 的 WebRTC Android 多用户文本聊天

我正在为多用户使用 webRTC 应用程序的网格架构,视频聊天适用于多用户,对于文本聊天,我在创建报价的对等方上创建了一个 dataChannel,而 onDataChannel 处理程序在另一个对等方上创建了一个 dataChannel。文本聊天适用于 2 个用户,但是当有 3 个用户时,第一个客户端(加入)能够看到所有其他客户端消息,但只能向第二个客户端(加入)发送消息,第二个客户端(加入)是能够看到来自第一个客户端的消息并仅发送给第一个客户端,第三个客户端没有收到消息但可以发送给第一个客户端。

PeerConnection.Observer 中的 onDataChannel 事件处理程序

在创建 peerConnections 时创建 DataChannel

发送消息

0 投票
2 回答
143 浏览

java - 从指针获取 WebRtc AudioTrack

有什么方法可以从这个指针中获取 audioTrack 吗?

我想在不分叉 webrtc 的情况下使用 ByteBuffer 或类似的东西获得真正的流

0 投票
0 回答
394 浏览

android - 应用程序在断开呼叫 webRTC android 时崩溃

在我的应用程序中,我实现了webRTC. 主持人开始直播,多个客人可以加入他观看他的直播,就像Facebook Live或一样insta Live。但是,当直播直播并且有任何客人时,我会在主持人端断开直播。它崩溃了。日志如下:

我已经正确关闭了对等连接,但我认为这不是我们通过多个连接关闭它的方式。

我一直在寻找 3 三天,但一无所获。

0 投票
0 回答
864 浏览

android - 如何使用 track.applyConstraints() 从 Android Studio Mega 上的 getUserMedia javascript 关闭火炬?

我有一个 Javascript Web 应用程序,它使用.getUserMedia().applyConstraints()和相关的浏览器 API 从移动设备 Web 浏览器捕获一些视频,并使用 Websocket 将其发送到某个地方。捕获和发送的东西运行良好。

我已经实现了一个小用户界面,让我的用户打开和关闭手电筒(为相机提供光线的 LED 灯。)

在大多数 Android 设备上,此 UI 可以正常打开和关闭手电筒。但不适用于 Android Studio Mega(运行 Android 8.1.0 和移动 Chrome 81.0.4044.138 的 Build/O11019)

注意:Studio Mega 是 Android 型号名称,与 Android Studio 无关。

在那个设备上,我可以很好地打开手电筒,但它忽略了我关闭手电筒的请求。我使用这样的代码:

这个 Studio Mega 设备实际上有两个手电筒,一个在后置摄像头上,另一个在自拍摄像头上。我的 UI 打开了我希望它打开的那个(与当前活动的相机关联的那个)。但不关。

按预期关闭stream手电筒(在我尝试过的所有机器人上)。

有没有其他方法可以关闭手电筒?或者这可能是浏览器、WebRTC 或设备错误?

(对于它的价值 iOS / 移动 Safari 没有火炬功能。所以也许我应该认为这是一个会说话的驴子问题——我应该对它的工作感到惊讶,而不是对它奇怪的工作感到恼火。)