Tag: webrtc

WebRTC到Node.JS服务器和stream作为RTP

我想问一个实验性的问题。 所以,我有一个WebRTCstream,需要XBMC / Kodi的播放器。 我正在计划这一点,我认为最大的问题是转换和发送stream(请注意,这是没有任何原型代码)。 这是计划: 获取stream(让我们忽略这个) 通过WebSocket发送stream到Node.JS(不应该那么辛苦,只要这是可能的,因为我不知道) 通过Node.JS中的WebSockets接收stream 转换stream 把它作为XBMC / Kodi可以接受的东西(比如RTP) 最后2位是最难的,我不知道该怎么做。 有人可以帮我吗?

WebRTC:一对一audio呼叫不在不同的机器上工作

我正在尝试使用webRTC(使用websockets发送信号)实现一对一的audio通话。 但是,当我尝试在一个系统使用多个选项卡的铬(本地主机)时,它的工作原理。 当我尝试从另一台机器上打我的服务器时,它会进行初始握手,但是不会发生呼叫。 但是,当我尝试更改标签,并更改约束video约束。 即使我们试图从其他机器访问(即video通话),它也能正常工作。 我最初认为这是因为如果防火墙,但当video通话工作,我感到困惑。 这是我的代码: // Constraints to get audio stream only $scope.constraints = { audio: { mandatory: { googEchoCancellation: true }, optional: [] }, video:false }; navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia; // success Callback of getUserMedia(), stream variable is the audio stream. $scope.successCallback = function (stream) { if (window.URL) { […]

WebRTC与PeerJS:iceConnectionState断开连接?

我在我的每台机器上都有一个节点应用程序, 这个应用程序在本地主机上使用PeerServer密钥运行。 当我尝试在两者之间发起呼叫时,build立连接(如在接收方说它接收到来自发送方的呼叫)。 但是,媒体stream也被启动(黑盒子显示在video格),然后连接停止,因为“iceConnectionState断开连接”。 什么可能导致这个问题? 这是一些configuration问题? 我使用两台运行优胜美地的Mac电脑。

在Android应用和Chrome客户端之间build立DataChannel

