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; | |
ncarter (slow)
2014/07/10 01:17:51
render_view_host->GetMainFrame() is pretty awful b
| |
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 |