From 41eab75d736f357e8ade6559dc74d59aec9b7af9 Mon Sep 17 00:00:00 2001 From: kkostiuk <kateryna.kostiuk@savoirfairelinux.com> Date: Wed, 15 Dec 2021 08:56:40 -0500 Subject: [PATCH] video: fix screen sharing on macOS Because media encoder flush() involves encoding we should change initialized flag after calling flush(), otherwise, it could lead to new stream initializing. https://git.jami.net/savoirfairelinux/jami-client-macos/-/issues/299 Change-Id: I88d5648a6f252bd78776f505f891f09a4e5b12e1 --- src/media/media_encoder.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/media/media_encoder.cpp b/src/media/media_encoder.cpp index 816ee94779..0e120e0686 100644 --- a/src/media/media_encoder.cpp +++ b/src/media/media_encoder.cpp @@ -1340,13 +1340,12 @@ MediaEncoder::getScaledSWFrame(const VideoFrame& input) void MediaEncoder::resetStreams(int width, int height) { - // Only called by VideoSender! - initialized_ = false; videoOpts_.width = width; videoOpts_.height = height; try { flush(); + initialized_ = false; if (outputCtx_) { for (auto encoderCtx : encoders_) { if (encoderCtx) { -- GitLab