Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(582)

Side by Side Diff: content/renderer/media/android/webmediaplayer_android.cc

Issue 508293003: Change media MessageLoopProxy usage to SingleThreadTaskRunners. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 <limits> 7 #include <limits>
8 8
9 #include "base/android/build_info.h" 9 #include "base/android/build_info.h"
10 #include "base/bind.h" 10 #include "base/bind.h"
11 #include "base/callback_helpers.h" 11 #include "base/callback_helpers.h"
12 #include "base/command_line.h" 12 #include "base/command_line.h"
13 #include "base/files/file_path.h" 13 #include "base/files/file_path.h"
14 #include "base/logging.h" 14 #include "base/logging.h"
15 #include "base/message_loop/message_loop.h"
16 #include "base/metrics/histogram.h" 15 #include "base/metrics/histogram.h"
16 #include "base/single_thread_task_runner.h"
17 #include "base/strings/string_number_conversions.h" 17 #include "base/strings/string_number_conversions.h"
18 #include "base/strings/utf_string_conversions.h" 18 #include "base/strings/utf_string_conversions.h"
19 #include "cc/blink/web_layer_impl.h" 19 #include "cc/blink/web_layer_impl.h"
20 #include "cc/layers/video_layer.h" 20 #include "cc/layers/video_layer.h"
21 #include "content/public/common/content_client.h" 21 #include "content/public/common/content_client.h"
22 #include "content/public/common/content_switches.h" 22 #include "content/public/common/content_switches.h"
23 #include "content/public/renderer/render_frame.h" 23 #include "content/public/renderer/render_frame.h"
24 #include "content/renderer/media/android/renderer_demuxer_android.h" 24 #include "content/renderer/media/android/renderer_demuxer_android.h"
25 #include "content/renderer/media/android/renderer_media_player_manager.h" 25 #include "content/renderer/media/android/renderer_media_player_manager.h"
26 #include "content/renderer/media/crypto/key_systems.h" 26 #include "content/renderer/media/crypto/key_systems.h"
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after
108 108
109 namespace content { 109 namespace content {
110 110
111 WebMediaPlayerAndroid::WebMediaPlayerAndroid( 111 WebMediaPlayerAndroid::WebMediaPlayerAndroid(
112 blink::WebFrame* frame, 112 blink::WebFrame* frame,
113 blink::WebMediaPlayerClient* client, 113 blink::WebMediaPlayerClient* client,
114 base::WeakPtr<WebMediaPlayerDelegate> delegate, 114 base::WeakPtr<WebMediaPlayerDelegate> delegate,
115 RendererMediaPlayerManager* player_manager, 115 RendererMediaPlayerManager* player_manager,
116 RendererCdmManager* cdm_manager, 116 RendererCdmManager* cdm_manager,
117 scoped_refptr<StreamTextureFactory> factory, 117 scoped_refptr<StreamTextureFactory> factory,
118 const scoped_refptr<base::MessageLoopProxy>& media_loop, 118 const scoped_refptr<base::SingleThreadTaskRunner>& task_runner,
119 media::MediaLog* media_log) 119 media::MediaLog* media_log)
120 : RenderFrameObserver(RenderFrame::FromWebFrame(frame)), 120 : RenderFrameObserver(RenderFrame::FromWebFrame(frame)),
121 frame_(frame), 121 frame_(frame),
122 client_(client), 122 client_(client),
123 delegate_(delegate), 123 delegate_(delegate),
124 buffered_(static_cast<size_t>(1)), 124 buffered_(static_cast<size_t>(1)),
125 media_loop_(media_loop), 125 media_task_runner_(task_runner),
126 ignore_metadata_duration_change_(false), 126 ignore_metadata_duration_change_(false),
127 pending_seek_(false), 127 pending_seek_(false),
128 seeking_(false), 128 seeking_(false),
129 did_loading_progress_(false), 129 did_loading_progress_(false),
130 player_manager_(player_manager), 130 player_manager_(player_manager),
131 cdm_manager_(cdm_manager), 131 cdm_manager_(cdm_manager),
132 network_state_(WebMediaPlayer::NetworkStateEmpty), 132 network_state_(WebMediaPlayer::NetworkStateEmpty),
133 ready_state_(WebMediaPlayer::ReadyStateHaveNothing), 133 ready_state_(WebMediaPlayer::ReadyStateHaveNothing),
134 texture_id_(0), 134 texture_id_(0),
135 stream_id_(0), 135 stream_id_(0),
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after
217 } 217 }
218 218
219 url_ = url; 219 url_ = url;
220 int demuxer_client_id = 0; 220 int demuxer_client_id = 0;
221 if (player_type_ != MEDIA_PLAYER_TYPE_URL) { 221 if (player_type_ != MEDIA_PLAYER_TYPE_URL) {
222 RendererDemuxerAndroid* demuxer = 222 RendererDemuxerAndroid* demuxer =
223 RenderThreadImpl::current()->renderer_demuxer(); 223 RenderThreadImpl::current()->renderer_demuxer();
224 demuxer_client_id = demuxer->GetNextDemuxerClientID(); 224 demuxer_client_id = demuxer->GetNextDemuxerClientID();
225 225
226 media_source_delegate_.reset(new MediaSourceDelegate( 226 media_source_delegate_.reset(new MediaSourceDelegate(
227 demuxer, demuxer_client_id, media_loop_, media_log_)); 227 demuxer, demuxer_client_id, media_task_runner_, media_log_));
228 228
229 if (player_type_ == MEDIA_PLAYER_TYPE_MEDIA_SOURCE) { 229 if (player_type_ == MEDIA_PLAYER_TYPE_MEDIA_SOURCE) {
230 media::SetDecryptorReadyCB set_decryptor_ready_cb = 230 media::SetDecryptorReadyCB set_decryptor_ready_cb =
231 media::BindToCurrentLoop( 231 media::BindToCurrentLoop(
232 base::Bind(&WebMediaPlayerAndroid::SetDecryptorReadyCB, 232 base::Bind(&WebMediaPlayerAndroid::SetDecryptorReadyCB,
233 weak_factory_.GetWeakPtr())); 233 weak_factory_.GetWeakPtr()));
234 234
235 media_source_delegate_->InitializeMediaSource( 235 media_source_delegate_->InitializeMediaSource(
236 base::Bind(&WebMediaPlayerAndroid::OnMediaSourceOpened, 236 base::Bind(&WebMediaPlayerAndroid::OnMediaSourceOpened,
237 weak_factory_.GetWeakPtr()), 237 weak_factory_.GetWeakPtr()),
(...skipping 1502 matching lines...) Expand 10 before | Expand all | Expand 10 after
1740 } 1740 }
1741 1741
1742 bool WebMediaPlayerAndroid::IsHLSStream() const { 1742 bool WebMediaPlayerAndroid::IsHLSStream() const {
1743 std::string mime; 1743 std::string mime;
1744 if (!net::GetMimeTypeFromFile(base::FilePath(url_.path()), &mime)) 1744 if (!net::GetMimeTypeFromFile(base::FilePath(url_.path()), &mime))
1745 return false; 1745 return false;
1746 return !mime.compare("application/x-mpegurl"); 1746 return !mime.compare("application/x-mpegurl");
1747 } 1747 }
1748 1748
1749 } // namespace content 1749 } // namespace content
OLDNEW
« no previous file with comments | « content/renderer/media/android/webmediaplayer_android.h ('k') | content/renderer/media/buffered_data_source.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698