标签: webrtc

无法在443上运行节点js应用程序监听

我有一个套接字应用程序,我试图在端口443(https)上进行监听.如果我改变端口(例如8080)我没有问题.

显示的错误是

error raised: Error: listen EACCES
Run Code Online (Sandbox Code Playgroud)

我的应用源代码是:

var fs = require('fs');

// create the https server and listen on port
var options = {
    ca:   fs.readFileSync('ca.pem'),
    cert: fs.readFileSync('cert.pem'),
    key:  fs.readFileSync('server.key')
};

var server = require('https').createServer(options);
var portNo = 443;
var app = server.listen(portNo, function() {
  console.log((new Date()) + " Server is listening on port " + portNo);
});

// create the socket server on the port
var io = require('socket.io').listen(app);


// This callback function is called every time a …
Run Code Online (Sandbox Code Playgroud)

javascript node.js socket.io webrtc

2
推荐指数
1
解决办法
5023
查看次数

是否可以使用ICE直接连接,然后在WebRTC中直接进行点对点信令?

我一直在寻找RTCPeerConnection使用WebRTC以分散的方式建立一个.这意味着仅使用服务器进行NAT遍历.

我知道信令过程是必要的,但是可以直接与对等方交换RTCSessionDescription对象,而不必使用其他通信信道吗?

javascript html5 rtp webrtc

2
推荐指数
1
解决办法
1225
查看次数

WebRTC-如何设置始终使用TURN服务器?

在标准规格中,您可以将ENUM值设置为“中继”:http : //dev.w3.org/2011/webrtc/editor/webrtc.html#idl-def-RTCIceServer

