WebRTC 屏幕共享不适用于美国的 LTE
WebRTC screen share not working on LTE in USA
我正在开发一个 Android 使用 webRTC 进行远程屏幕共享的应用程序。对于 STUN 服务器,我使用 google stun 服务器。它在印度的 WIFI 和 LTE 上运行良好。在美国,它不支持 LTE,但支持 WIFI。
首先,我只使用了 STUN 服务器,然后现在结合了 STUN 和 TURN 服务器,但没有用。
下面是我的代码,
val iceServers = ArrayList<PeerConnection.IceServer>()
iceServers.add(PeerConnection.IceServer("stun:stun.l.google.com:19302"))
iceServers.add(PeerConnection.IceServer("turn:13.250.13.83:3478?transport=udp", "YzYNCouZM1mhqhmseWk6", "YzYNCouZM1mhqhmseWk6"))
return iceServers
不过,这在美国的 LTE 上不起作用。
这个 GOOGLE stun 服务器在 LTE 中不适用于美国吗?
使用 STUN、TURN 检查网络连接
在移动设备中查看最新 Chrome 中的这两个链接。
https://networktest.twilio.com
可能你可以检查网络是否正常。
可能是 IPv6 问题
同样在韩国,我在使用 IPv6 LTE 移动客户端时遇到了一些问题。有时移动运营商将 IPv6 提供给他们的客户,然后 P2P 连接不起作用。也许那里有同样的问题。
我用 TURN + TCP 解决了。我不知道为什么,但是 IPv6 客户端不支持 UDP。
以下是一些相关文件:
Webrtc media over tcp?
To force strict TCP via TURN server:
- Use only TURN url with
?transport=tcp
- Specify
iceTransportPolicy:"relay"
, so that all media will flow via TURN
-
Provide TURN and STUN functionality over TCP and UDP:
sudo turnserver -L <your STUN server\'s IP address> -o -a -f -r red5pro.com
To run the server without TCP:
sudo turnserver -L <your STUN server\'s IP address> -o -a -f --no-tcp --no-tcp-relay -r red5pro.com
To run STUN only over UDP:
sudo turnserver -L <your STUN server\'s IP address> -o -a -f --stun-only --no-tcp --no-tcp-relay -r red5pro.com
我正在开发一个 Android 使用 webRTC 进行远程屏幕共享的应用程序。对于 STUN 服务器,我使用 google stun 服务器。它在印度的 WIFI 和 LTE 上运行良好。在美国,它不支持 LTE,但支持 WIFI。
首先,我只使用了 STUN 服务器,然后现在结合了 STUN 和 TURN 服务器,但没有用。
下面是我的代码,
val iceServers = ArrayList<PeerConnection.IceServer>()
iceServers.add(PeerConnection.IceServer("stun:stun.l.google.com:19302"))
iceServers.add(PeerConnection.IceServer("turn:13.250.13.83:3478?transport=udp", "YzYNCouZM1mhqhmseWk6", "YzYNCouZM1mhqhmseWk6"))
return iceServers
不过,这在美国的 LTE 上不起作用。
这个 GOOGLE stun 服务器在 LTE 中不适用于美国吗?
使用 STUN、TURN 检查网络连接
在移动设备中查看最新 Chrome 中的这两个链接。
https://networktest.twilio.com
可能你可以检查网络是否正常。
可能是 IPv6 问题
同样在韩国,我在使用 IPv6 LTE 移动客户端时遇到了一些问题。有时移动运营商将 IPv6 提供给他们的客户,然后 P2P 连接不起作用。也许那里有同样的问题。
我用 TURN + TCP 解决了。我不知道为什么,但是 IPv6 客户端不支持 UDP。
以下是一些相关文件:
Webrtc media over tcp?
To force strict TCP via TURN server:
- Use only TURN url with
?transport=tcp
- Specify
iceTransportPolicy:"relay"
, so that all media will flow via TURN
- Use only TURN url with
-
Provide TURN and STUN functionality over TCP and UDP:
sudo turnserver -L <your STUN server\'s IP address> -o -a -f -r red5pro.com
To run the server without TCP:
sudo turnserver -L <your STUN server\'s IP address> -o -a -f --no-tcp --no-tcp-relay -r red5pro.com
To run STUN only over UDP:
sudo turnserver -L <your STUN server\'s IP address> -o -a -f --stun-only --no-tcp --no-tcp-relay -r red5pro.com