Merge "audiopolicy: Add AUDIO_OUTPUT_FLAG_TTS to flags enum table" into mnc-dev
diff --git a/services/audiopolicy/managerdefault/AudioPolicyManager.cpp b/services/audiopolicy/managerdefault/AudioPolicyManager.cpp
index 6befb8d..deebc23 100644
--- a/services/audiopolicy/managerdefault/AudioPolicyManager.cpp
+++ b/services/audiopolicy/managerdefault/AudioPolicyManager.cpp
@@ -4069,7 +4069,14 @@
for (size_t routeIndex = 0; routeIndex < mOutputRoutes.size(); routeIndex++) {
sp<SessionRoute> route = mOutputRoutes.valueAt(routeIndex);
routing_strategy strat = getStrategy(route->mStreamType);
- if (strat == strategy && route->isActive()) {
+ // Special case for accessibility strategy which must follow any strategy it is
+ // currently remapped to
+ bool strategyMatch = (strat == strategy) ||
+ ((strategy == STRATEGY_ACCESSIBILITY) &&
+ ((mEngine->getStrategyForUsage(
+ AUDIO_USAGE_ASSISTANCE_ACCESSIBILITY) == strat) ||
+ (strat == STRATEGY_MEDIA)));
+ if (strategyMatch && route->isActive()) {
return route->mDeviceDescriptor->type();
}
}