但是,如何使用以下Javascript将枚举设置为“中继”? if (tmp.indexOf("typ relay ") >= 0) {从来没有发生在我的测试中。我怎么能强迫它枚举“继电器”?

要么

这是一个错误吗?https://code.google.com/p/webrtc/issues/detail?id=1179

任何的想法。

function createPeerConnection() {
  try {
    // Create an RTCPeerConnection via the polyfill (adapter.js).
    pc = new RTCPeerConnection(pcConfig, pcConstraints);
    pc.onicecandidate = onIceCandidate;
    console.log('Created RTCPeerConnnection with:\n' +
                '  config: \'' + JSON.stringify(pcConfig) + '\';\n' +
                '  constraints: \'' + JSON.stringify(pcConstraints) + '\'.');
  } catch (e) {
    console.log('Failed to create PeerConnection, exception: ' + e.message);
    alert('Cannot create RTCPeerConnection object; \
          WebRTC is not supported by this …
Run Code Online (Sandbox Code Playgroud)

javascript enums google-chrome webrtc rfc5766turnserver

2
推荐指数
2
解决办法
6146
查看次数

Skype就像Microsoft Azure Media Services上的应用程序一样

目前我正在研究类似"Skype"的应用程序.例如人们视频通话给其他人.现在我想在Microsoft Azure Media Services上运行它.但是我不太确定这是否可行.

我发现这个视频解释了如何从您的计算机网络摄像头制作一个简单的流.他们在那里做的是创建一个Channel(在Azure环境中手动)并流式传输到ingest url.结果可以在中看到publish url.

到现在为止还挺好.我理解这一点.但这种方法不适用于让人们与其他人进行视频聊天.(每个"视频聊天"都需要它自己的Channel假设)并且手动创建它们是行不通的.

所以我发现有一个REST API.要创建渠道通过REST.哪种可能性.但创建单曲Channel需要30秒.所以这也不是我想的方式.

我想我的问题归结为这个.是否可以在Windows Azure(媒体服务)上运行类似Skype的应用程序,如果可以的话.怎么样?

azure videochat http-live-streaming webrtc azure-media-services

2
推荐指数
1
解决办法
2351
查看次数

如何使用webRTC-adapter的adapter.js?

我正在编写WebRTC应用程序,并且存在以下问题:

我想使用adapter.js库。

我有以下index.html:

<html>
  <header>
     <script src='../out/adapter.js'></script>
     <script src='../out/main.js'></script>
  </header>
  <body> 
    <video id="localVideo" width='500' autoplay></video> 
  </body>
</html>
Run Code Online (Sandbox Code Playgroud)

和我的main.js看起来像:

var adapter=require('webrtc-adapter');
var localVideo=document.querySelector('video#localVideo');
navigator.getUserMedia(media_constraints, handleUserMedia, handleUserMediaError); 
function handleUserMedia(stream) {        
   localStream = stream;        
   adapter.attachMediaStream(localVideo, stream);        
   console.log('Adding local stream.');  
}
Run Code Online (Sandbox Code Playgroud)

但是我的浏览器记录了错误: Uncaught ReferenceError: require is not defined

rtc node.js webrtc openwebrtc

2
推荐指数
1
解决办法
1万
查看次数

如何检测Android H.264硬件加速功能

大量(尽管不是全部)Android设备支持H.264视频编解码器的硬件加速,但不支持VP8/VP9编解码器.为了提供更高质量的用户体验,我们希望尽可能选择硬件加速的编解码器.因此,希望运行时检测特定设备是否具有H.264硬件加速支持,并且基于此将设置在SDP中用于webRTC对等连接的会话协商的特定编解码器.即,如果硬件支持H.264,则将其设置为优先级较高的编解码器而不是VP8/VP9.对此的任何想法将不胜感激.

android webrtc mediacodec

2
推荐指数
1
解决办法
4049
查看次数

WebRTC getUserMedia()仅适用于Firefox

我正在开发一个移动网络项目,需要访问相机并拍照并进行操作.问题是我们需要直接从浏览器拍摄照片,而不是打开原生相机应用程序来拍摄它.

好的,我使用WebRTC来完成这项任务.我访问getUserMedia()并播放"视频",即实时摄像机视图.此任务适用于Android和iOS.

这适用于Firefox.我认为在Safari中这是不可能实现的,因为getUserMedia()这个浏览器仍然不支持,但Google Chrome有支持,但我无法在Chrome上运行.

Chrome上的问题似乎是用户无法选择后置或前置摄像头的错误,因此图像永远不会显示,它始终是黑色图像.

我的代码非常简单,我从https://davidwalsh.name/browser-camera获取它,但理论上它适用于所有浏览器,但我无法在Chrome上运行.这是代码:

<video id="video" width="480" height="640" autoplay controls></video>
<button id="snap">Capture</button>
<canvas id="canvas" width="480" height="740"></canvas>

<script>
// Grab elements, create settings, etc.
var video = document.getElementById('video');
var i = 0;
// Get access to the camera!
if(navigator.mediaDevices && navigator.mediaDevices.getUserMedia) {
    // Not adding `{ audio: true }` since we only want video now
    navigator.mediaDevices.getUserMedia({ video: true }).then(function(stream) {
        video.src = window.URL.createObjectURL(stream);
        video.play();
    });
}
else if(navigator.getUserMedia) { // Standard
    navigator.getUserMedia({ video: …
Run Code Online (Sandbox Code Playgroud)

javascript firefox google-chrome webrtc getusermedia

2
推荐指数
1
解决办法
886
查看次数

通过HTTPs的WebRTC问题

我创建了一个简单的WebRTC应用程序,可以很好地测试本地主机。但是,除非您有安全的连接,否则WEBRTC不会有太大用处,因为除非您具有HTTP,否则浏览器现在将不会运行GetUserMedia,因此我正在“尝试”对其进行升级,以用于SSL-TLS。下面是我的两个应用程序并排的屏幕截图,一个安全(不起作用),另一个不安全(起作用

在此处输入图片说明

如您在上面看到的,本地主机“连接”,而HTTP“无法建立连接”。我是SSL新手,所以这可能很简单。请多加关注。

我确实知道我的Javascript HTTPS服务器已安全连接,请参见下图在此处输入图片说明

以下是我的代码段。任何帮助将不胜感激:

SSL客户端-Client.JS

var connection = new WebSocket('wss://localhost:8443'),

name = "";
Run Code Online (Sandbox Code Playgroud)

非安全客户端-Client.JS

var connection = new WebSocket('ws://localhost:8888'),

    name = "";
Run Code Online (Sandbox Code Playgroud)

非安全JS服务器-index.JS

var WebSocketServer = require('ws').Server,

wss = new WebSocketServer({ port: 8888 }),

users = {};
wss.on('connection', function (connection) {
connection.on('message', function (message) .....
Run Code Online (Sandbox Code Playgroud)

安全JS服务器-SSLindex.JS

 Var https = require('https'),

fs = require('fs'),

 express = require('express'),

  app = express();


var wss = https.createServer({
key: fs.readFileSync('server.key'),

cert: fs.readFileSync('server.crt'),

ca: fs.readFileSync('ca.crt'),

requestCert: true,

rejectUnauthorized: false
 }, app).listen('8443', …
Run Code Online (Sandbox Code Playgroud)

node.js webrtc

2
推荐指数
1
解决办法
3170
查看次数

Chrome麦克风权限

我正在使用节点js和webrtc开发VOIP应用程序.当我将IP从localhost更改为192.168时,我在使用chrome时被拒绝麦克风时出现问题.....

当我在localhost上启动我的应用程序时,它在chrome和firefox上运行良好,但是当我在PC的IP上启动它时,它只适用于firefox.这可能是因为我的服务器在HTTP上工作而不是HTTPS吗?

谢谢!

javascript voip google-chrome webrtc

2
推荐指数
1
解决办法
1547
查看次数

WebRTC:自Firefox v 53以来ICE失败了

我的webRTC项目出了问题.我的代码在Chrome和Firefox上运行良好,直到版本52.自从Firefox 53我得到错误:"ICE失败,请参阅:webrtc了解更多详情".这是我的代码:

let connection;
let dataChannel;

 const initCon = (initiatorBoolean, choosenONE) => {
     createConnection();
     startConnection(initiatorBoolean, choosenONE);
     console.log('initCon(' + initiatorBoolean + ') / choosenONE = ' +choosenONE);
 }
var boolJoin =  false;
var lobbies = [];
var me = prompt("Please enter your name", "Bert");


// Helper für das Errorlogging
const logErrors = err => console.log(err);

// Websockets-Verbindung herstellen
const socket = io.connect('http://7daysclub.de:8080');

/* Methode to send information between to Users
*@param
*receiver= User who get the message
*type= Type of the …
Run Code Online (Sandbox Code Playgroud)

webrtc

2
推荐指数
1
解决办法
2533
查看次数