OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 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/base/android/media_player_android.h" | 5 #include "media/base/android/media_player_android.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 | 8 |
9 #include "base/android/context_utils.h" | 9 #include "base/android/context_utils.h" |
| 10 #include "base/android/scoped_java_ref.h" |
10 #include "base/logging.h" | 11 #include "base/logging.h" |
11 #include "base/single_thread_task_runner.h" | 12 #include "base/single_thread_task_runner.h" |
12 #include "base/threading/thread_task_runner_handle.h" | 13 #include "base/threading/thread_task_runner_handle.h" |
13 #include "media/base/android/media_drm_bridge.h" | 14 #include "media/base/android/media_drm_bridge.h" |
14 #include "media/base/android/media_player_manager.h" | 15 #include "media/base/android/media_player_manager.h" |
15 | 16 |
| 17 using base::android::JavaRef; |
| 18 |
16 namespace { | 19 namespace { |
17 | 20 |
18 const double kDefaultVolume = 1.0; | 21 const double kDefaultVolume = 1.0; |
19 | 22 |
20 } // namespace | 23 } // namespace |
21 | 24 |
22 namespace media { | 25 namespace media { |
23 | 26 |
24 const double MediaPlayerAndroid::kDefaultVolumeMultiplier = 1.0; | 27 const double MediaPlayerAndroid::kDefaultVolumeMultiplier = 1.0; |
25 | 28 |
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
99 void MediaPlayerAndroid::OnMediaInterrupted() { | 102 void MediaPlayerAndroid::OnMediaInterrupted() { |
100 manager_->OnMediaInterrupted(player_id()); | 103 manager_->OnMediaInterrupted(player_id()); |
101 } | 104 } |
102 | 105 |
103 void MediaPlayerAndroid::OnSeekComplete() { | 106 void MediaPlayerAndroid::OnSeekComplete() { |
104 manager_->OnSeekComplete(player_id(), GetCurrentTime()); | 107 manager_->OnSeekComplete(player_id(), GetCurrentTime()); |
105 } | 108 } |
106 | 109 |
107 void MediaPlayerAndroid::OnMediaPrepared() {} | 110 void MediaPlayerAndroid::OnMediaPrepared() {} |
108 | 111 |
109 void MediaPlayerAndroid::AttachListener(jobject j_media_player) { | 112 void MediaPlayerAndroid::AttachListener( |
110 jobject j_context = base::android::GetApplicationContext(); | 113 const JavaRef<jobject>& j_media_player) { |
111 DCHECK(j_context); | 114 listener_->CreateMediaPlayerListener(base::android::GetApplicationContext(), |
112 | 115 j_media_player); |
113 listener_->CreateMediaPlayerListener(j_context, j_media_player); | |
114 } | 116 } |
115 | 117 |
116 void MediaPlayerAndroid::DetachListener() { | 118 void MediaPlayerAndroid::DetachListener() { |
117 listener_->ReleaseMediaPlayerListenerResources(); | 119 listener_->ReleaseMediaPlayerListenerResources(); |
118 } | 120 } |
119 | 121 |
120 void MediaPlayerAndroid::DestroyListenerOnUIThread() { | 122 void MediaPlayerAndroid::DestroyListenerOnUIThread() { |
121 weak_factory_.InvalidateWeakPtrs(); | 123 weak_factory_.InvalidateWeakPtrs(); |
122 listener_.reset(); | 124 listener_.reset(); |
123 } | 125 } |
124 | 126 |
125 base::WeakPtr<MediaPlayerAndroid> MediaPlayerAndroid::WeakPtrForUIThread() { | 127 base::WeakPtr<MediaPlayerAndroid> MediaPlayerAndroid::WeakPtrForUIThread() { |
126 return weak_factory_.GetWeakPtr(); | 128 return weak_factory_.GetWeakPtr(); |
127 } | 129 } |
128 | 130 |
129 } // namespace media | 131 } // namespace media |
OLD | NEW |