Loading services/audiopolicy/common/managerdefinitions/include/AudioPolicyConfig.h +10 −0 Original line number Original line Diff line number Diff line Loading @@ -48,6 +48,14 @@ public: mIsSpeakerDrcEnabled(false) mIsSpeakerDrcEnabled(false) {} {} const std::string& getSource() const { return mSource; } void setSource(const std::string& file) { mSource = file; } void setVolumes(const VolumeCurvesCollection &volumes) void setVolumes(const VolumeCurvesCollection &volumes) { { if (mVolumeCurves != nullptr) { if (mVolumeCurves != nullptr) { Loading Loading @@ -107,6 +115,7 @@ public: void setDefault(void) void setDefault(void) { { mSource = "AudioPolicyConfig::setDefault"; mDefaultOutputDevices = new DeviceDescriptor(AUDIO_DEVICE_OUT_SPEAKER); mDefaultOutputDevices = new DeviceDescriptor(AUDIO_DEVICE_OUT_SPEAKER); sp<HwModule> module; sp<HwModule> module; sp<DeviceDescriptor> defaultInputDevice = new DeviceDescriptor(AUDIO_DEVICE_IN_BUILTIN_MIC); sp<DeviceDescriptor> defaultInputDevice = new DeviceDescriptor(AUDIO_DEVICE_IN_BUILTIN_MIC); Loading Loading @@ -136,6 +145,7 @@ public: } } private: private: std::string mSource; HwModuleCollection &mHwModules; /**< Collection of Module, with Profiles, i.e. Mix Ports. */ HwModuleCollection &mHwModules; /**< Collection of Module, with Profiles, i.e. Mix Ports. */ DeviceVector &mAvailableOutputDevices; DeviceVector &mAvailableOutputDevices; DeviceVector &mAvailableInputDevices; DeviceVector &mAvailableInputDevices; Loading services/audiopolicy/common/managerdefinitions/src/ConfigParsingUtils.cpp +1 −0 Original line number Original line Diff line number Diff line Loading @@ -412,6 +412,7 @@ status_t ConfigParsingUtils::loadConfig(const char *path, AudioPolicyConfig &con free(data); free(data); ALOGI("loadAudioPolicyConfig() loaded %s\n", path); ALOGI("loadAudioPolicyConfig() loaded %s\n", path); config.setSource(path); return NO_ERROR; return NO_ERROR; } } Loading services/audiopolicy/managerdefault/AudioPolicyManager.cpp +15 −32 Original line number Original line Diff line number Diff line Loading @@ -2580,42 +2580,24 @@ status_t AudioPolicyManager::unregisterPolicyMixes(Vector<AudioMix> mixes) status_t AudioPolicyManager::dump(int fd) status_t AudioPolicyManager::dump(int fd) { { const size_t SIZE = 256; char buffer[SIZE]; String8 result; String8 result; result.appendFormat("\nAudioPolicyManager Dump: %p\n", this); snprintf(buffer, SIZE, "\nAudioPolicyManager Dump: %p\n", this); result.appendFormat(" Primary Output: %d\n", result.append(buffer); snprintf(buffer, SIZE, " Primary Output: %d\n", hasPrimaryOutput() ? mPrimaryOutput->mIoHandle : AUDIO_IO_HANDLE_NONE); hasPrimaryOutput() ? mPrimaryOutput->mIoHandle : AUDIO_IO_HANDLE_NONE); result.append(buffer); std::string stateLiteral; std::string stateLiteral; AudioModeConverter::toString(mEngine->getPhoneState(), stateLiteral); AudioModeConverter::toString(mEngine->getPhoneState(), stateLiteral); snprintf(buffer, SIZE, " Phone state: %s\n", stateLiteral.c_str()); result.appendFormat(" Phone state: %s\n", stateLiteral.c_str()); result.append(buffer); const char* forceUses[AUDIO_POLICY_FORCE_USE_CNT] = { snprintf(buffer, SIZE, " Force use for communications %d\n", "communications", "media", "record", "dock", "system", mEngine->getForceUse(AUDIO_POLICY_FORCE_FOR_COMMUNICATION)); "HDMI system audio", "encoded surround output", "vibrate ringing" }; result.append(buffer); for (audio_policy_force_use_t i = AUDIO_POLICY_FORCE_FOR_COMMUNICATION; snprintf(buffer, SIZE, " Force use for media %d\n", mEngine->getForceUse(AUDIO_POLICY_FORCE_FOR_MEDIA)); i < AUDIO_POLICY_FORCE_USE_CNT; i = (audio_policy_force_use_t)((int)i + 1)) { result.append(buffer); result.appendFormat(" Force use for %s: %d\n", snprintf(buffer, SIZE, " Force use for record %d\n", mEngine->getForceUse(AUDIO_POLICY_FORCE_FOR_RECORD)); forceUses[i], mEngine->getForceUse(i)); result.append(buffer); } snprintf(buffer, SIZE, " Force use for dock %d\n", mEngine->getForceUse(AUDIO_POLICY_FORCE_FOR_DOCK)); result.appendFormat(" TTS output %savailable\n", mTtsOutputAvailable ? "" : "not "); result.append(buffer); result.appendFormat(" Master mono: %s\n", mMasterMono ? "on" : "off"); snprintf(buffer, SIZE, " Force use for system %d\n", mEngine->getForceUse(AUDIO_POLICY_FORCE_FOR_SYSTEM)); result.appendFormat(" Config source: %s\n", getConfig().getSource().c_str()); result.append(buffer); snprintf(buffer, SIZE, " Force use for hdmi system audio %d\n", mEngine->getForceUse(AUDIO_POLICY_FORCE_FOR_HDMI_SYSTEM_AUDIO)); result.append(buffer); snprintf(buffer, SIZE, " Force use for encoded surround output %d\n", mEngine->getForceUse(AUDIO_POLICY_FORCE_FOR_ENCODED_SURROUND)); result.append(buffer); snprintf(buffer, SIZE, " TTS output %s\n", mTtsOutputAvailable ? "available" : "not available"); result.append(buffer); snprintf(buffer, SIZE, " Master mono: %s\n", mMasterMono ? "on" : "off"); result.append(buffer); write(fd, result.string(), result.size()); write(fd, result.string(), result.size()); mAvailableOutputDevices.dump(fd, String8("Available output")); mAvailableOutputDevices.dump(fd, String8("Available output")); Loading Loading @@ -3565,6 +3547,7 @@ static status_t deserializeAudioPolicyXmlConfig(AudioPolicyConfig &config) { "%s/%s", kConfigLocationList[i], fileName); "%s/%s", kConfigLocationList[i], fileName); ret = serializer.deserialize(audioPolicyXmlConfigFile, config); ret = serializer.deserialize(audioPolicyXmlConfigFile, config); if (ret == NO_ERROR) { if (ret == NO_ERROR) { config.setSource(audioPolicyXmlConfigFile); return ret; return ret; } } } } Loading Loading
services/audiopolicy/common/managerdefinitions/include/AudioPolicyConfig.h +10 −0 Original line number Original line Diff line number Diff line Loading @@ -48,6 +48,14 @@ public: mIsSpeakerDrcEnabled(false) mIsSpeakerDrcEnabled(false) {} {} const std::string& getSource() const { return mSource; } void setSource(const std::string& file) { mSource = file; } void setVolumes(const VolumeCurvesCollection &volumes) void setVolumes(const VolumeCurvesCollection &volumes) { { if (mVolumeCurves != nullptr) { if (mVolumeCurves != nullptr) { Loading Loading @@ -107,6 +115,7 @@ public: void setDefault(void) void setDefault(void) { { mSource = "AudioPolicyConfig::setDefault"; mDefaultOutputDevices = new DeviceDescriptor(AUDIO_DEVICE_OUT_SPEAKER); mDefaultOutputDevices = new DeviceDescriptor(AUDIO_DEVICE_OUT_SPEAKER); sp<HwModule> module; sp<HwModule> module; sp<DeviceDescriptor> defaultInputDevice = new DeviceDescriptor(AUDIO_DEVICE_IN_BUILTIN_MIC); sp<DeviceDescriptor> defaultInputDevice = new DeviceDescriptor(AUDIO_DEVICE_IN_BUILTIN_MIC); Loading Loading @@ -136,6 +145,7 @@ public: } } private: private: std::string mSource; HwModuleCollection &mHwModules; /**< Collection of Module, with Profiles, i.e. Mix Ports. */ HwModuleCollection &mHwModules; /**< Collection of Module, with Profiles, i.e. Mix Ports. */ DeviceVector &mAvailableOutputDevices; DeviceVector &mAvailableOutputDevices; DeviceVector &mAvailableInputDevices; DeviceVector &mAvailableInputDevices; Loading
services/audiopolicy/common/managerdefinitions/src/ConfigParsingUtils.cpp +1 −0 Original line number Original line Diff line number Diff line Loading @@ -412,6 +412,7 @@ status_t ConfigParsingUtils::loadConfig(const char *path, AudioPolicyConfig &con free(data); free(data); ALOGI("loadAudioPolicyConfig() loaded %s\n", path); ALOGI("loadAudioPolicyConfig() loaded %s\n", path); config.setSource(path); return NO_ERROR; return NO_ERROR; } } Loading
services/audiopolicy/managerdefault/AudioPolicyManager.cpp +15 −32 Original line number Original line Diff line number Diff line Loading @@ -2580,42 +2580,24 @@ status_t AudioPolicyManager::unregisterPolicyMixes(Vector<AudioMix> mixes) status_t AudioPolicyManager::dump(int fd) status_t AudioPolicyManager::dump(int fd) { { const size_t SIZE = 256; char buffer[SIZE]; String8 result; String8 result; result.appendFormat("\nAudioPolicyManager Dump: %p\n", this); snprintf(buffer, SIZE, "\nAudioPolicyManager Dump: %p\n", this); result.appendFormat(" Primary Output: %d\n", result.append(buffer); snprintf(buffer, SIZE, " Primary Output: %d\n", hasPrimaryOutput() ? mPrimaryOutput->mIoHandle : AUDIO_IO_HANDLE_NONE); hasPrimaryOutput() ? mPrimaryOutput->mIoHandle : AUDIO_IO_HANDLE_NONE); result.append(buffer); std::string stateLiteral; std::string stateLiteral; AudioModeConverter::toString(mEngine->getPhoneState(), stateLiteral); AudioModeConverter::toString(mEngine->getPhoneState(), stateLiteral); snprintf(buffer, SIZE, " Phone state: %s\n", stateLiteral.c_str()); result.appendFormat(" Phone state: %s\n", stateLiteral.c_str()); result.append(buffer); const char* forceUses[AUDIO_POLICY_FORCE_USE_CNT] = { snprintf(buffer, SIZE, " Force use for communications %d\n", "communications", "media", "record", "dock", "system", mEngine->getForceUse(AUDIO_POLICY_FORCE_FOR_COMMUNICATION)); "HDMI system audio", "encoded surround output", "vibrate ringing" }; result.append(buffer); for (audio_policy_force_use_t i = AUDIO_POLICY_FORCE_FOR_COMMUNICATION; snprintf(buffer, SIZE, " Force use for media %d\n", mEngine->getForceUse(AUDIO_POLICY_FORCE_FOR_MEDIA)); i < AUDIO_POLICY_FORCE_USE_CNT; i = (audio_policy_force_use_t)((int)i + 1)) { result.append(buffer); result.appendFormat(" Force use for %s: %d\n", snprintf(buffer, SIZE, " Force use for record %d\n", mEngine->getForceUse(AUDIO_POLICY_FORCE_FOR_RECORD)); forceUses[i], mEngine->getForceUse(i)); result.append(buffer); } snprintf(buffer, SIZE, " Force use for dock %d\n", mEngine->getForceUse(AUDIO_POLICY_FORCE_FOR_DOCK)); result.appendFormat(" TTS output %savailable\n", mTtsOutputAvailable ? "" : "not "); result.append(buffer); result.appendFormat(" Master mono: %s\n", mMasterMono ? "on" : "off"); snprintf(buffer, SIZE, " Force use for system %d\n", mEngine->getForceUse(AUDIO_POLICY_FORCE_FOR_SYSTEM)); result.appendFormat(" Config source: %s\n", getConfig().getSource().c_str()); result.append(buffer); snprintf(buffer, SIZE, " Force use for hdmi system audio %d\n", mEngine->getForceUse(AUDIO_POLICY_FORCE_FOR_HDMI_SYSTEM_AUDIO)); result.append(buffer); snprintf(buffer, SIZE, " Force use for encoded surround output %d\n", mEngine->getForceUse(AUDIO_POLICY_FORCE_FOR_ENCODED_SURROUND)); result.append(buffer); snprintf(buffer, SIZE, " TTS output %s\n", mTtsOutputAvailable ? "available" : "not available"); result.append(buffer); snprintf(buffer, SIZE, " Master mono: %s\n", mMasterMono ? "on" : "off"); result.append(buffer); write(fd, result.string(), result.size()); write(fd, result.string(), result.size()); mAvailableOutputDevices.dump(fd, String8("Available output")); mAvailableOutputDevices.dump(fd, String8("Available output")); Loading Loading @@ -3565,6 +3547,7 @@ static status_t deserializeAudioPolicyXmlConfig(AudioPolicyConfig &config) { "%s/%s", kConfigLocationList[i], fileName); "%s/%s", kConfigLocationList[i], fileName); ret = serializer.deserialize(audioPolicyXmlConfigFile, config); ret = serializer.deserialize(audioPolicyXmlConfigFile, config); if (ret == NO_ERROR) { if (ret == NO_ERROR) { config.setSource(audioPolicyXmlConfigFile); return ret; return ret; } } } } Loading