webrtc

ICE vs STUN vs TURN

五迷三道 提交于 2021-01-27 13:04:56
问题 I've read that ICE is an agent on the WebRTC server which sends SDP information of users to STUN or TURN server. STUN and TURN server gives this SDP information and makes a P2P connection for the users. Is that true? So, what is the exact difference between STUN and TURN server? If the ICE agent configured with a TURN server, what would be happened with data flow? in this instance, TURN just act as a datagram-forwarder? 回答1: TURN is a relay — both clients send data to the TURN server, which

Why does WebRTC needs ICE protocol to operate?

纵饮孤独 提交于 2021-01-27 13:00:54
问题 As far as I understand, ICE protocol is used for discovering the nodes/devices from the end-user device to "the outside". I don't understand why it's needed. Isn't packet-routing is the responsibility of network devices like routers and switches? They should find the shortest path from the gateway to the end-user device (Actually, routers remembers those routes they previously discovered). Moreover, NAT protocol is used to convert from an "internal ip" to "external ip" and vice-versa. So

how to ice restart?

人走茶凉 提交于 2021-01-27 05:22:43
问题 I am developing a voice chatting app based on webRTC using android libjingle .I want to reconnect users by using ice restart when they change their network from wifi to 4g or vice versa, or are disconnected. I have a question about implementing it by using libjingle . I will write down how to implement ice restart function based on what I understood so let me know there is anything wrong. Q: As I understand, at first I need to set ice start option to be true in the MediaConstraints option

H5视频可视化播放RTSP/RTMP/HLS/HTTP视频流媒体的几种可行方案

若如初见. 提交于 2021-01-24 09:25:48
经过多年的项目实战和研发经验的积累,总结了一下对于H5视频可视化在视频播放上如何做到无插件H5展示的方法,尤其是契合安防行业的方案; 除了HTTP、WebSocket类的传输协议,其他是无法通用地传输到浏览器的,所以,如果要做一款通用的H5视频播放器,基本上就是一款HTTP/WebSocket协议的视频播放器,如果是类似于RTMP、RTSP类型协议的视频源,是不可避免,需要经过服务器转换的,那么我们可以总结Web网页可视化直播的几个刚性需求: H5播放只支持HTTP、WebSocket协议的流媒体源; 需要同时支持H.264、H.265视频编码格式; 支持低延时的实时视频以及录像回放视频; 可行方案一:WebSocket透传 通过WebSocket代理服务器,建立透传通道,转发各种不同协议的视频流,WebSocket类似于一个管道,只做原样的数据转发,将源设备与H5客户端之间建立一条由WebSocket包裹的传输通道,具体的协议交互过程还是按照原协议进行,RTSP、SIP类的文本协议按照文本协议的方式,RTMP类的字节流协议按照字节流协议的方式; 方案难点: 前端兼容性开发难度高:前端对于各种信令协议、字节流协议、以及解包、缓冲区、时间戳同步、解码、显示、播放,都要开发,对于前端开发的要求比较高; H.265播放技术:安防场景下,大部分摄像机都采用的是H.265编码格式,所以

Streaming video with transparent pixels using webrtc

我的未来我决定 提交于 2021-01-22 19:18:54
问题 I am trying to capture html5 canvas using captureStream API which has drawings on it and play it using html5 video tag. Problem I am facing is, when I capture the stream and play it with in video tag It plays exactly same. But when I send that stream to the another peer (webRTC Streaming Using Licode MCU) and play it there. It gets played with the black background. i.e. video is not transparent anymore. Has anyone encountered this before? What could be the issue: Is it the issue with the

Streaming video with transparent pixels using webrtc

╄→гoц情女王★ 提交于 2021-01-22 19:18:02
问题 I am trying to capture html5 canvas using captureStream API which has drawings on it and play it using html5 video tag. Problem I am facing is, when I capture the stream and play it with in video tag It plays exactly same. But when I send that stream to the another peer (webRTC Streaming Using Licode MCU) and play it there. It gets played with the black background. i.e. video is not transparent anymore. Has anyone encountered this before? What could be the issue: Is it the issue with the

Streaming video with transparent pixels using webrtc

妖精的绣舞 提交于 2021-01-22 19:14:15
问题 I am trying to capture html5 canvas using captureStream API which has drawings on it and play it using html5 video tag. Problem I am facing is, when I capture the stream and play it with in video tag It plays exactly same. But when I send that stream to the another peer (webRTC Streaming Using Licode MCU) and play it there. It gets played with the black background. i.e. video is not transparent anymore. Has anyone encountered this before? What could be the issue: Is it the issue with the

Streaming video with transparent pixels using webrtc

江枫思渺然 提交于 2021-01-22 19:14:14
问题 I am trying to capture html5 canvas using captureStream API which has drawings on it and play it using html5 video tag. Problem I am facing is, when I capture the stream and play it with in video tag It plays exactly same. But when I send that stream to the another peer (webRTC Streaming Using Licode MCU) and play it there. It gets played with the black background. i.e. video is not transparent anymore. Has anyone encountered this before? What could be the issue: Is it the issue with the

新“终结者” Chrome 88 发布,三大终结性变化

a 夏天 提交于 2021-01-21 11:19:34
新“终结者” Chrome 88 发布,三大终结性变化 据 zdnet 报道,刚刚发布的 Chrome 88 中带来了三个重要的终结性变化: 正如之前一直宣传的,它取消了 Flash 支持。根据 W3Techs 的数据,目前只有 2.2% 的网站使用了 Flash ,这个数字比 2011 年初记录的 28.5% 大幅下降。该版本也取消了对 ftp:// 协议支持。这个过程早在 Chrome 86 中就开始了:Chrome 86 - 大多数用户默认情况下仍然启用 FTP;Chrome 87 - 默认情况下,50% 的用户将禁用 FTP 支持;Chrome 88 全部禁用。Chrome 现在也阻止下载“混合的、不安全的” HTTP 文件。当用户正在访问一个以 HTTPS 开头的网页,但文件是从一个以 HTTP 开头的 URL 下载的。从 Chrome 88 开始将完全阻止这些情况,以保护用户。 除此以外,该版本还取消了对旧的 DTLS 1.0 协议的支持,它是 WebRTC 支持的一部分;还放弃了对 OS X 10.10 的支持;阻止了标签抢占攻击。 硬核老王点评:这个版本可以称之为“终结者”了,除了 Flash 之外,另外两项变化也相当重要。 Elastic 采用新的许可证 SSPL 限制商业使用 据 solidot 报道,开发 Elasticsearch 和 Kibana 的公司

WebRTC - change video stream in the middle of communication

巧了我就是萌 提交于 2021-01-21 05:16:04
问题 My goal is to enable screen sharing in the middle of a video or audio call using webrtc web application . Well I found that I can use MediaStreamTrack.applyConstraints() to change video property but is it possible to change the video source ? further more how can I add video to an existing audio stream . I need this to work on chrome only for now . 回答1: As of today, I feel a better approach for your case would be to use the RTCRtpSender.replaceTrack method. Assuming your camera stream is