From 41ac872d4601106219ca6de49c2d71f0c28fbbcb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rafa=C3=ABl=20Carr=C3=A9?= <rafael.carre@savoirfairelinux.com> Date: Wed, 31 Aug 2011 11:17:52 -0400 Subject: [PATCH] * #6629 : keep the correct audio module when frequency changes --- daemon/src/managerimpl.cpp | 30 +++++------------------------- 1 file changed, 5 insertions(+), 25 deletions(-) diff --git a/daemon/src/managerimpl.cpp b/daemon/src/managerimpl.cpp index 2aae49f0bd..db70ee452a 100644 --- a/daemon/src/managerimpl.cpp +++ b/daemon/src/managerimpl.cpp @@ -123,35 +123,19 @@ void ManagerImpl::init (std::string config_file) audioLayerMutexLock(); if (_audiodriver) { - unsigned int sampleRate = _audiodriver->getSampleRate(); - - _debug ("Manager: Load telephone tone"); - std::string country(preferences.getZoneToneChoice()); - _telephoneTone = new TelephoneTone (country, sampleRate); - - _debug ("Manager: Loading DTMF key (%d)", sampleRate); - - sampleRate = 8000; - - _dtmfKey = new DTMF (sampleRate); + _telephoneTone = new TelephoneTone (preferences.getZoneToneChoice(), _audiodriver->getSampleRate()); + _dtmfKey = new DTMF (8000); } audioLayerMutexUnlock(); - // Load the history _history->load_history (preferences.getHistoryLimit()); - - // Init the instant messaging module _imModule->init(); - - // Register accounts registerAccounts(); } void ManagerImpl::terminate () { - _debug ("Manager: Terminate "); - std::vector<std::string> callList(getCallList()); _debug ("Manager: Hangup %zu remaining call", callList.size()); @@ -2334,8 +2318,6 @@ void ManagerImpl::setMailNotify (void) void ManagerImpl::setAudioManager (int32_t api) { - _debug ("Manager: Setting audio manager "); - audioLayerMutexLock(); if (!_audiodriver) { @@ -2481,13 +2463,11 @@ void ManagerImpl::initAudioDriver (void) void ManagerImpl::switchAudioManager (void) { - _debug ("Manager: Switching audio manager "); - audioLayerMutexLock(); bool wasStarted = _audiodriver->isStarted(); - int newType = (_audiodriver->getLayerType()) == PULSEAUDIO ? ALSA : PULSEAUDIO; + int newType = (_audiodriver->getLayerType() == PULSEAUDIO) ? ALSA : PULSEAUDIO; delete _audiodriver; if (newType == ALSA) @@ -2533,9 +2513,9 @@ void ManagerImpl::audioSamplingRateChanged (int samplerate) delete _audiodriver; if (type == PULSEAUDIO) - _audiodriver = new AlsaLayer; - else _audiodriver = new PulseLayer; + else + _audiodriver = new AlsaLayer; unsigned int sampleRate = _audiodriver->getSampleRate(); -- GitLab