| OLD | NEW |
| 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/browser/speech/speech_recognition_dispatcher_host.h" | 5 #include "content/browser/speech/speech_recognition_dispatcher_host.h" |
| 6 | 6 |
| 7 #include "base/bind.h" | 7 #include "base/bind.h" |
| 8 #include "base/command_line.h" | 8 #include "base/command_line.h" |
| 9 #include "base/lazy_instance.h" | 9 #include "base/lazy_instance.h" |
| 10 #include "content/browser/browser_plugin/browser_plugin_guest.h" | 10 #include "content/browser/browser_plugin/browser_plugin_guest.h" |
| (...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 101 } | 101 } |
| 102 | 102 |
| 103 // TODO(lazyboy): Check if filter_profanities should use |render_process_id| | 103 // TODO(lazyboy): Check if filter_profanities should use |render_process_id| |
| 104 // instead of |render_process_id_|. | 104 // instead of |render_process_id_|. |
| 105 bool filter_profanities = | 105 bool filter_profanities = |
| 106 SpeechRecognitionManagerImpl::GetInstance() && | 106 SpeechRecognitionManagerImpl::GetInstance() && |
| 107 SpeechRecognitionManagerImpl::GetInstance()->delegate() && | 107 SpeechRecognitionManagerImpl::GetInstance()->delegate() && |
| 108 SpeechRecognitionManagerImpl::GetInstance()->delegate()-> | 108 SpeechRecognitionManagerImpl::GetInstance()->delegate()-> |
| 109 FilterProfanities(render_process_id_); | 109 FilterProfanities(render_process_id_); |
| 110 | 110 |
| 111 // TODO(miu): This is a hack to allow SpeechRecognition to operate with the |
| 112 // MediaStreamManager, which partitions requests per RenderFrame, not per |
| 113 // RenderView. http://crbug.com/390749 |
| 114 const int params_render_frame_id = render_view_host ? |
| 115 render_view_host->GetMainFrame()->GetRoutingID() : MSG_ROUTING_NONE; |
| 116 |
| 111 BrowserThread::PostTask( | 117 BrowserThread::PostTask( |
| 112 BrowserThread::IO, | 118 BrowserThread::IO, |
| 113 FROM_HERE, | 119 FROM_HERE, |
| 114 base::Bind(&SpeechRecognitionDispatcherHost::OnStartRequestOnIO, | 120 base::Bind(&SpeechRecognitionDispatcherHost::OnStartRequestOnIO, |
| 115 this, | 121 this, |
| 116 embedder_render_process_id, | 122 embedder_render_process_id, |
| 117 embedder_render_view_id, | 123 embedder_render_view_id, |
| 118 input_params, | 124 input_params, |
| 125 params_render_frame_id, |
| 119 filter_profanities)); | 126 filter_profanities)); |
| 120 } | 127 } |
| 121 | 128 |
| 122 void SpeechRecognitionDispatcherHost::OnStartRequestOnIO( | 129 void SpeechRecognitionDispatcherHost::OnStartRequestOnIO( |
| 123 int embedder_render_process_id, | 130 int embedder_render_process_id, |
| 124 int embedder_render_view_id, | 131 int embedder_render_view_id, |
| 125 const SpeechRecognitionHostMsg_StartRequest_Params& params, | 132 const SpeechRecognitionHostMsg_StartRequest_Params& params, |
| 133 int params_render_frame_id, |
| 126 bool filter_profanities) { | 134 bool filter_profanities) { |
| 127 SpeechRecognitionSessionContext context; | 135 SpeechRecognitionSessionContext context; |
| 128 context.context_name = params.origin_url; | 136 context.context_name = params.origin_url; |
| 129 context.render_process_id = render_process_id_; | 137 context.render_process_id = render_process_id_; |
| 130 context.render_view_id = params.render_view_id; | 138 context.render_view_id = params.render_view_id; |
| 139 context.render_frame_id = params_render_frame_id; |
| 131 context.embedder_render_process_id = embedder_render_process_id; | 140 context.embedder_render_process_id = embedder_render_process_id; |
| 132 context.embedder_render_view_id = embedder_render_view_id; | 141 context.embedder_render_view_id = embedder_render_view_id; |
| 133 if (embedder_render_process_id) | 142 if (embedder_render_process_id) |
| 134 context.guest_render_view_id = params.render_view_id; | 143 context.guest_render_view_id = params.render_view_id; |
| 135 context.request_id = params.request_id; | 144 context.request_id = params.request_id; |
| 136 | 145 |
| 137 SpeechRecognitionSessionConfig config; | 146 SpeechRecognitionSessionConfig config; |
| 138 config.is_legacy_api = false; | 147 config.is_legacy_api = false; |
| 139 config.language = params.language; | 148 config.language = params.language; |
| 140 config.grammars = params.grammars; | 149 config.grammars = params.grammars; |
| (...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 245 void SpeechRecognitionDispatcherHost::OnAudioLevelsChange(int session_id, | 254 void SpeechRecognitionDispatcherHost::OnAudioLevelsChange(int session_id, |
| 246 float volume, | 255 float volume, |
| 247 float noise_volume) { | 256 float noise_volume) { |
| 248 } | 257 } |
| 249 | 258 |
| 250 void SpeechRecognitionDispatcherHost::OnEnvironmentEstimationComplete( | 259 void SpeechRecognitionDispatcherHost::OnEnvironmentEstimationComplete( |
| 251 int session_id) { | 260 int session_id) { |
| 252 } | 261 } |
| 253 | 262 |
| 254 } // namespace content | 263 } // namespace content |
| OLD | NEW |