Index: media/cast/video_sender/codecs/vp8/vp8_encoder.h |
diff --git a/media/cast/video_sender/codecs/vp8/vp8_encoder.h b/media/cast/video_sender/codecs/vp8/vp8_encoder.h |
index e39bc1615667c30770dda9d71447962f3a06599f..a6dd396507ae50d875f4fb99a7c3586ff05ced5a 100644 |
--- a/media/cast/video_sender/codecs/vp8/vp8_encoder.h |
+++ b/media/cast/video_sender/codecs/vp8/vp8_encoder.h |
@@ -7,6 +7,7 @@ |
#include "base/basictypes.h" |
#include "base/memory/scoped_ptr.h" |
+#include "base/threading/thread_checker.h" |
#include "media/cast/cast_config.h" |
#include "third_party/libvpx/source/libvpx/vpx/vpx_encoder.h" |
@@ -29,6 +30,10 @@ class Vp8Encoder { |
~Vp8Encoder(); |
+ // Initialize the encoder before Encode() can be called. This method |
+ // must be called on the thread that Encode() is called. |
+ void Initialize(); |
+ |
// Encode a raw image (as a part of a video stream). |
bool Encode(const scoped_refptr<media::VideoFrame>& video_frame, |
transport::EncodedVideoFrame* encoded_image); |
@@ -83,6 +88,9 @@ class Vp8Encoder { |
bool acked_frame_buffers_[kNumberOfVp8VideoBuffers]; |
Vp8Buffers last_used_vp8_buffer_; |
int number_of_repeated_buffers_; |
+ |
+ // This is bound to the thread where Initialize() is called. |
+ base::ThreadChecker thread_checker_; |
}; |
} // namespace cast |