OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 "media/renderers/video_renderer_impl.h" | 5 #include "media/renderers/video_renderer_impl.h" |
6 | 6 |
| 7 #include <utility> |
| 8 |
7 #include "base/bind.h" | 9 #include "base/bind.h" |
8 #include "base/callback.h" | 10 #include "base/callback.h" |
9 #include "base/callback_helpers.h" | 11 #include "base/callback_helpers.h" |
10 #include "base/location.h" | 12 #include "base/location.h" |
11 #include "base/metrics/histogram_macros.h" | 13 #include "base/metrics/histogram_macros.h" |
12 #include "base/single_thread_task_runner.h" | 14 #include "base/single_thread_task_runner.h" |
13 #include "base/strings/string_util.h" | 15 #include "base/strings/string_util.h" |
14 #include "base/time/default_tick_clock.h" | 16 #include "base/time/default_tick_clock.h" |
15 #include "base/trace_event/trace_event.h" | 17 #include "base/trace_event/trace_event.h" |
16 #include "media/base/bind_to_current_loop.h" | 18 #include "media/base/bind_to_current_loop.h" |
(...skipping 11 matching lines...) Expand all Loading... |
28 const scoped_refptr<base::SingleThreadTaskRunner>& media_task_runner, | 30 const scoped_refptr<base::SingleThreadTaskRunner>& media_task_runner, |
29 const scoped_refptr<base::TaskRunner>& worker_task_runner, | 31 const scoped_refptr<base::TaskRunner>& worker_task_runner, |
30 VideoRendererSink* sink, | 32 VideoRendererSink* sink, |
31 ScopedVector<VideoDecoder> decoders, | 33 ScopedVector<VideoDecoder> decoders, |
32 bool drop_frames, | 34 bool drop_frames, |
33 GpuVideoAcceleratorFactories* gpu_factories, | 35 GpuVideoAcceleratorFactories* gpu_factories, |
34 const scoped_refptr<MediaLog>& media_log) | 36 const scoped_refptr<MediaLog>& media_log) |
35 : task_runner_(media_task_runner), | 37 : task_runner_(media_task_runner), |
36 sink_(sink), | 38 sink_(sink), |
37 sink_started_(false), | 39 sink_started_(false), |
38 video_frame_stream_( | 40 video_frame_stream_(new VideoFrameStream(media_task_runner, |
39 new VideoFrameStream(media_task_runner, decoders.Pass(), media_log)), | 41 std::move(decoders), |
| 42 media_log)), |
40 gpu_memory_buffer_pool_(nullptr), | 43 gpu_memory_buffer_pool_(nullptr), |
41 media_log_(media_log), | 44 media_log_(media_log), |
42 low_delay_(false), | 45 low_delay_(false), |
43 received_end_of_stream_(false), | 46 received_end_of_stream_(false), |
44 rendered_end_of_stream_(false), | 47 rendered_end_of_stream_(false), |
45 state_(kUninitialized), | 48 state_(kUninitialized), |
46 sequence_token_(0), | 49 sequence_token_(0), |
47 pending_read_(false), | 50 pending_read_(false), |
48 drop_frames_(drop_frames), | 51 drop_frames_(drop_frames), |
49 buffering_state_(BUFFERING_HAVE_NOTHING), | 52 buffering_state_(BUFFERING_HAVE_NOTHING), |
(...skipping 582 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
632 if (!wall_clock_time_cb_.Run(media_times, &wall_clock_times)) | 635 if (!wall_clock_time_cb_.Run(media_times, &wall_clock_times)) |
633 return base::TimeTicks(); | 636 return base::TimeTicks(); |
634 return wall_clock_times[0]; | 637 return wall_clock_times[0]; |
635 } | 638 } |
636 | 639 |
637 bool VideoRendererImpl::IsBeforeStartTime(base::TimeDelta timestamp) { | 640 bool VideoRendererImpl::IsBeforeStartTime(base::TimeDelta timestamp) { |
638 return timestamp + video_frame_stream_->AverageDuration() < start_timestamp_; | 641 return timestamp + video_frame_stream_->AverageDuration() < start_timestamp_; |
639 } | 642 } |
640 | 643 |
641 } // namespace media | 644 } // namespace media |
OLD | NEW |