webrtc peerconnection_client peerconnection_server 连接失败问题解决 win10 win11

0 常见问题

(1) webrtc peerconnection_client 连接 peerconnection_server 无连接列表

(2)连接导致崩溃debug状态下因为这个断言 RTC_DCHECK_RUN_ON(&capture_checker_);

1 在 peerconnection\client\main.cc 当中

定义类

class CustomSocketServer : public rtc::PhysicalSocketServer {

public:

bool Wait(webrtc::TimeDelta max_wait_duration, bool process_io) override {

if (!process_io)

return true;

return rtc::PhysicalSocketServer::Wait(webrtc::TimeDelta::Zero(),

+process_io);

}

};

2 在 peerconnection\client\main.cc 当中替换rtc::PhysicalSocketServer ss; 为 CustomSocketServer ss;

//rtc::PhysicalSocketServer ss;

CustomSocketServer ss;

3 在 peerconnection\client\main.cc 当中 // Main loop.之前添加一句话

main_thread.Start();//添加这句话

// Main loop.

MSG msg;

BOOL gm;

while ((gm = ::GetMessage(&msg, NULL, 0, 0)) != 0 && gm != -1) {

if (!wnd.PreTranslateMessage(&msg)) {

::TranslateMessage(&msg);

::DispatchMessage(&msg);

}

}

4 在 \src\modules\video_capture\windows\sink_filter_ds.cc

STDMETHODIMP CaptureInputPin::Receive(IMediaSample* media_sample) {

//RTC_DCHECK_RUN_ON(&capture_checker_);

Debug版本这一行会崩溃,主要是webrtc的线程机制会判断capture_checker_是否处于同一线程,不是则会触发断言,暂时的处理方式可通过屏蔽这行解决崩溃问题。

注意

1 localhost 换成 127.0.0.1

2 本机回环要有obs虚拟摄像头 最好两台电脑跑

相关推荐
穷人小水滴1 天前
使用 WebRTC 实现局域网投屏: PC (GNOME ArchLinux) -> 平板 (Android)
android·linux·webrtc·浏览器·js·gnome·投屏
EasyDSS5 天前
场景深耕:低延迟高并发EasyDSS无人机RTMP高清推流直播技术剖析
ffmpeg·webrtc·rtmp
EasyDSS5 天前
EasyDSS以视频点播VOD/高清直播/WebRTC视频会议/语音转写STT技术创新,解决校园数字化核心难题
音视频·webrtc·语音识别·点播技术·流媒体直播
daad7777 天前
WEBRTC DTLSv1.2 加密示例
webrtc
淡泊if7 天前
低延迟直播终极方案:WebRTC + MediaMTX,延迟<500ms!
webrtc·视频流·mediamtx
Eanve8 天前
python搭建webrtc音视频服务端客户端
python·音视频·webrtc
@大吉9 天前
【思维导图】一图了解WebRTC通信流程,以及SFU和MediaSoup
webrtc·mediasoup
却道天凉_好个秋9 天前
WebRTC(十六):NetEQ
webrtc·neteq·fec
zhuxian20099 天前
webrtc两个client配对交互信令流程
webrtc
REDcker10 天前
WebRTC 源码架构深度解析
架构·webrtc