diff options
author | Nicolas Werner <nicolas.werner@hotmail.de> | 2023-02-08 00:54:02 +0100 |
---|---|---|
committer | Nicolas Werner <nicolas.werner@hotmail.de> | 2023-02-08 00:54:02 +0100 |
commit | fc7937c73d5729066079484c32a9785bddd74bc5 (patch) | |
tree | 21699b53f95e0a7d11ef79478cc0f2de98f3b3c3 /src/voip/WebRTCSession.h | |
parent | Use more modern flatpak build features (diff) | |
download | nheko-fc7937c73d5729066079484c32a9785bddd74bc5.tar.xz |
Fix required plugin check on gstreamer 1.22
GStreamer 1.22 merged the videoscale plugin into the videoconvertscale plugin. So we should check if the Element is still loadable instead of checking the plugin name. fixes #1352
Diffstat (limited to 'src/voip/WebRTCSession.h')
-rw-r--r-- | src/voip/WebRTCSession.h | 27 |
1 files changed, 14 insertions, 13 deletions
diff --git a/src/voip/WebRTCSession.h b/src/voip/WebRTCSession.h index da13e356..911a9b6c 100644 --- a/src/voip/WebRTCSession.h +++ b/src/voip/WebRTCSession.h @@ -54,7 +54,7 @@ public: return instance; } - bool havePlugins(bool isVideo, std::string *errorMessage = nullptr); + bool havePlugins(bool isVideo, bool isX11Screenshare, std::string *errorMessage = nullptr); webrtc::CallType callType() const { return callType_; } webrtc::State state() const { return state_; } bool haveLocalPiP() const; @@ -93,18 +93,19 @@ private: WebRTCSession(); CallDevices &devices_; - bool initialised_ = false; - bool haveVoicePlugins_ = false; - bool haveVideoPlugins_ = false; - webrtc::CallType callType_ = webrtc::CallType::VOICE; - webrtc::State state_ = webrtc::State::DISCONNECTED; - bool isOffering_ = false; - bool isRemoteVideoRecvOnly_ = false; - bool isRemoteVideoSendOnly_ = false; - QQuickItem *videoItem_ = nullptr; - GstElement *pipe_ = nullptr; - GstElement *webrtc_ = nullptr; - unsigned int busWatchId_ = 0; + bool initialised_ = false; + bool haveVoicePlugins_ = false; + bool haveVideoPlugins_ = false; + bool haveX11ScreensharePlugins_ = false; + webrtc::CallType callType_ = webrtc::CallType::VOICE; + webrtc::State state_ = webrtc::State::DISCONNECTED; + bool isOffering_ = false; + bool isRemoteVideoRecvOnly_ = false; + bool isRemoteVideoSendOnly_ = false; + QQuickItem *videoItem_ = nullptr; + GstElement *pipe_ = nullptr; + GstElement *webrtc_ = nullptr; + unsigned int busWatchId_ = 0; std::vector<std::string> turnServers_; uint32_t shareWindowId_ = 0; |