天道酬勤,学无止境

webrtc

WebRTC shim for browsers that don't support WebRTC

Not a lot of browsers support WebRTC yet, but there's a lot of cool WebRTC stuff to play with -- PeerDB, etc. Is there any sort of shim for spoofing a WebRTC API in the browser (so that things like PeerDB will just work), but which actually communicates outside the browser using something other than WebRTC? Is that even technically feasible? Why or why not?

2022-01-17 07:40:29    分类:问答    webrtc

带有预编码 H.264 视频流的 Android WebRTC 客户端(Android WebRTC client with pre-encoded H.264 video stream)

问题 我有一个发送 H.264 编码视频字节的视频流源。 我想用 Android 的 WebRTC 类构建一个应用程序,将此视频流发送到 WebRTC 对等点。 这些内置类似乎只支持原始视频源......不支持编解码器已处理的视频。 我只需要创建一个只有一个视频编解码器/比特率配置的报价。 对于我的用例,我不需要自动调整带宽使用量,也不需要提供除原始 H.264 字节流之外的任何编解码器。 有没有办法为此使用内置的 Android WebRTC 类? 如果没有,是否还有另一组 WebRTC 类? 或者,我是否必须重新实现一些东西来创建 SDP 提供并执行所有对等连接,而不是什么?

2022-01-16 15:43:56    分类:技术分享    android   webrtc

Android WebRTC client with pre-encoded H.264 video stream

I have a video stream source that sends bytes of H.264-encoded video. I'd like to build an application with Android's WebRTC classes, to send this video stream to a WebRTC peer. These built-in classes seem to only support raw video sources... not video already processed by a codec. I simply need to create an offer with only one video codec/bitrate configuration. For my use case, I don't need to autoscale the bandwidth usage, nor offer any codecs other than the original H.264 stream of bytes. Is there a way to utilize the built-in Android WebRTC classes for this? If not, is there another set of

2022-01-16 08:46:31    分类:问答    android   webrtc

电子中的 WebRTC 屏幕共享(WebRTC Screensharing in electron)

问题 我们有一个网络应用程序,我通过在 browserWindow 中加载 URL 来构建电子应用程序。 但是当我尝试共享屏幕时,它会给我一个弹出窗口,说请安装 janus webRTC 屏幕共享插件并重新启动浏览器。 请帮忙 ! 回答1 您需要在电子中实现自己的桌面选择器对话框。 看这里

2022-01-16 07:40:21    分类:技术分享    webrtc   electron   janus-gateway

如何修复不可靠的 WebRTC 调用?(How to fix unreliable WebRTC calling?)

问题 WebRTC 调用在我们的应用程序中并不可靠。 有时我们会看到黑屏,有时我们根本看不到通话开始,有时会出现巨大的延迟或音频/视频不同步。 设置: Google 的公共 STUN 服务器stun:stun.l.google.com:19302 ; TURN 服务器是Coturn托管在 docker 中的 azure 中; 信令服务器是一个定制的 https://github.com/andyet/signalmaster,使用 express 作为 web 服务器在客户端使用 JS,以simplewebrtc作为客户端; 对于 iOS 支持,使用 Cordova 插件 - https://github.com/eface2face/cordova-plugin-iosrtc 几乎100% 重现的问题是从 LTE 上的一个客户端呼叫 Wi-Fi 上的另一个客户端。 在这种情况下,我们在两个设备上都看到黑屏,但是,默认的 bg-color 是白色的,所以至少 WebRTC 端发生了一些事情。 为解决问题所做的工作: 检查 Coturn 日志......有时我们会在那里看到“未经授权”的错误,但很难说它们是否会影响任何东西; 检查 Coturn 的流量:在 Wi-Fi 到 Wi-Fi 的情况下,它的流量很低,因此确实建立了点对点连接。 如果有 LTE,我们会看到大约 40

2022-01-16 07:34:33    分类:技术分享    cordova   webrtc   simplewebrtc   coturn   signalmaster

How to fix unreliable WebRTC calling?

WebRTC calls are not reliable in our application. Sometimes we see the black screen, sometimes we don’t see call start at all and sometimes there are seen huge delays or de-sync in audio/video. Setup: Google’s public STUN server stun:stun.l.google.com:19302; TURN server is Coturn hosted in azure in docker; Signaling server is a customized https://github.com/andyet/signalmaster that using express as a web server On client JS is used, with simplewebrtc as client; For iOS support used Cordova plugin - https://github.com/eface2face/cordova-plugin-iosrtc Almost 100% reproduced issue is calling from

