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

Unified Diff: extensions/browser/api/audio/audio_service_chromeos.cc

Issue 2510093003: Handle audio node stable device ID change (Closed)
Patch Set: update few comments Created 4 years 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 side-by-side diff with in-line comments
Download patch
Index: extensions/browser/api/audio/audio_service_chromeos.cc
diff --git a/extensions/browser/api/audio/audio_service_chromeos.cc b/extensions/browser/api/audio/audio_service_chromeos.cc
index 0a17972dd544123031d89b802cde5b35cce32f2e..4bae2c034c9a94be9213e5fefa7193d93fcb0bdb 100644
--- a/extensions/browser/api/audio/audio_service_chromeos.cc
+++ b/extensions/browser/api/audio/audio_service_chromeos.cc
@@ -23,6 +23,17 @@ using api::audio::OutputDeviceInfo;
using api::audio::InputDeviceInfo;
using api::audio::AudioDeviceInfo;
+uint64_t GetStableDeviceId(const chromeos::AudioDevice& device) {
+ // TODO(tbarzic): Update audio API to expose new stable device ID version.
jennyz 2016/12/09 23:52:19 Can you file a separate bug for this work item and
tbarzic 2016/12/10 02:35:08 Done.
+ // For now, for the sake of backward compatibility, use deprecated version.
+ if (device.stable_device_id_version == 1)
+ return device.stable_device_id;
+ if (device.stable_device_id_version == 2)
+ return device.deprecated_stable_device_id;
+ NOTREACHED() << "Unsupported stable audio devide id version.";
+ return 0;
+}
+
class AudioServiceImpl : public AudioService,
public chromeos::CrasAudioHandler::AudioObserver {
public:
@@ -269,7 +280,7 @@ void AudioServiceImpl::NotifyDevicesChanged() {
devices[i].id)
: cras_audio_handler_->GetInputGainPercentForDevice(devices[i].id);
info.stable_device_id.reset(
- new std::string(base::Uint64ToString(devices[i].stable_device_id)));
+ new std::string(base::Uint64ToString(GetStableDeviceId(devices[i]))));
devices_info_list.push_back(std::move(info));
}

Powered by Google App Engine
This is Rietveld 408576698