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

Side by Side Diff: webkit/media/webmediaplayer_impl.cc

Issue 8980008: Integrate HTMLMediaElement with Web Audio API's MediaElementAudioSourceNode (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 8 years, 11 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 "webkit/media/webmediaplayer_impl.h" 5 #include "webkit/media/webmediaplayer_impl.h"
6 6
7 #include <limits> 7 #include <limits>
8 #include <string> 8 #include <string>
9 9
10 #include "base/bind.h" 10 #include "base/bind.h"
(...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after
95 } 95 }
96 96
97 } // namespace 97 } // namespace
98 98
99 namespace webkit_media { 99 namespace webkit_media {
100 100
101 WebMediaPlayerImpl::WebMediaPlayerImpl( 101 WebMediaPlayerImpl::WebMediaPlayerImpl(
102 WebKit::WebMediaPlayerClient* client, 102 WebKit::WebMediaPlayerClient* client,
103 base::WeakPtr<WebMediaPlayerDelegate> delegate, 103 base::WeakPtr<WebMediaPlayerDelegate> delegate,
104 media::FilterCollection* collection, 104 media::FilterCollection* collection,
105 WebKit::WebAudioSourceProvider* audio_source_provider,
105 media::MessageLoopFactory* message_loop_factory, 106 media::MessageLoopFactory* message_loop_factory,
106 MediaStreamClient* media_stream_client, 107 MediaStreamClient* media_stream_client,
107 media::MediaLog* media_log) 108 media::MediaLog* media_log)
108 : network_state_(WebKit::WebMediaPlayer::Empty), 109 : network_state_(WebKit::WebMediaPlayer::Empty),
109 ready_state_(WebKit::WebMediaPlayer::HaveNothing), 110 ready_state_(WebKit::WebMediaPlayer::HaveNothing),
110 main_loop_(NULL), 111 main_loop_(NULL),
111 filter_collection_(collection), 112 filter_collection_(collection),
112 pipeline_(NULL), 113 pipeline_(NULL),
113 message_loop_factory_(message_loop_factory), 114 message_loop_factory_(message_loop_factory),
114 paused_(true), 115 paused_(true),
115 seeking_(false), 116 seeking_(false),
116 playback_rate_(0.0f), 117 playback_rate_(0.0f),
117 pending_seek_(false), 118 pending_seek_(false),
118 pending_seek_seconds_(0.0f), 119 pending_seek_seconds_(0.0f),
119 client_(client), 120 client_(client),
120 proxy_(NULL), 121 proxy_(NULL),
121 delegate_(delegate), 122 delegate_(delegate),
122 media_stream_client_(media_stream_client), 123 media_stream_client_(media_stream_client),
123 media_log_(media_log), 124 media_log_(media_log),
124 is_accelerated_compositing_active_(false), 125 is_accelerated_compositing_active_(false),
125 incremented_externally_allocated_memory_(false) { 126 incremented_externally_allocated_memory_(false),
127 audio_source_provider_(audio_source_provider) {
126 // Saves the current message loop. 128 // Saves the current message loop.
127 DCHECK(!main_loop_); 129 DCHECK(!main_loop_);
128 main_loop_ = MessageLoop::current(); 130 main_loop_ = MessageLoop::current();
129 media_log_->AddEvent( 131 media_log_->AddEvent(
130 media_log_->CreateEvent(media::MediaLogEvent::WEBMEDIAPLAYER_CREATED)); 132 media_log_->CreateEvent(media::MediaLogEvent::WEBMEDIAPLAYER_CREATED));
131 } 133 }
132 134
133 bool WebMediaPlayerImpl::Initialize( 135 bool WebMediaPlayerImpl::Initialize(
134 WebKit::WebFrame* frame, 136 WebKit::WebFrame* frame,
135 bool use_simple_data_source) { 137 bool use_simple_data_source) {
(...skipping 791 matching lines...) Expand 10 before | Expand all | Expand 10 after
927 proxy_ = NULL; 929 proxy_ = NULL;
928 } 930 }
929 } 931 }
930 932
931 WebKit::WebMediaPlayerClient* WebMediaPlayerImpl::GetClient() { 933 WebKit::WebMediaPlayerClient* WebMediaPlayerImpl::GetClient() {
932 DCHECK_EQ(main_loop_, MessageLoop::current()); 934 DCHECK_EQ(main_loop_, MessageLoop::current());
933 DCHECK(client_); 935 DCHECK(client_);
934 return client_; 936 return client_;
935 } 937 }
936 938
939 WebKit::WebAudioSourceProvider* WebMediaPlayerImpl::audioSourceProvider() {
940 return audio_source_provider_;
941 }
942
937 void WebMediaPlayerImpl::IncrementExternallyAllocatedMemory() { 943 void WebMediaPlayerImpl::IncrementExternallyAllocatedMemory() {
938 DCHECK_EQ(main_loop_, MessageLoop::current()); 944 DCHECK_EQ(main_loop_, MessageLoop::current());
939 incremented_externally_allocated_memory_ = true; 945 incremented_externally_allocated_memory_ = true;
940 v8::V8::AdjustAmountOfExternalAllocatedMemory(kPlayerExtraMemory); 946 v8::V8::AdjustAmountOfExternalAllocatedMemory(kPlayerExtraMemory);
941 } 947 }
942 948
943 } // namespace webkit_media 949 } // namespace webkit_media
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698