2022-01-16 03:40:41    分类:问答    cordova   webrtc   simplewebrtc   coturn   signalmaster

WebRTC Screensharing in electron

We have a web app to which I'm building electron app by loading URL in browserWindow. But when i try to share the screen it will give me a popup saying Please install the janus webRTC screen sharing plugin and restart the browser. Please help !

2022-01-16 03:19:12    分类:问答    webrtc   electron   janus-gateway

在 xcode 版本 10.2 中为产品类型“应用程序”签署二进制文件时,空标识无效(An empty identity is not valid when signing a binary for the product type 'Application' in xcode version 10.2)

问题 我已经编译了 webrtc ios 源代码,然后我使用了命令: gn gen out/ios --args='target_os="ios" target_cpu="arm64"' --ide=xcode 然后我用 Xcode 打开工作区。 但是当我编译代码时,Xcode 在下面给出了这个错误。 为产品类型“应用程序”签署二进制文件时,空标识无效。 (在目标“AppRTCMobile”中) 我的 Xcode 版本是 10.2,最新版本。 我真的不知道这是怎么发生的,任何人都可以帮助我吗? 我的代码符号设置是: 一切看起来都很好。 回答1 我添加了CODE_SIGNING_ALLOWED=NO作为附加参数,这为我解决了这个问题。 回答2 我需要关闭Automatic manage signing ,然后再打开它。 似乎 Xcode 确实通过该操作解决了一些不一致问题。 回答3 在 Xcode 12.2b 中构建以在设备上运行时,我看到了这个错误,但我没有将签名设置为自动或选择的配置文件等。 基本上我在模拟器上运行和测试,然后插入设备进行测试,忘记更改任何签名设置。 对于那种情况,这个错误对于 Xcode 12.x 来说可能是新的。 回答4 如果您使用的是 CocoaPods,请检查您的project.pbxproj是否有(null)引用,存在使BuildFile引用变为

2022-01-16 01:34:59    分类:技术分享    ios   webrtc

直接从冷启动弹出状态(Pop up state directly from coldstart)

问题 我使用 ionic 框架构建了一个 Cordova 应用程序。 它是使用 Peer JS 构建的,每当我的对等方接到来电时,我需要应用程序从冷启动快速打开一个状态,有点像电话应用程序在我们接到电话时打开来电活动。 目前我正在使用离子推送通知来打开单击通知的状态,但这需要很长时间并且从启动屏幕开始加载。 有没有办法将包含接收呼叫代码的状态快速弹出到前台 回答1 对于 Cordova,我想出的技巧是, 首先,将来电代码分离成一个带有所需javascript代码的html页面。 接下来,发送带有特定有效负载的通知,然后在 phonegap 推送插件的 onRecieve 方法中,我检查有效负载,如果它与特定有效负载匹配并且如果应用程序被终止,我使用意图打开包含的主要活动cordova webview,我根据意图在这里加载了html页面。 这使它看起来好像应用程序“弹出打开”。

2022-01-15 23:26:25    分类:技术分享    android   performance   ionic-framework   webrtc   peerjs

一对多 webrtc(One to many webrtc)

问题 我想创建一个“一对多”(最多 3 个设备)webrtc 设置。 我有一台设备是我的主要设备。 其他设备正在连接到该设备。 您可以考虑对讲机。 使用他们正在连接的一台设备。 我有此代码可用于一对一连接。 import AVFoundation import UIKit import WebRTC import SocketIO import CoreTelephony import ReachabilitySwift let TAG = "ViewController" let AUDIO_TRACK_ID = TAG + "AUDIO" let LOCAL_MEDIA_STREAM_ID = TAG + "STREAM" class ViewController: UIViewController, RTCPeerConnectionDelegate, RTCDataChannelDelegate { var mediaStream: RTCMediaStream! var localAudioTrack: RTCAudioTrack! var remoteAudioTrack: RTCAudioTrack! var dataChannel: RTCDataChannel! var dataChannelRemote: RTCDataChannel! var roomName

2022-01-15 21:03:57    分类:技术分享    swift   webrtc