Chromium Code Reviews

Unified Diff: webrtc/video/video_send_stream.h

Issue 2070343002: Remove ViEncoder::Pause / Start (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Addressed comments. Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
« no previous file with comments | « webrtc/video/end_to_end_tests.cc ('k') | webrtc/video/video_send_stream.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: webrtc/video/video_send_stream.h
diff --git a/webrtc/video/video_send_stream.h b/webrtc/video/video_send_stream.h
index 79f99a4bff18817b808763271cdef733066aa708..1c66c1fe332ad9540343b2e01abc82668c4459a4 100644
--- a/webrtc/video/video_send_stream.h
+++ b/webrtc/video/video_send_stream.h
@@ -138,9 +138,20 @@ class VideoSendStream : public webrtc::VideoSendStream,
rtc::CriticalSection encoder_settings_crit_;
std::unique_ptr<EncoderSettings> pending_encoder_settings_
GUARDED_BY(encoder_settings_crit_);
+
+ enum class State {
+ kStopped, // VideoSendStream::Start has not yet been called.
+ kStarted, // VideoSendStream::Start has been called.
+ // VideoSendStream::Start has been called but the encoder have timed out.
+ kEncoderTimedOut,
+ };
+ rtc::Optional<State> pending_state_change_ GUARDED_BY(encoder_settings_crit_);
+
// Only used on the encoder thread.
- bool send_stream_registered_as_observer_;
- std::unique_ptr<EncoderSettings> current_encoder_settings_;
+ rtc::ThreadChecker encoder_thread_checker_;
+ State state_ ACCESS_ON(&encoder_thread_checker_);
+ std::unique_ptr<EncoderSettings> current_encoder_settings_
+ ACCESS_ON(&encoder_thread_checker_);
OveruseFrameDetector overuse_detector_;
ViEEncoder vie_encoder_;
« no previous file with comments | « webrtc/video/end_to_end_tests.cc ('k') | webrtc/video/video_send_stream.cc » ('j') | no next file with comments »

Powered by Google App Engine