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

Side by Side Diff: content/renderer/pepper/ppb_audio_impl.cc

Issue 20777009: A few more cleanups to the pepper code. Dispatch IPCs in the sockets implementations directly by ha… (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 7 years, 4 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) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/pepper/ppb_audio_impl.h" 5 #include "content/renderer/pepper/ppb_audio_impl.h"
6 6
7 #include "base/logging.h" 7 #include "base/logging.h"
8 #include "content/renderer/pepper/common.h" 8 #include "content/renderer/pepper/common.h"
9 #include "content/renderer/pepper/pepper_platform_audio_output.h" 9 #include "content/renderer/pepper/pepper_platform_audio_output.h"
10 #include "content/renderer/pepper/pepper_plugin_instance_impl.h" 10 #include "content/renderer/pepper/pepper_plugin_instance_impl.h"
11 #include "content/renderer/pepper/resource_helper.h"
12 #include "content/renderer/render_view_impl.h" 11 #include "content/renderer/render_view_impl.h"
13 #include "media/audio/audio_output_controller.h" 12 #include "media/audio/audio_output_controller.h"
14 #include "ppapi/c/pp_completion_callback.h" 13 #include "ppapi/c/pp_completion_callback.h"
15 #include "ppapi/c/ppb_audio.h" 14 #include "ppapi/c/ppb_audio.h"
16 #include "ppapi/c/ppb_audio_config.h" 15 #include "ppapi/c/ppb_audio_config.h"
17 #include "ppapi/shared_impl/resource_tracker.h" 16 #include "ppapi/shared_impl/resource_tracker.h"
18 #include "ppapi/thunk/enter.h" 17 #include "ppapi/thunk/enter.h"
19 #include "ppapi/thunk/ppb_audio_config_api.h" 18 #include "ppapi/thunk/ppb_audio_config_api.h"
20 #include "ppapi/thunk/thunk.h" 19 #include "ppapi/thunk/thunk.h"
21 20
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
67 // Validate the config and keep a reference to it. 66 // Validate the config and keep a reference to it.
68 EnterResourceNoLock<PPB_AudioConfig_API> enter(config, true); 67 EnterResourceNoLock<PPB_AudioConfig_API> enter(config, true);
69 if (enter.failed()) 68 if (enter.failed())
70 return false; 69 return false;
71 config_ = config; 70 config_ = config;
72 71
73 if (!callback) 72 if (!callback)
74 return false; 73 return false;
75 SetCallback(callback, user_data); 74 SetCallback(callback, user_data);
76 75
77 PepperPluginInstanceImpl* instance = ResourceHelper::GetPluginInstance(this); 76 PepperPluginInstance* instance = PepperPluginInstance::Get(pp_instance());
78 if (!instance) 77 if (!instance)
79 return false; 78 return false;
80 79
81 // When the stream is created, we'll get called back on StreamCreated(). 80 // When the stream is created, we'll get called back on StreamCreated().
82 CHECK(!audio_); 81 CHECK(!audio_);
83 audio_ = PepperPlatformAudioOutput::Create( 82 audio_ = PepperPlatformAudioOutput::Create(
84 static_cast<int>(enter.object()->GetSampleRate()), 83 static_cast<int>(enter.object()->GetSampleRate()),
85 static_cast<int>(enter.object()->GetSampleFrameCount()), 84 static_cast<int>(enter.object()->GetSampleFrameCount()),
86 instance->GetRenderView()->GetRoutingID(), 85 instance->GetRenderView()->GetRoutingID(),
87 this); 86 this);
(...skipping 29 matching lines...) Expand all
117 116
118 int32_t PPB_Audio_Impl::Open( 117 int32_t PPB_Audio_Impl::Open(
119 PP_Resource config, 118 PP_Resource config,
120 scoped_refptr<TrackedCallback> create_callback) { 119 scoped_refptr<TrackedCallback> create_callback) {
121 // Validate the config and keep a reference to it. 120 // Validate the config and keep a reference to it.
122 EnterResourceNoLock<PPB_AudioConfig_API> enter(config, true); 121 EnterResourceNoLock<PPB_AudioConfig_API> enter(config, true);
123 if (enter.failed()) 122 if (enter.failed())
124 return PP_ERROR_FAILED; 123 return PP_ERROR_FAILED;
125 config_ = config; 124 config_ = config;
126 125
127 PepperPluginInstanceImpl* instance = ResourceHelper::GetPluginInstance(this); 126 PepperPluginInstance* instance = PepperPluginInstance::Get(pp_instance());
128 if (!instance) 127 if (!instance)
129 return PP_ERROR_FAILED; 128 return PP_ERROR_FAILED;
130 129
131 // When the stream is created, we'll get called back on StreamCreated(). 130 // When the stream is created, we'll get called back on StreamCreated().
132 DCHECK(!audio_); 131 DCHECK(!audio_);
133 audio_ = PepperPlatformAudioOutput::Create( 132 audio_ = PepperPlatformAudioOutput::Create(
134 static_cast<int>(enter.object()->GetSampleRate()), 133 static_cast<int>(enter.object()->GetSampleRate()),
135 static_cast<int>(enter.object()->GetSampleFrameCount()), 134 static_cast<int>(enter.object()->GetSampleFrameCount()),
136 instance->GetRenderView()->GetRoutingID(), 135 instance->GetRenderView()->GetRoutingID(),
137 this); 136 this);
(...skipping 19 matching lines...) Expand all
157 156
158 void PPB_Audio_Impl::OnSetStreamInfo( 157 void PPB_Audio_Impl::OnSetStreamInfo(
159 base::SharedMemoryHandle shared_memory_handle, 158 base::SharedMemoryHandle shared_memory_handle,
160 size_t shared_memory_size, 159 size_t shared_memory_size,
161 base::SyncSocket::Handle socket_handle) { 160 base::SyncSocket::Handle socket_handle) {
162 SetStreamInfo(pp_instance(), shared_memory_handle, shared_memory_size, 161 SetStreamInfo(pp_instance(), shared_memory_handle, shared_memory_size,
163 socket_handle, sample_frame_count_); 162 socket_handle, sample_frame_count_);
164 } 163 }
165 164
166 } // namespace content 165 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698