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 "content/renderer/media/android/webmediaplayer_android.h" | 5 #include "content/renderer/media/android/webmediaplayer_android.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 | 8 |
9 #include <limits> | 9 #include <limits> |
10 | 10 |
(...skipping 207 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
218 interpolator_(&default_tick_clock_), | 218 interpolator_(&default_tick_clock_), |
219 frame_id_(frame_id), | 219 frame_id_(frame_id), |
220 suppress_deleting_texture_(false), | 220 suppress_deleting_texture_(false), |
221 weak_factory_(this) { | 221 weak_factory_(this) { |
222 DCHECK(player_manager_); | 222 DCHECK(player_manager_); |
223 DCHECK(cdm_factory_); | 223 DCHECK(cdm_factory_); |
224 | 224 |
225 DCHECK(main_thread_checker_.CalledOnValidThread()); | 225 DCHECK(main_thread_checker_.CalledOnValidThread()); |
226 stream_texture_factory_->AddObserver(this); | 226 stream_texture_factory_->AddObserver(this); |
227 | 227 |
| 228 if (delegate) |
| 229 delegate->AddObserver(this); |
| 230 |
228 player_id_ = player_manager_->RegisterMediaPlayer(this); | 231 player_id_ = player_manager_->RegisterMediaPlayer(this); |
229 | 232 |
230 #if defined(VIDEO_HOLE) | 233 #if defined(VIDEO_HOLE) |
231 const RendererPreferences& prefs = | 234 const RendererPreferences& prefs = |
232 static_cast<RenderFrameImpl*>(render_frame()) | 235 static_cast<RenderFrameImpl*>(render_frame()) |
233 ->render_view() | 236 ->render_view() |
234 ->renderer_preferences(); | 237 ->renderer_preferences(); |
235 force_use_overlay_embedded_video_ = prefs.use_view_overlay_for_all_video; | 238 force_use_overlay_embedded_video_ = prefs.use_view_overlay_for_all_video; |
236 if (force_use_overlay_embedded_video_ || | 239 if (force_use_overlay_embedded_video_ || |
237 player_manager_->ShouldUseVideoOverlayForEmbeddedEncryptedVideo()) { | 240 player_manager_->ShouldUseVideoOverlayForEmbeddedEncryptedVideo()) { |
(...skipping 1589 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1827 | 1830 |
1828 void WebMediaPlayerAndroid::OnWaitingForDecryptionKey() { | 1831 void WebMediaPlayerAndroid::OnWaitingForDecryptionKey() { |
1829 encrypted_client_->didBlockPlaybackWaitingForKey(); | 1832 encrypted_client_->didBlockPlaybackWaitingForKey(); |
1830 | 1833 |
1831 // TODO(jrummell): didResumePlaybackBlockedForKey() should only be called | 1834 // TODO(jrummell): didResumePlaybackBlockedForKey() should only be called |
1832 // when a key has been successfully added (e.g. OnSessionKeysChange() with | 1835 // when a key has been successfully added (e.g. OnSessionKeysChange() with |
1833 // |has_additional_usable_key| = true). http://crbug.com/461903 | 1836 // |has_additional_usable_key| = true). http://crbug.com/461903 |
1834 encrypted_client_->didResumePlaybackBlockedForKey(); | 1837 encrypted_client_->didResumePlaybackBlockedForKey(); |
1835 } | 1838 } |
1836 | 1839 |
| 1840 blink::WebMediaPlayer* WebMediaPlayerAndroid::GetPlayer() { |
| 1841 return this; |
| 1842 } |
| 1843 |
| 1844 void WebMediaPlayerAndroid::OnHidden() {} |
| 1845 |
| 1846 void WebMediaPlayerAndroid::OnShown() {} |
| 1847 |
| 1848 void WebMediaPlayerAndroid::OnPlay() { |
| 1849 play(); |
| 1850 client_->playbackStateChanged(); |
| 1851 } |
| 1852 |
| 1853 void WebMediaPlayerAndroid::OnPause() { |
| 1854 pause(); |
| 1855 client_->playbackStateChanged(); |
| 1856 } |
| 1857 |
1837 void WebMediaPlayerAndroid::OnCdmContextReady(media::CdmContext* cdm_context) { | 1858 void WebMediaPlayerAndroid::OnCdmContextReady(media::CdmContext* cdm_context) { |
1838 DCHECK(!cdm_context_); | 1859 DCHECK(!cdm_context_); |
1839 | 1860 |
1840 if (!cdm_context) { | 1861 if (!cdm_context) { |
1841 LOG(ERROR) << "CdmContext not available (e.g. CDM creation failed)."; | 1862 LOG(ERROR) << "CdmContext not available (e.g. CDM creation failed)."; |
1842 return; | 1863 return; |
1843 } | 1864 } |
1844 | 1865 |
1845 cdm_context_ = cdm_context; | 1866 cdm_context_ = cdm_context; |
1846 | 1867 |
(...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1953 result = PREDICTION_RESULT_PATH_BASED_WAS_BETTER; | 1974 result = PREDICTION_RESULT_PATH_BASED_WAS_BETTER; |
1954 } else if (is_hls_url == is_hls) { | 1975 } else if (is_hls_url == is_hls) { |
1955 result = PREDICTION_RESULT_URL_BASED_WAS_BETTER; | 1976 result = PREDICTION_RESULT_URL_BASED_WAS_BETTER; |
1956 } | 1977 } |
1957 UMA_HISTOGRAM_ENUMERATION( | 1978 UMA_HISTOGRAM_ENUMERATION( |
1958 "Media.Android.IsHttpLiveStreamingMediaPredictionResult", | 1979 "Media.Android.IsHttpLiveStreamingMediaPredictionResult", |
1959 result, PREDICTION_RESULT_MAX); | 1980 result, PREDICTION_RESULT_MAX); |
1960 } | 1981 } |
1961 | 1982 |
1962 } // namespace content | 1983 } // namespace content |
OLD | NEW |