所以我在创buildandroid应用程序客户端和在Chrome上运行的Web应用程序客户端之间创build一个数据通道时,陷入了datachannel困境。 以下是我完整的audio和videostream正确的代码。 但是当我尝试使用DataChannel发送消息时,它将返回False和State作为CONNECTING。 我试图从1周后解决,但无法运行。 编辑:问题已解决。 这是最后的工作代码。 Android不再支持RTPDataChannel Home.java public class Home extends Activity { public List<PeerConnection.IceServer> iceServers; private GLSurfaceView videoView; public static SocketIO socket; ArrayList<String> userIDs = new ArrayList<>(); private static final String FIELD_TRIAL_VP9 = "WebRTC-SupportVP9/Enabled/"; String RoomId = ""; String sreverURL = "http://xx.xx.xx.xx:xxxx/"; private EditText roomid; private VideoRenderer.Callbacks remote_view; private VideoRenderer.Callbacks local_view; protected PeerConnectionFactory […]

RecordRTC将video上传到节点js服务器

我正在使用录制webrtc会议的RecordRTC。 实施录音后,当我testing这个应用程序,如果两个客户端在同一个系统,那么它的工作正常。 当我在不同的系统上testing这个应用程序时,它工作不正常,会议不logging。 这里是我停止录制客户端的代码。 recordRTC.stopRecording(function (videoURL) { console.log('recordRTC.stopRecording Function inside'); SelectedFile = recordRTC.getBlob(); $('#uploadForm').append('#attachmentFileId', recordRTC.getBlob()); StartUpload(); }); var FReader; var Name = "Meeting" + "_" + Date.now() + ".webm"; function StartUpload() { FReader = new FileReader(); FReader.onload = function (evnt) { socket.emit('Upload', { 'Name': Name, Data: evnt.target.result }); } socket.emit('Start', { 'Name': Name, 'Size': SelectedFile.size […]

WebRTC P2P网状拓扑中的报价/响应顺序

我正在使用Web套接字服务器(节点JS)充当信号服务器。 我想创build一个P2P网状networking – 每个人都互相连接 。 在下列情况下,操作/事件的顺序是什么? 第一个同伴join 随后的同伴join 是否每个连接的对等体都向信令服务器发送报价,然后发送给所有其他连接的对等体? 我不确定这是否正确。

stream媒体摄像头rtmp与

最好的办法是什么如果我不想使用闪存? 我听说过有关WebRTC,但从getUserMedia获取input并将其传输到媒体服务器,然后将该数据移动到rtmpstream是可行的吗?

build立科特努

我正在尝试为我的webRTC应用程序configuration一个coturn服务器。 尽pipe经过几天的努力,我已经碰到了一堵墙。 我知道我的webRTC node.js应用程序正在使用一个turnserver。 由于我已经获得了一些免费的服务器,但他们不断崩溃,我将需要我自己的。 这是我的日志,当我开始coturn。 ==== Show him the instruments, Practical Frost: ==== 0: TLS supported 0: DTLS supported 0: DTLS 1.2 supported 0: TURN/STUN ALPN supported 0: Third-party authorization (oAuth) supported 0: GCM (AEAD) supported 0: OpenSSL compile-time version: OpenSSL 1.0.2g-fips 1 Mar 2016 0: 0: SQLite supported, default database location is /var/lib/turn/turndb […]

到达WebRTC.io和NodeJS时连接到一个房间

我实际上正在研究一个基于NodeJS,WS,WebRTC.io和socket.io的应用程序。 这个应用程序的目的是将主持人的video广播给多个与会者。 主持人和所有与会者加载Web应用程序,然后主持人启动他的video并将其传送给所有与会者。 对于这种情况,我没有任何问题,但是如果主持人启动他的video,那么与会者join会议室,此与会者无法检索到stream,而我也不知道如何获取此stream。 我尝试了很多解决scheme。 第一个scheme 当一个与会者到达房间时,他通过socket.io发送一条消息给发送他的stream的主机。 问题在于stream以对象的forms到达与会者,而不是MediaStream,因此我无法使用它。 第二解决scheme 当一个与会者到达房间时,他通过socket.io发送一个消息给主机,该主机用window.webkitURL.createObjectURL(rtc.streams[0])发送一个blob,然后我使用这个blob作为video源与会者,但我获得了一个404错误。 这里是两个解决scheme的代码: var isStreamCreated = false; function startVideoLive() { var video = document.getElementById('video'); //Test if peer connection is available for the browser if (PeerConnection) { if (getRole() == 1) { rtc.createStream({ "video": true, "audio": true }, function (stream) { video.src = URL.createObjectURL(stream); video.play(); isStreamCreated = true […]

WebRTC – 如何在提供和答案之后build立对等连接

我有一个node.js运行用户将连接到。 报价和答案将通过node.js生成并发送。 我试图build立一个对等连接,并通过相机stream发送。 我尝试了我的代码,而不使用ICE候选人作为在同一子网中的计算机。 之后我尝试着实施ICE。 我不知道我是否做得对,或者如果计算机在同一个子网上,甚至是需要的。 var localStream; //Connect to signaling server var signalingChannel = io.connect('http://85.134.54.193:8001'); console.log("Connect to signaling server"); var servers = null; var video1; var video2; var audio1; var audio2; var cfg = {"iceServers":[{"url":"stun:stun.l.google.com:19302"}]};//{ "iceServers": [{ "url": "stun:stun.l.google.com:19302" }] }; var con = { 'optional': [{'DtlsSrtpKeyAgreement': true}, {'RtpDataChannels': true }] }; var peerConnection; […]