Index: content/renderer/media/media_stream_video_capturer_source.cc |
diff --git a/content/renderer/media/media_stream_video_capturer_source.cc b/content/renderer/media/media_stream_video_capturer_source.cc |
index b080ec826df549babe74356c95e481e190ab809c..38d5a2db916ccb610d89fdeb9ee1169117fd179f 100644 |
--- a/content/renderer/media/media_stream_video_capturer_source.cc |
+++ b/content/renderer/media/media_stream_video_capturer_source.cc |
@@ -212,6 +212,7 @@ class LocalVideoCapturerSource final : public media::VideoCapturerSource { |
const RunningCallback& running_callback) override; |
void RequestRefreshFrame() override; |
void StopCapture() override; |
+ void SetCapturingLinkSecured(bool is_secure); |
private: |
void OnStateUpdate(VideoCaptureState state); |
@@ -222,6 +223,8 @@ class LocalVideoCapturerSource final : public media::VideoCapturerSource { |
// |session_id_| identifies the capture device used for this capture session. |
const media::VideoCaptureSessionId session_id_; |
+ const std::string stream_device_id_; |
+ |
VideoCaptureImplManager* const manager_; |
const base::Closure release_device_cb_; |
@@ -250,6 +253,7 @@ class LocalVideoCapturerSource final : public media::VideoCapturerSource { |
LocalVideoCapturerSource::LocalVideoCapturerSource( |
const StreamDeviceInfo& device_info) |
: session_id_(device_info.session_id), |
+ stream_device_id_(device_info.device.id), |
manager_(RenderThreadImpl::current()->video_capture_impl_manager()), |
release_device_cb_(manager_->UseDevice(session_id_)), |
is_content_capture_(IsContentVideoCaptureDevice(device_info)), |
@@ -318,6 +322,10 @@ void LocalVideoCapturerSource::RequestRefreshFrame() { |
manager_->RequestRefreshFrame(session_id_); |
} |
+void LocalVideoCapturerSource::SetCapturingLinkSecured(bool is_secure) { |
+ DCHECK(thread_checker_.CalledOnValidThread()); |
+ manager_->SetCapturingLinkSecured(session_id_, stream_device_id_, is_secure); |
+} |
void LocalVideoCapturerSource::StopCapture() { |
DVLOG(3) << __FUNCTION__; |
@@ -393,14 +401,15 @@ void LocalVideoCapturerSource::OnDeviceSupportedFormatsEnumerated( |
MediaStreamVideoCapturerSource::MediaStreamVideoCapturerSource( |
const SourceStoppedCallback& stop_callback, |
std::unique_ptr<media::VideoCapturerSource> source) |
- : source_(std::move(source)) { |
+ : source_(std::move(source)), is_local_video_capturer_source_(false) { |
SetStopCallback(stop_callback); |
} |
MediaStreamVideoCapturerSource::MediaStreamVideoCapturerSource( |
const SourceStoppedCallback& stop_callback, |
const StreamDeviceInfo& device_info) |
- : source_(new LocalVideoCapturerSource(device_info)) { |
+ : source_(new LocalVideoCapturerSource(device_info)), |
+ is_local_video_capturer_source_(true) { |
SetStopCallback(stop_callback); |
SetDeviceInfo(device_info); |
} |
@@ -412,6 +421,12 @@ void MediaStreamVideoCapturerSource::RequestRefreshFrame() { |
source_->RequestRefreshFrame(); |
} |
+void MediaStreamVideoCapturerSource::SetCapturingLinkSecured(bool is_secure) { |
+ if (source_ && is_local_video_capturer_source_) |
+ static_cast<LocalVideoCapturerSource*>(source_.get()) |
+ ->SetCapturingLinkSecured(is_secure); |
+} |
+ |
void MediaStreamVideoCapturerSource::GetCurrentSupportedFormats( |
int max_requested_width, |
int max_requested_height, |