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/blink/webmediaplayer_impl.h" | 5 #include "media/blink/webmediaplayer_impl.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 #include <cmath> | 8 #include <cmath> |
9 #include <limits> | 9 #include <limits> |
10 #include <string> | 10 #include <string> |
| 11 #include <utility> |
11 | 12 |
12 #include "base/bind.h" | 13 #include "base/bind.h" |
13 #include "base/callback.h" | 14 #include "base/callback.h" |
14 #include "base/callback_helpers.h" | 15 #include "base/callback_helpers.h" |
15 #include "base/command_line.h" | 16 #include "base/command_line.h" |
16 #include "base/debug/alias.h" | 17 #include "base/debug/alias.h" |
17 #include "base/debug/crash_logging.h" | 18 #include "base/debug/crash_logging.h" |
18 #include "base/metrics/histogram.h" | 19 #include "base/metrics/histogram.h" |
19 #include "base/single_thread_task_runner.h" | 20 #include "base/single_thread_task_runner.h" |
20 #include "base/synchronization/waitable_event.h" | 21 #include "base/synchronization/waitable_event.h" |
(...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
173 compositor_(new VideoFrameCompositor( | 174 compositor_(new VideoFrameCompositor( |
174 compositor_task_runner_, | 175 compositor_task_runner_, |
175 BIND_TO_RENDER_LOOP(&WebMediaPlayerImpl::OnNaturalSizeChanged), | 176 BIND_TO_RENDER_LOOP(&WebMediaPlayerImpl::OnNaturalSizeChanged), |
176 BIND_TO_RENDER_LOOP(&WebMediaPlayerImpl::OnOpacityChanged))), | 177 BIND_TO_RENDER_LOOP(&WebMediaPlayerImpl::OnOpacityChanged))), |
177 encrypted_media_support_(cdm_factory, | 178 encrypted_media_support_(cdm_factory, |
178 encrypted_client, | 179 encrypted_client, |
179 params.media_permission(), | 180 params.media_permission(), |
180 base::Bind(&WebMediaPlayerImpl::SetCdm, | 181 base::Bind(&WebMediaPlayerImpl::SetCdm, |
181 AsWeakPtr(), | 182 AsWeakPtr(), |
182 base::Bind(&IgnoreCdmAttached))), | 183 base::Bind(&IgnoreCdmAttached))), |
183 renderer_factory_(renderer_factory.Pass()) { | 184 renderer_factory_(std::move(renderer_factory)) { |
184 DCHECK(!adjust_allocated_memory_cb_.is_null()); | 185 DCHECK(!adjust_allocated_memory_cb_.is_null()); |
185 | 186 |
186 if (delegate) | 187 if (delegate) |
187 delegate->AddObserver(this); | 188 delegate->AddObserver(this); |
188 | 189 |
189 media_log_->AddEvent( | 190 media_log_->AddEvent( |
190 media_log_->CreateEvent(MediaLogEvent::WEBMEDIAPLAYER_CREATED)); | 191 media_log_->CreateEvent(MediaLogEvent::WEBMEDIAPLAYER_CREATED)); |
191 | 192 |
192 if (params.initial_cdm()) { | 193 if (params.initial_cdm()) { |
193 SetCdm(base::Bind(&IgnoreCdmAttached), | 194 SetCdm(base::Bind(&IgnoreCdmAttached), |
(...skipping 822 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1016 blink::WebString::fromUTF8(config.label()); | 1017 blink::WebString::fromUTF8(config.label()); |
1017 const blink::WebString web_language = | 1018 const blink::WebString web_language = |
1018 blink::WebString::fromUTF8(config.language()); | 1019 blink::WebString::fromUTF8(config.language()); |
1019 const blink::WebString web_id = | 1020 const blink::WebString web_id = |
1020 blink::WebString::fromUTF8(config.id()); | 1021 blink::WebString::fromUTF8(config.id()); |
1021 | 1022 |
1022 scoped_ptr<WebInbandTextTrackImpl> web_inband_text_track( | 1023 scoped_ptr<WebInbandTextTrackImpl> web_inband_text_track( |
1023 new WebInbandTextTrackImpl(web_kind, web_label, web_language, web_id)); | 1024 new WebInbandTextTrackImpl(web_kind, web_label, web_language, web_id)); |
1024 | 1025 |
1025 scoped_ptr<TextTrack> text_track(new TextTrackImpl( | 1026 scoped_ptr<TextTrack> text_track(new TextTrackImpl( |
1026 main_task_runner_, client_, web_inband_text_track.Pass())); | 1027 main_task_runner_, client_, std::move(web_inband_text_track))); |
1027 | 1028 |
1028 done_cb.Run(text_track.Pass()); | 1029 done_cb.Run(std::move(text_track)); |
1029 } | 1030 } |
1030 | 1031 |
1031 void WebMediaPlayerImpl::OnHidden() { | 1032 void WebMediaPlayerImpl::OnHidden() { |
1032 DCHECK(main_task_runner_->BelongsToCurrentThread()); | 1033 DCHECK(main_task_runner_->BelongsToCurrentThread()); |
1033 | 1034 |
1034 #if !defined(OS_ANDROID) | 1035 #if !defined(OS_ANDROID) |
1035 // Suspend/Resume is enabled by default on Android. | 1036 // Suspend/Resume is enabled by default on Android. |
1036 if (!base::CommandLine::ForCurrentProcess()->HasSwitch( | 1037 if (!base::CommandLine::ForCurrentProcess()->HasSwitch( |
1037 switches::kEnableMediaSuspend)) { | 1038 switches::kEnableMediaSuspend)) { |
1038 return; | 1039 return; |
(...skipping 328 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1367 << ", Video: " << stats.video_memory_usage << ", DataSource: " | 1368 << ", Video: " << stats.video_memory_usage << ", DataSource: " |
1368 << (data_source_ ? data_source_->GetMemoryUsage() : 0) | 1369 << (data_source_ ? data_source_->GetMemoryUsage() : 0) |
1369 << ", Demuxer: " << demuxer_memory_usage; | 1370 << ", Demuxer: " << demuxer_memory_usage; |
1370 | 1371 |
1371 const int64_t delta = current_memory_usage - last_reported_memory_usage_; | 1372 const int64_t delta = current_memory_usage - last_reported_memory_usage_; |
1372 last_reported_memory_usage_ = current_memory_usage; | 1373 last_reported_memory_usage_ = current_memory_usage; |
1373 adjust_allocated_memory_cb_.Run(delta); | 1374 adjust_allocated_memory_cb_.Run(delta); |
1374 } | 1375 } |
1375 | 1376 |
1376 } // namespace media | 1377 } // namespace media |
OLD | NEW |