gpt4 book ai didi

flutter - WebRTC : not working on WIFI/works on Mobile Data

转载 作者:行者123 更新时间:2023-12-03 20:50:05 28 4
gpt4 key购买 nike

我正在使用 Flutter WebRTC 来创建 P2P 视频通话。
我遇到了一个与网络相关的问题:我已经完成了应用程序,但它只适用于移动数据。
将网络更改为WiFi时,它不起作用并且连接状态挂起Checking我使用 Google Community STUN/TURN Servers 和 Node JS socket.io 进行信号传输。当移动设备不在同一网络上而仅使用移动数据时,它也可以工作。

最佳答案

_createPeer() async {
try {
if (_peerConnection != null) return;

navigator.getUserMedia(mediaConstraints).then((stream) {
_localStream = stream;
_localRenderer.srcObject = stream;
});

_peerConnection = await createPeerConnection(configuration, constraints);

_peerConnection.onSignalingState = _onSignalingState;
_peerConnection.onIceGatheringState = _onIceGatheringState;
_peerConnection.onIceConnectionState = _onIceConnectionState;
_peerConnection.onAddStream = _onAddStream;
_peerConnection.onRemoveStream = _onRemoveStream;
_peerConnection.onIceCandidate = _onCandidate;
_peerConnection.onRenegotiationNeeded = _onRenegotiationNeeded;

_peerConnection.addStream(_localStream);

RTCSessionDescription offer =
await _peerConnection.createOffer(_offer_constraints);
_peerConnection.setLocalDescription(offer);

socket.emit('add-student', [
{'room': room, 'offer': offer.sdp}
]);
} catch (e) {
_snackBar(e.toString());
}
}

_onSignalingState(RTCSignalingState state) {
// _snackBar(state.toString());
}

_onIceGatheringState(RTCIceGatheringState state) {
// _snackBar(state.toString());
}

_onIceConnectionState(RTCIceConnectionState state) {
_snackBar(state.toString());
}

_onAddStream(MediaStream stream) {
if (stream == null) {
_snackBar('null');
return;
}
_progressVisible = false;
_buttonsVisible = true;
_remoteRenderer.srcObject = stream;
setState(() {});
}

_onRemoveStream(MediaStream stream) {
_snackBar('remove');
}

_onCandidate(RTCIceCandidate candidate) {
socket.emit('studentCandidate', [
{
'room': room,
'candidate': {
'candidate': candidate.candidate,
'sdpMid': candidate.sdpMid,
'sdpMLineIndex': candidate.sdpMlineIndex
}
}
]);
}

_onRenegotiationNeeded() {
_snackBar('reneg');
}

关于 flutter - WebRTC : not working on WIFI/works on Mobile Data,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63328152/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com