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

Side by Side Diff: chrome/browser/copresence/chrome_whispernet_client.cc

Issue 637223011: Redesign the copresence audio handlers. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git/+/master
Patch Set: Created 6 years, 2 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
OLDNEW
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"
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
56 void ChromeWhispernetClient::Shutdown() { 56 void ChromeWhispernetClient::Shutdown() {
57 extension_loaded_callback_.Reset(); 57 extension_loaded_callback_.Reset();
58 init_callback_.Reset(); 58 init_callback_.Reset();
59 tokens_callback_.Reset(); 59 tokens_callback_.Reset();
60 samples_callback_.Reset(); 60 samples_callback_.Reset();
61 db_callback_.Reset(); 61 db_callback_.Reset();
62 } 62 }
63 63
64 // Fire an event to request a token encode. 64 // Fire an event to request a token encode.
65 void ChromeWhispernetClient::EncodeToken(const std::string& token, 65 void ChromeWhispernetClient::EncodeToken(const std::string& token,
66 bool audible) { 66 copresence::AudioType type) {
67 DCHECK(extension_loaded_); 67 DCHECK(extension_loaded_);
68 DCHECK(browser_context_); 68 DCHECK(browser_context_);
69 DCHECK(extensions::EventRouter::Get(browser_context_)); 69 DCHECK(extensions::EventRouter::Get(browser_context_));
70 70
71 scoped_ptr<extensions::Event> event(new extensions::Event( 71 scoped_ptr<extensions::Event> event(new extensions::Event(
72 extensions::api::copresence_private::OnEncodeTokenRequest::kEventName, 72 extensions::api::copresence_private::OnEncodeTokenRequest::kEventName,
73 extensions::api::copresence_private::OnEncodeTokenRequest::Create( 73 extensions::api::copresence_private::OnEncodeTokenRequest::Create(
74 token, audible), 74 token, type == copresence::AUDIBLE),
75 browser_context_)); 75 browser_context_));
76 76
77 extensions::EventRouter::Get(browser_context_) 77 extensions::EventRouter::Get(browser_context_)
78 ->DispatchEventToExtension(kWhispernetProxyExtensionId, event.Pass()); 78 ->DispatchEventToExtension(kWhispernetProxyExtensionId, event.Pass());
79 } 79 }
80 80
81 // Fire an event to request a decode for the given samples. 81 // Fire an event to request a decode for the given samples.
82 void ChromeWhispernetClient::DecodeSamples(const std::string& samples) { 82 void ChromeWhispernetClient::DecodeSamples(copresence::AudioType type,
83 const std::string& samples) {
83 DCHECK(extension_loaded_); 84 DCHECK(extension_loaded_);
84 DCHECK(browser_context_); 85 DCHECK(browser_context_);
85 DCHECK(extensions::EventRouter::Get(browser_context_)); 86 DCHECK(extensions::EventRouter::Get(browser_context_));
86 87
88 extensions::api::copresence_private::DecodeSamplesParameters request_type;
89 request_type.decode_audible =
90 type == copresence::AUDIBLE || type == copresence::BOTH;
91 request_type.decode_inaudible =
92 type == copresence::INAUDIBLE || type == copresence::BOTH;
93
87 scoped_ptr<extensions::Event> event(new extensions::Event( 94 scoped_ptr<extensions::Event> event(new extensions::Event(
88 extensions::api::copresence_private::OnDecodeSamplesRequest::kEventName, 95 extensions::api::copresence_private::OnDecodeSamplesRequest::kEventName,
89 extensions::api::copresence_private::OnDecodeSamplesRequest::Create( 96 extensions::api::copresence_private::OnDecodeSamplesRequest::Create(
90 samples), 97 samples, request_type),
91 browser_context_)); 98 browser_context_));
92 99
93 extensions::EventRouter::Get(browser_context_) 100 extensions::EventRouter::Get(browser_context_)
94 ->DispatchEventToExtension(kWhispernetProxyExtensionId, event.Pass()); 101 ->DispatchEventToExtension(kWhispernetProxyExtensionId, event.Pass());
95 } 102 }
96 103
97 void ChromeWhispernetClient::DetectBroadcast() { 104 void ChromeWhispernetClient::DetectBroadcast() {
98 DCHECK(extension_loaded_); 105 DCHECK(extension_loaded_);
99 DCHECK(browser_context_); 106 DCHECK(browser_context_);
100 DCHECK(extensions::EventRouter::Get(browser_context_)); 107 DCHECK(extensions::EventRouter::Get(browser_context_));
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after
182 params.play.carrier_frequency = copresence::kDefaultCarrierFrequency; 189 params.play.carrier_frequency = copresence::kDefaultCarrierFrequency;
183 params.play.repetitions = copresence::kDefaultRepetitions; 190 params.play.repetitions = copresence::kDefaultRepetitions;
184 191
185 params.record.sample_rate = copresence::kDefaultSampleRate; 192 params.record.sample_rate = copresence::kDefaultSampleRate;
186 params.record.bits_per_sample = copresence::kDefaultBitsPerSample; 193 params.record.bits_per_sample = copresence::kDefaultBitsPerSample;
187 params.record.carrier_frequency = copresence::kDefaultCarrierFrequency; 194 params.record.carrier_frequency = copresence::kDefaultCarrierFrequency;
188 params.record.channels = copresence::kDefaultChannels; 195 params.record.channels = copresence::kDefaultChannels;
189 196
190 InitializeWhispernet(params); 197 InitializeWhispernet(params);
191 } 198 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698