问题标签 [rtcdatachannel]
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.
android - 无法使用 DataChannel 从 Chrome 网络应用程序到 Android 应用程序进行 webrtc 调用
我在: https ://github.com/wennycooper/wsProject上写了一个 webrtc webapp(带有视频 + 音频 + 数据通道)
我也在上面写了一个 Android webrtc 应用程序:
https ://github.com/wennycooper/webrtcClient
webapp-to-webapp 调用工作正常。没有数据通道的 androidapp-to-androidapp 也可以正常工作。
我试图将数据通道代码添加到 androidapp 并从 webapp 调用 androidapp。当被调用者收到Offer时,它显示以下错误:
完整的 adb 日志在这里:
https ://s3-us-west-2.amazonaws.com/kkwebrtc/webrtcAndroid_callee.txt
我不知道是怎么回事??
任何人都可以提供带有数据通道的工作示例,将不胜感激。
javascript - Webrtc datachannels:在传输大文件时将数据保存在文件中
我正在使用 WebRTC 数据通道来构建文件传输服务。
对于小于 30 Mb 左右的较小文件,它的运行非常好。现在在接收端,我只是将文件数据保存在内存中,当所有数据传输完毕后,我保存文件。
有点像这样:
所以我想将数据保存在磁盘上的文件中,然后直接写入该文件。但是我该怎么做呢?
android - WebRTC onMessage() 不会在 Android 上触发
我试图在 Android 上实现数据通道。我使用数据通道成功地将数据从 android 发送到 web。
但是,每当我尝试将数据从网络发送到 android 时,android 都不会收到数据,并且永远不会触发 onMessage()。
我不明白为什么会这样。这是我实现 DataChannel.Observer 的方法。
我为每个 PeerConnection 对象创建对象。我有这个包含 PeerConnection 对象的类。
这就是 PcObserver 类的样子。
我想我做错了什么peer.dc.registerObserver(dcObserver);
但我不知道是什么。
ios - RTCDataChannel 不工作 iOS
我正在使用 RTCDataChannel。但是我通过通道发送的消息没有在其他对等方接收。
这是代码:
javascript - 为二进制块创建元数据以通过 WebRTC 数据通道发送
我在两个浏览器之间有一个数据通道连接,并且想将文件分成块并将它们发送到客户端/从客户端发送。
我可以读取文件并将其分解成块就好了。但是我需要一种让接收客户知道的方法
数据块与哪个文件相关(唯一标识符)。
块适用于重建的位置(索引号)。
在浏览器中传输二进制数据时,似乎整个有效负载必须是二进制的。因此,例如,我不能创建具有上述属性的 JSON 对象,并具有具有data
实际二进制块的属性。
我想我需要将文件块包装到包含标识符和索引的辅助二进制 blob 中。然后接收客户端将解码第一个包装器块以检查元数据,然后根据该信息处理实际的文件块。
如何在浏览器中执行此操作?我已经做了很多谷歌搜索,但似乎找不到任何关于这方面的信息,所以想知道我是否可能忽略了一些可以帮助简化这个过程的东西?
webrtc - 如何关闭 webrtc 数据通道?
我不能使用以下方法。
因为我只使用数据通道(不使用 getUserMedia)
有没有办法关闭数据通道?
compression - 使用 gzip 压缩的 WebRTC 数据通道
permessage-deflate
数据在通过 WebSocket 发送到服务器之前在内部使用扩展名进行压缩。WebRTC 怎么样?数据通道 API 是否支持压缩?
javascript - 已实现信令的工作 Hello World WebRTC 数据通道示例
目的是使其成为社区 Wiki帖子,并保持最新状态,以便有兴趣使用 WebRTC 数据通道实现 JSON 消息浏览器到浏览器 (p2p) 通信的开发人员拥有简单而实用的示例。
WebRTC 数据通道是实验性的,仍处于草案阶段。目前,网络似乎是过时 WebRTC 示例的雷区,如果开发人员正在尝试学习 RTCDataChannel API,则更是如此。
现在在兼容WebRTC 的浏览器上运行的简单但功能强大的 1 页示例似乎很难找到。例如,一些示例省略了信号实现,其他示例仅适用于单个浏览器(例如 Chrome-Chrome),许多示例由于最近的 API 更改而过时,还有其他示例非常复杂,以至于阻碍了入门。
请发布符合以下标准的示例(如果不符合,请说明):
webrtc - WebRTC 数据通道缓冲已满
首先,我希望你明白我不擅长英语。
对于文件传输,在 Mesh 拓扑中,在 Chrome 中,
当缓冲量为 16MB 时,通道关闭并显示错误消息。
“未捕获的 NetworkError:无法在 'RTCDataChannel' 上执行 'send':无法发送数据”
(它在 chrome 中,而不是在 firefox 中。)
如何发送文件(超过 16MB)?
文件工作者.js
文件发送者
webrtc - 当配置可靠 = true 时 RTCDataChannel 是否比 Websockets 更快?
我正在阅读并试图了解 WebRTC 的 RTCDataChannel。据我了解,Websockets 位于 TCP 之上,并且比作为 WebRTC 基础的 SCTP 具有更高的延迟,例如,当在服务器和浏览器之间发送二进制数据时,这也可能是 WebRTC 中的 2 个对等点。当 RTCDataChannel 设置为不可靠模式(可能丢包但速度更快)时,其底层 SCTP 变得类似于用户数据报协议 (UDP),当设置为可靠时,它变得类似于 TCP。
RTCDataChannel 在配置为可靠(“类似 TCP”)时是否仍然比 Websockets (TCP) 快,如果是,那么快多少?