| 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 |