OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "chrome/browser/copresence/chrome_whispernet_client.h" | 5 #include "chrome/browser/copresence/chrome_whispernet_client.h" |
6 | 6 |
7 #include "chrome/browser/extensions/api/copresence_private/copresence_private_ap
i.h" | 7 #include "chrome/browser/extensions/api/copresence_private/copresence_private_ap
i.h" |
8 #include "chrome/browser/extensions/component_loader.h" | 8 #include "chrome/browser/extensions/component_loader.h" |
9 #include "chrome/browser/extensions/extension_service.h" | 9 #include "chrome/browser/extensions/extension_service.h" |
10 #include "chrome/common/extensions/api/copresence_private.h" | 10 #include "chrome/common/extensions/api/copresence_private.h" |
| 11 #include "components/copresence/public/copresence_constants.h" |
11 #include "content/public/browser/browser_context.h" | 12 #include "content/public/browser/browser_context.h" |
12 #include "extensions/browser/event_router.h" | 13 #include "extensions/browser/event_router.h" |
13 #include "extensions/browser/extension_system.h" | 14 #include "extensions/browser/extension_system.h" |
14 #include "grit/browser_resources.h" | 15 #include "grit/browser_resources.h" |
15 | 16 |
16 namespace copresence { | |
17 | |
18 // Once the CL for the copresence component lands, these constants will be | |
19 // need to be picked up from components/copresence/copresence_constants.h | |
20 const int kDefaultRepetitions = 5; | |
21 const float kDefaultSampleRate = 48000.0; | |
22 const int kDefaultBitsPerSample = 16; | |
23 const float kDefaultCarrierFrequency = 18500.0; | |
24 const int kDefaultChannels = 2; | |
25 | |
26 } // namespace copresence | |
27 | |
28 // static | 17 // static |
29 const char ChromeWhispernetClient::kWhispernetProxyExtensionId[] = | 18 const char ChromeWhispernetClient::kWhispernetProxyExtensionId[] = |
30 "bpfmnplchembfbdgieamdodgaencleal"; | 19 "bpfmnplchembfbdgieamdodgaencleal"; |
31 | 20 |
32 // Public: | 21 // Public: |
33 | 22 |
34 ChromeWhispernetClient::ChromeWhispernetClient( | 23 ChromeWhispernetClient::ChromeWhispernetClient( |
35 content::BrowserContext* browser_context) | 24 content::BrowserContext* browser_context) |
36 : browser_context_(browser_context), extension_loaded_(false) { | 25 : browser_context_(browser_context), extension_loaded_(false) { |
37 } | 26 } |
(...skipping 28 matching lines...) Expand all Loading... |
66 | 55 |
67 void ChromeWhispernetClient::Shutdown() { | 56 void ChromeWhispernetClient::Shutdown() { |
68 extension_loaded_callback_.Reset(); | 57 extension_loaded_callback_.Reset(); |
69 init_callback_.Reset(); | 58 init_callback_.Reset(); |
70 tokens_callback_.Reset(); | 59 tokens_callback_.Reset(); |
71 samples_callback_.Reset(); | 60 samples_callback_.Reset(); |
72 db_callback_.Reset(); | 61 db_callback_.Reset(); |
73 } | 62 } |
74 | 63 |
75 // Fire an event to request a token encode. | 64 // Fire an event to request a token encode. |
76 void ChromeWhispernetClient::EncodeToken(const std::string& token) { | 65 void ChromeWhispernetClient::EncodeToken(const std::string& token, |
| 66 bool audible) { |
77 DCHECK(extension_loaded_); | 67 DCHECK(extension_loaded_); |
78 DCHECK(browser_context_); | 68 DCHECK(browser_context_); |
79 DCHECK(extensions::EventRouter::Get(browser_context_)); | 69 DCHECK(extensions::EventRouter::Get(browser_context_)); |
80 | 70 |
81 scoped_ptr<extensions::Event> event(new extensions::Event( | 71 scoped_ptr<extensions::Event> event(new extensions::Event( |
82 extensions::api::copresence_private::OnEncodeTokenRequest::kEventName, | 72 extensions::api::copresence_private::OnEncodeTokenRequest::kEventName, |
83 extensions::api::copresence_private::OnEncodeTokenRequest::Create(token), | 73 extensions::api::copresence_private::OnEncodeTokenRequest::Create( |
| 74 token, audible), |
84 browser_context_)); | 75 browser_context_)); |
85 | 76 |
86 extensions::EventRouter::Get(browser_context_) | 77 extensions::EventRouter::Get(browser_context_) |
87 ->DispatchEventToExtension(kWhispernetProxyExtensionId, event.Pass()); | 78 ->DispatchEventToExtension(kWhispernetProxyExtensionId, event.Pass()); |
88 } | 79 } |
89 | 80 |
90 // Fire an event to request a decode for the given samples. | 81 // Fire an event to request a decode for the given samples. |
91 void ChromeWhispernetClient::DecodeSamples(const std::string& samples) { | 82 void ChromeWhispernetClient::DecodeSamples(const std::string& samples) { |
92 DCHECK(extension_loaded_); | 83 DCHECK(extension_loaded_); |
93 DCHECK(browser_context_); | 84 DCHECK(browser_context_); |
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
191 params.play.carrier_frequency = copresence::kDefaultCarrierFrequency; | 182 params.play.carrier_frequency = copresence::kDefaultCarrierFrequency; |
192 params.play.repetitions = copresence::kDefaultRepetitions; | 183 params.play.repetitions = copresence::kDefaultRepetitions; |
193 | 184 |
194 params.record.sample_rate = copresence::kDefaultSampleRate; | 185 params.record.sample_rate = copresence::kDefaultSampleRate; |
195 params.record.bits_per_sample = copresence::kDefaultBitsPerSample; | 186 params.record.bits_per_sample = copresence::kDefaultBitsPerSample; |
196 params.record.carrier_frequency = copresence::kDefaultCarrierFrequency; | 187 params.record.carrier_frequency = copresence::kDefaultCarrierFrequency; |
197 params.record.channels = copresence::kDefaultChannels; | 188 params.record.channels = copresence::kDefaultChannels; |
198 | 189 |
199 InitializeWhispernet(params); | 190 InitializeWhispernet(params); |
200 } | 191 } |
OLD | NEW |