OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "extensions/renderer/api/display_source/wifi_display/wifi_display_video
_encoder.h" | 5 #include "extensions/renderer/api/display_source/wifi_display/wifi_display_video
_encoder.h" |
6 | 6 |
7 #include "base/logging.h" | 7 #include "base/logging.h" |
8 | 8 |
9 namespace extensions { | 9 namespace extensions { |
10 | 10 |
11 WiFiDisplayVideoEncoder::InitParameters::InitParameters() = default; | 11 WiFiDisplayVideoEncoder::InitParameters::InitParameters() = default; |
12 WiFiDisplayVideoEncoder::InitParameters::InitParameters(const InitParameters&) = | 12 WiFiDisplayVideoEncoder::InitParameters::InitParameters(const InitParameters&) = |
13 default; | 13 default; |
14 WiFiDisplayVideoEncoder::InitParameters::~InitParameters() = default; | 14 WiFiDisplayVideoEncoder::InitParameters::~InitParameters() = default; |
15 | 15 |
16 WiFiDisplayVideoEncoder::WiFiDisplayVideoEncoder( | 16 WiFiDisplayVideoEncoder::WiFiDisplayVideoEncoder( |
17 scoped_refptr<base::SingleThreadTaskRunner> media_task_runner) | 17 scoped_refptr<base::SingleThreadTaskRunner> media_task_runner) |
18 : media_task_runner_(std::move(media_task_runner)), send_idr_(false) { | 18 : media_task_runner_(std::move(media_task_runner)), send_idr_(false) { |
19 DCHECK(media_task_runner_); | 19 DCHECK(media_task_runner_); |
20 } | 20 } |
21 | 21 |
22 WiFiDisplayVideoEncoder::~WiFiDisplayVideoEncoder() = default; | 22 WiFiDisplayVideoEncoder::~WiFiDisplayVideoEncoder() = default; |
23 | 23 |
24 // static | 24 // static |
25 void WiFiDisplayVideoEncoder::Create( | 25 void WiFiDisplayVideoEncoder::Create( |
26 const InitParameters& params, | 26 const InitParameters& params, |
27 const VideoEncoderCallback& encoder_callback) { | 27 const VideoEncoderCallback& encoder_callback) { |
28 NOTIMPLEMENTED(); | 28 CreateVEA(params, encoder_callback); |
29 encoder_callback.Run(nullptr); | |
30 } | 29 } |
31 | 30 |
32 void WiFiDisplayVideoEncoder::InsertRawVideoFrame( | 31 void WiFiDisplayVideoEncoder::InsertRawVideoFrame( |
33 const scoped_refptr<media::VideoFrame>& video_frame, | 32 const scoped_refptr<media::VideoFrame>& video_frame, |
34 base::TimeTicks reference_time) { | 33 base::TimeTicks reference_time) { |
35 DCHECK(!encoded_callback_.is_null()); | 34 DCHECK(!encoded_callback_.is_null()); |
36 media_task_runner_->PostTask( | 35 media_task_runner_->PostTask( |
37 FROM_HERE, base::Bind(&WiFiDisplayVideoEncoder::InsertFrameOnMediaThread, | 36 FROM_HERE, base::Bind(&WiFiDisplayVideoEncoder::InsertFrameOnMediaThread, |
38 this, video_frame, reference_time, send_idr_)); | 37 this, video_frame, reference_time, send_idr_)); |
39 send_idr_ = false; | 38 send_idr_ = false; |
40 } | 39 } |
41 | 40 |
42 void WiFiDisplayVideoEncoder::RequestIDRPicture() { | 41 void WiFiDisplayVideoEncoder::RequestIDRPicture() { |
43 send_idr_ = true; | 42 send_idr_ = true; |
44 } | 43 } |
45 | 44 |
46 } // namespace extensions | 45 } // namespace extensions |
OLD | NEW |