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