| Index: extensions/renderer/api/display_source/wifi_display/wifi_display_video_encoder.cc
|
| diff --git a/extensions/renderer/api/display_source/wifi_display/wifi_display_video_encoder.cc b/extensions/renderer/api/display_source/wifi_display/wifi_display_video_encoder.cc
|
| index cf137dffac2915402165dbea2325c3bc4f80d2fa..9d88e5739863202be55864b46f7bebc09b949f88 100644
|
| --- a/extensions/renderer/api/display_source/wifi_display/wifi_display_video_encoder.cc
|
| +++ b/extensions/renderer/api/display_source/wifi_display/wifi_display_video_encoder.cc
|
| @@ -4,6 +4,7 @@
|
|
|
| #include "extensions/renderer/api/display_source/wifi_display/wifi_display_video_encoder.h"
|
|
|
| +#include "base/logging.h"
|
| #include "media/base/bind_to_current_loop.h"
|
|
|
| namespace extensions {
|
| @@ -16,7 +17,12 @@ WiFiDisplayVideoEncoder::InitParameters::InitParameters(const InitParameters&) =
|
| default;
|
| WiFiDisplayVideoEncoder::InitParameters::~InitParameters() = default;
|
|
|
| -WiFiDisplayVideoEncoder::WiFiDisplayVideoEncoder() = default;
|
| +WiFiDisplayVideoEncoder::WiFiDisplayVideoEncoder(
|
| + const scoped_refptr<base::SingleThreadTaskRunner>& media_task_runner)
|
| + : media_task_runner_(media_task_runner), send_idr_(false) {
|
| + DCHECK(media_task_runner_);
|
| +}
|
| +
|
| WiFiDisplayVideoEncoder::~WiFiDisplayVideoEncoder() = default;
|
|
|
| void WiFiDisplayVideoEncoder::SetCallbacks(
|
| @@ -33,4 +39,14 @@ void WiFiDisplayVideoEncoder::Create(
|
| encoder_callback.Run(nullptr);
|
| }
|
|
|
| +void WiFiDisplayVideoEncoder::InsertRawVideoFrame(
|
| + const scoped_refptr<media::VideoFrame>& video_frame,
|
| + base::TimeTicks reference_time) {
|
| + DCHECK(!encoded_callback_.is_null());
|
| + media_task_runner_->PostTask(
|
| + FROM_HERE, base::Bind(&WiFiDisplayVideoEncoder::InsertFrameOnMediaThread,
|
| + this, video_frame, reference_time, send_idr_));
|
| + send_idr_ = false;
|
| +}
|
| +
|
| } // namespace extensions
|
|
|