diff options
author | fbarchard@chromium.org <fbarchard@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-11-04 22:25:18 +0000 |
---|---|---|
committer | fbarchard@chromium.org <fbarchard@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-11-04 22:25:18 +0000 |
commit | 3ee84160f356ad78f48639b4e26eebee9a88b9c1 (patch) | |
tree | 41cdcce0762674b9eb5893d0585673d91bea53e2 /chrome | |
parent | 3da33567fb3c69351d74ccb11d884e4ea9f9a21e (diff) | |
download | chromium_src-3ee84160f356ad78f48639b4e26eebee9a88b9c1.zip chromium_src-3ee84160f356ad78f48639b4e26eebee9a88b9c1.tar.gz chromium_src-3ee84160f356ad78f48639b4e26eebee9a88b9c1.tar.bz2 |
SetVolume and GetVolume take one volume instead of separate left and right volumes.
BUG=26660
TEST=no visible difference. Make sure volume still works. Code size should go down marginally.
Review URL: http://codereview.chromium.org/357004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31018 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome')
-rw-r--r-- | chrome/browser/renderer_host/audio_renderer_host.cc | 26 | ||||
-rw-r--r-- | chrome/browser/renderer_host/audio_renderer_host.h | 5 | ||||
-rw-r--r-- | chrome/browser/renderer_host/audio_renderer_host_unittest.cc | 9 | ||||
-rw-r--r-- | chrome/common/render_messages_internal.h | 10 | ||||
-rw-r--r-- | chrome/renderer/audio_message_filter.cc | 5 | ||||
-rw-r--r-- | chrome/renderer/audio_message_filter.h | 9 | ||||
-rw-r--r-- | chrome/renderer/audio_message_filter_unittest.cc | 23 | ||||
-rw-r--r-- | chrome/renderer/media/audio_renderer_impl.cc | 9 | ||||
-rw-r--r-- | chrome/renderer/media/audio_renderer_impl.h | 4 |
9 files changed, 44 insertions, 56 deletions
diff --git a/chrome/browser/renderer_host/audio_renderer_host.cc b/chrome/browser/renderer_host/audio_renderer_host.cc index 7ea64e7..a5425be 100644 --- a/chrome/browser/renderer_host/audio_renderer_host.cc +++ b/chrome/browser/renderer_host/audio_renderer_host.cc @@ -211,12 +211,12 @@ void AudioRendererHost::IPCAudioSource::Close() { state_ = kClosed; } -void AudioRendererHost::IPCAudioSource::SetVolume(double left, double right) { +void AudioRendererHost::IPCAudioSource::SetVolume(double volume) { // TODO(hclam): maybe send an error message back to renderer if this object // is in a wrong state. if (!stream_) return; - stream_->SetVolume(left, right); + stream_->SetVolume(volume); } void AudioRendererHost::IPCAudioSource::GetVolume() { @@ -224,10 +224,10 @@ void AudioRendererHost::IPCAudioSource::GetVolume() { // is in a wrong state. if (!stream_) return; - double left_channel, right_channel; - stream_->GetVolume(&left_channel, &right_channel); + double volume; + stream_->GetVolume(&volume); host_->Send(new ViewMsg_NotifyAudioStreamVolume(route_id_, stream_id_, - left_channel, right_channel)); + volume)); } size_t AudioRendererHost::IPCAudioSource::OnMoreData(AudioOutputStream* stream, @@ -315,12 +315,12 @@ void AudioRendererHost::IPCAudioSource::SubmitPacketRequest_Locked() { } void AudioRendererHost::IPCAudioSource::SubmitPacketRequest(AutoLock* alock) { - if (alock) { - SubmitPacketRequest_Locked(); - } else { - AutoLock auto_lock(lock_); - SubmitPacketRequest_Locked(); - } + if (alock) { + SubmitPacketRequest_Locked(); + } else { + AutoLock auto_lock(lock_); + SubmitPacketRequest_Locked(); + } } void AudioRendererHost::IPCAudioSource::StartBuffering() { @@ -465,11 +465,11 @@ void AudioRendererHost::OnCloseStream(const IPC::Message& msg, int stream_id) { } void AudioRendererHost::OnSetVolume(const IPC::Message& msg, int stream_id, - double left_channel, double right_channel) { + double volume) { DCHECK(ChromeThread::CurrentlyOn(ChromeThread::IO)); IPCAudioSource* source = Lookup(msg.routing_id(), stream_id); if (source) { - source->SetVolume(left_channel, right_channel); + source->SetVolume(volume); } else { SendErrorMessage(msg.routing_id(), stream_id); } diff --git a/chrome/browser/renderer_host/audio_renderer_host.h b/chrome/browser/renderer_host/audio_renderer_host.h index a1549dd..49c05c8 100644 --- a/chrome/browser/renderer_host/audio_renderer_host.h +++ b/chrome/browser/renderer_host/audio_renderer_host.h @@ -191,7 +191,7 @@ class AudioRendererHost // Sets the volume of the audio output stream. There's no IPC messages // sent back to the renderer upon success and failure. - void SetVolume(double left, double right); + void SetVolume(double volume); // Gets the volume of the audio output stream. // ViewMsg_NotifyAudioStreamVolume is sent back to renderer with volume @@ -299,8 +299,7 @@ class AudioRendererHost // ViewMsg_NotifyAudioStreamStateChanged with // AudioOutputStream::AUDIO_STREAM_ERROR is sent back to renderer if the // required IPCAudioSource is not found. - void OnSetVolume(const IPC::Message& msg, int stream_id, - double left_channel, double right_channel); + void OnSetVolume(const IPC::Message& msg, int stream_id, double volume); // Gets the volume of the stream specified, delegates to corresponding // IPCAudioSource::GetVolume(), see the method for more details. diff --git a/chrome/browser/renderer_host/audio_renderer_host_unittest.cc b/chrome/browser/renderer_host/audio_renderer_host_unittest.cc index c904a70..b4d70cd 100644 --- a/chrome/browser/renderer_host/audio_renderer_host_unittest.cc +++ b/chrome/browser/renderer_host/audio_renderer_host_unittest.cc @@ -49,8 +49,8 @@ class MockAudioRendererHost : public AudioRendererHost { void(int routing_id, int stream_id, ViewMsg_AudioStreamState state)); - MOCK_METHOD4(OnStreamVolume, - void(int routing_id, int stream_id, double left, double right)); + MOCK_METHOD3(OnStreamVolume, + void(int routing_id, int stream_id, double volume)); base::SharedMemory* shared_memory() { return shared_memory_.get(); } @@ -101,9 +101,8 @@ class MockAudioRendererHost : public AudioRendererHost { OnStreamStateChanged(msg.routing_id(), stream_id, state); } - void OnStreamVolume(const IPC::Message& msg, int stream_id, - double left, double right) { - OnStreamVolume(msg.routing_id(), stream_id, left, right); + void OnStreamVolume(const IPC::Message& msg, int stream_id, double volume) { + OnStreamVolume(msg.routing_id(), stream_id, volume); } scoped_ptr<base::SharedMemory> shared_memory_; diff --git a/chrome/common/render_messages_internal.h b/chrome/common/render_messages_internal.h index 2ff15ed..38694f3 100644 --- a/chrome/common/render_messages_internal.h +++ b/chrome/common/render_messages_internal.h @@ -620,10 +620,9 @@ IPC_BEGIN_MESSAGES(View) int /* stream id */, ViewMsg_AudioStreamState /* new state */) - IPC_MESSAGE_ROUTED3(ViewMsg_NotifyAudioStreamVolume, + IPC_MESSAGE_ROUTED2(ViewMsg_NotifyAudioStreamVolume, int /* stream id */, - double /* left channel */, - double /* right channel */) + double /* volume */) // Notification that a move or resize renderer's containing window has // started. @@ -1675,10 +1674,9 @@ IPC_BEGIN_MESSAGES(ViewHost) // Set audio volume of the stream specified by (render_view_id, stream_id). // TODO(hclam): change this to vector if we have channel numbers other than 2. - IPC_MESSAGE_ROUTED3(ViewHostMsg_SetAudioVolume, + IPC_MESSAGE_ROUTED2(ViewHostMsg_SetAudioVolume, int /* stream_id */, - double /* left_channel */, - double /* right_channel */) + double /* volume */) // A renderer sends this message when an extension process starts an API // request. The browser will always respond with a ViewMsg_ExtensionResponse. diff --git a/chrome/renderer/audio_message_filter.cc b/chrome/renderer/audio_message_filter.cc index ae73988..d5cd323 100644 --- a/chrome/renderer/audio_message_filter.cc +++ b/chrome/renderer/audio_message_filter.cc @@ -94,15 +94,14 @@ void AudioMessageFilter::OnStreamStateChanged(int stream_id, delegate->OnStateChanged(state); } -void AudioMessageFilter::OnStreamVolume(int stream_id, - double left, double right) { +void AudioMessageFilter::OnStreamVolume(int stream_id, double volume) { Delegate* delegate = delegates_.Lookup(stream_id); if (!delegate) { DLOG(WARNING) << "Got audio stream event for a non-existent or removed" " audio renderer."; return; } - delegate->OnVolume(left, right); + delegate->OnVolume(volume); } int32 AudioMessageFilter::AddDelegate(Delegate* delegate) { diff --git a/chrome/renderer/audio_message_filter.h b/chrome/renderer/audio_message_filter.h index 04ff699..7516a68 100644 --- a/chrome/renderer/audio_message_filter.h +++ b/chrome/renderer/audio_message_filter.h @@ -31,10 +31,10 @@ class AudioMessageFilter : public IPC::ChannelProxy::MessageFilter { // Called when notification of stream volume is received from the browser // process. - virtual void OnVolume(double left, double right) = 0; + virtual void OnVolume(double volume) = 0; }; - AudioMessageFilter(int32 route_id); + explicit AudioMessageFilter(int32 route_id); ~AudioMessageFilter(); // Add a delegate to the map and return id of the entry. @@ -71,7 +71,7 @@ class AudioMessageFilter : public IPC::ChannelProxy::MessageFilter { void OnStreamStateChanged(int stream_id, ViewMsg_AudioStreamState state); // Notification of volume property of an audio output stream. - void OnStreamVolume(int stream_id, double left, double right); + void OnStreamVolume(int stream_id, double volume); // A map of stream ids to delegates. IDMap<Delegate> delegates_; @@ -85,4 +85,5 @@ class AudioMessageFilter : public IPC::ChannelProxy::MessageFilter { DISALLOW_COPY_AND_ASSIGN(AudioMessageFilter); }; -#endif // CHROME_RENDERER_AUDIO_MESSAGE_FITLER_H_ +#endif // CHROME_RENDERER_AUDIO_MESSAGE_FILTER_H_ + diff --git a/chrome/renderer/audio_message_filter_unittest.cc b/chrome/renderer/audio_message_filter_unittest.cc index ee60ffa..878b284 100644 --- a/chrome/renderer/audio_message_filter_unittest.cc +++ b/chrome/renderer/audio_message_filter_unittest.cc @@ -34,10 +34,9 @@ class MockAudioDelegate : public AudioMessageFilter::Delegate { length_ = length; } - virtual void OnVolume(double left, double right) { + virtual void OnVolume(double volume) { volume_received_ = true; - left_ = left; - right_ = right; + volume_ = volume; } void Reset() { @@ -53,8 +52,7 @@ class MockAudioDelegate : public AudioMessageFilter::Delegate { length_ = 0; volume_received_ = false; - left_ = 0; - right_ = 0; + volume_ = 0; } bool request_packet_received() { return request_packet_received_; } @@ -69,8 +67,7 @@ class MockAudioDelegate : public AudioMessageFilter::Delegate { size_t length() { return length_; } bool volume_received() { return volume_received_; } - double left() { return left_; } - double right() { return right_; } + double volume() { return volume_; } private: bool request_packet_received_; @@ -85,8 +82,7 @@ class MockAudioDelegate : public AudioMessageFilter::Delegate { size_t length_; bool volume_received_; - double left_; - double right_; + double volume_; DISALLOW_COPY_AND_ASSIGN(MockAudioDelegate); }; @@ -139,15 +135,12 @@ TEST(AudioMessageFilterTest, Basic) { delegate.Reset(); // ViewMsg_NotifyAudioStreamVolume - const double kLeftVolume = 1.0; - const double kRightVolume = 2.0; + const double kVolume = 1.0; EXPECT_FALSE(delegate.volume_received()); filter->OnMessageReceived( - ViewMsg_NotifyAudioStreamVolume(kRouteId, stream_id, - kLeftVolume, kRightVolume)); + ViewMsg_NotifyAudioStreamVolume(kRouteId, stream_id, kVolume)); EXPECT_TRUE(delegate.volume_received()); - EXPECT_EQ(kLeftVolume, delegate.left()); - EXPECT_EQ(kRightVolume, delegate.right()); + EXPECT_EQ(kVolume, delegate.volume()); delegate.Reset(); message_loop.RunAllPending(); diff --git a/chrome/renderer/media/audio_renderer_impl.cc b/chrome/renderer/media/audio_renderer_impl.cc index d144457..dfca1be 100644 --- a/chrome/renderer/media/audio_renderer_impl.cc +++ b/chrome/renderer/media/audio_renderer_impl.cc @@ -147,10 +147,9 @@ void AudioRendererImpl::SetVolume(float volume) { AutoLock auto_lock(lock_); if (stopped_) return; - // TODO(hclam): change this to multichannel if possible. io_loop_->PostTask(FROM_HERE, NewRunnableMethod( - this, &AudioRendererImpl::OnSetVolume, volume, volume)); + this, &AudioRendererImpl::OnSetVolume, volume)); } void AudioRendererImpl::OnCreated(base::SharedMemoryHandle handle, @@ -211,7 +210,7 @@ void AudioRendererImpl::OnStateChanged(ViewMsg_AudioStreamState state) { } } -void AudioRendererImpl::OnVolume(double left, double right) { +void AudioRendererImpl::OnVolume(double volume) { // TODO(hclam): decide whether we need to report the current volume to // pipeline. } @@ -259,13 +258,13 @@ void AudioRendererImpl::OnDestroy() { filter_->Send(new ViewHostMsg_CloseAudioStream(0, stream_id_)); } -void AudioRendererImpl::OnSetVolume(double left, double right) { +void AudioRendererImpl::OnSetVolume(double volume) { DCHECK(MessageLoop::current() == io_loop_); AutoLock auto_lock(lock_); if (stopped_) return; - filter_->Send(new ViewHostMsg_SetAudioVolume(0, stream_id_, left, right)); + filter_->Send(new ViewHostMsg_SetAudioVolume(0, stream_id_, volume)); } void AudioRendererImpl::OnNotifyPacketReady() { diff --git a/chrome/renderer/media/audio_renderer_impl.h b/chrome/renderer/media/audio_renderer_impl.h index 489bc60..aec60e7 100644 --- a/chrome/renderer/media/audio_renderer_impl.h +++ b/chrome/renderer/media/audio_renderer_impl.h @@ -120,7 +120,7 @@ class AudioRendererImpl : public media::AudioRendererBase, const base::Time& message_timestamp); void OnStateChanged(ViewMsg_AudioStreamState state); void OnCreated(base::SharedMemoryHandle handle, size_t length); - void OnVolume(double left, double right); + void OnVolume(double volume); // Methods called on pipeline thread ---------------------------------------- // media::MediaFilter implementation. @@ -159,7 +159,7 @@ class AudioRendererImpl : public media::AudioRendererBase, size_t packet_size, size_t buffer_capacity); void OnPlay(); void OnPause(); - void OnSetVolume(double left, double right); + void OnSetVolume(double volume); void OnNotifyPacketReady(); void OnDestroy(); |