为什么UV4L WebRTC信号websocket超时?

时间:2018-11-04 17:43:48

标签: websocket webrtc uv4l

我正在尝试将webRTC流本机发送到Android设备(没有webview)。

我已经在应用程序中实现了自己的自定义信令类,并且正在尝试对其进行测试。问题是,当我启动UV4L并尝试连接到ws://myIp:portNumber处的信令套接字时,它会超时。

在进行故障排除期间,我迅速在服务器计算机上的python中安装了一个简单的websocket服务器,并确保可以从公共互联网访问它,因此我知道这不是我的端口被阻止或类似的事情。我是否为信令套接字使用了错误的URL?我在UV4L文档中找不到关于它的任何内容。当我从浏览器访问默认网页时,WebRTC流可以正常工作,因此我知道那不是问题。

这些东西的文档充其量是糟糕的。

当使用提供自定义HTML页面的自定义服务器时,我看到一些与设置websocket端点有关的配置选项,但是我根本不需要任何网页-我只需要websocket发出信号即可。

编辑:我进行了一些摸索,发现以下两行JavaScript与Web页源代码中可能起作用的默认页面有关:

 var signalling_server_hostname = location.hostname || "ipAddress censored";
 var signalling_server_address = signalling_server_hostname + ':' + (location.port || (location.protocol === 'https:' ? 443 : 80));

我并不是真的会说流利的JavaScript,所以我不确定在这里看到的某些语法。我假设||在这里是美化的null检查吗?

1 个答案:

答案 0 :(得分:0)

我通过浏览默认页面的JavaScript找出了答案。

我需要的网址是ws://ip:port/stream/webrtc

我仍在努力使实际流正常工作-谁知道我是否正在按照正确的方式进行操作,但至少我现在能够连接到信令服务器。