Merge "AudioAttributes: fix setInternalLegacyStreamType()" into qt-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
935f4e8d4b
@@ -816,6 +816,8 @@ public final class AudioAttributes implements Parcelable {
|
||||
*/
|
||||
@UnsupportedAppUsage
|
||||
public Builder setInternalLegacyStreamType(int streamType) {
|
||||
mContentType = CONTENT_TYPE_UNKNOWN;
|
||||
mUsage = USAGE_UNKNOWN;
|
||||
if (AudioProductStrategy.getAudioProductStrategies().size() > 0) {
|
||||
AudioAttributes attributes =
|
||||
AudioProductStrategy.getAudioAttributesForStrategyWithLegacyStreamType(
|
||||
@@ -828,49 +830,52 @@ public final class AudioAttributes implements Parcelable {
|
||||
mTags = attributes.mTags;
|
||||
mBundle = attributes.mBundle;
|
||||
mSource = attributes.mSource;
|
||||
return this;
|
||||
}
|
||||
}
|
||||
switch(streamType) {
|
||||
case AudioSystem.STREAM_VOICE_CALL:
|
||||
mContentType = CONTENT_TYPE_SPEECH;
|
||||
break;
|
||||
case AudioSystem.STREAM_SYSTEM_ENFORCED:
|
||||
mFlags |= FLAG_AUDIBILITY_ENFORCED;
|
||||
// intended fall through, attributes in common with STREAM_SYSTEM
|
||||
case AudioSystem.STREAM_SYSTEM:
|
||||
mContentType = CONTENT_TYPE_SONIFICATION;
|
||||
break;
|
||||
case AudioSystem.STREAM_RING:
|
||||
mContentType = CONTENT_TYPE_SONIFICATION;
|
||||
break;
|
||||
case AudioSystem.STREAM_MUSIC:
|
||||
mContentType = CONTENT_TYPE_MUSIC;
|
||||
break;
|
||||
case AudioSystem.STREAM_ALARM:
|
||||
mContentType = CONTENT_TYPE_SONIFICATION;
|
||||
break;
|
||||
case AudioSystem.STREAM_NOTIFICATION:
|
||||
mContentType = CONTENT_TYPE_SONIFICATION;
|
||||
break;
|
||||
case AudioSystem.STREAM_BLUETOOTH_SCO:
|
||||
mContentType = CONTENT_TYPE_SPEECH;
|
||||
mFlags |= FLAG_SCO;
|
||||
break;
|
||||
case AudioSystem.STREAM_DTMF:
|
||||
mContentType = CONTENT_TYPE_SONIFICATION;
|
||||
break;
|
||||
case AudioSystem.STREAM_TTS:
|
||||
mContentType = CONTENT_TYPE_SONIFICATION;
|
||||
mFlags |= FLAG_BEACON;
|
||||
break;
|
||||
case AudioSystem.STREAM_ACCESSIBILITY:
|
||||
mContentType = CONTENT_TYPE_SPEECH;
|
||||
break;
|
||||
default:
|
||||
Log.e(TAG, "Invalid stream type " + streamType + " for AudioAttributes");
|
||||
if (mContentType == CONTENT_TYPE_UNKNOWN) {
|
||||
switch (streamType) {
|
||||
case AudioSystem.STREAM_VOICE_CALL:
|
||||
mContentType = CONTENT_TYPE_SPEECH;
|
||||
break;
|
||||
case AudioSystem.STREAM_SYSTEM_ENFORCED:
|
||||
mFlags |= FLAG_AUDIBILITY_ENFORCED;
|
||||
// intended fall through, attributes in common with STREAM_SYSTEM
|
||||
case AudioSystem.STREAM_SYSTEM:
|
||||
mContentType = CONTENT_TYPE_SONIFICATION;
|
||||
break;
|
||||
case AudioSystem.STREAM_RING:
|
||||
mContentType = CONTENT_TYPE_SONIFICATION;
|
||||
break;
|
||||
case AudioSystem.STREAM_MUSIC:
|
||||
mContentType = CONTENT_TYPE_MUSIC;
|
||||
break;
|
||||
case AudioSystem.STREAM_ALARM:
|
||||
mContentType = CONTENT_TYPE_SONIFICATION;
|
||||
break;
|
||||
case AudioSystem.STREAM_NOTIFICATION:
|
||||
mContentType = CONTENT_TYPE_SONIFICATION;
|
||||
break;
|
||||
case AudioSystem.STREAM_BLUETOOTH_SCO:
|
||||
mContentType = CONTENT_TYPE_SPEECH;
|
||||
mFlags |= FLAG_SCO;
|
||||
break;
|
||||
case AudioSystem.STREAM_DTMF:
|
||||
mContentType = CONTENT_TYPE_SONIFICATION;
|
||||
break;
|
||||
case AudioSystem.STREAM_TTS:
|
||||
mContentType = CONTENT_TYPE_SONIFICATION;
|
||||
mFlags |= FLAG_BEACON;
|
||||
break;
|
||||
case AudioSystem.STREAM_ACCESSIBILITY:
|
||||
mContentType = CONTENT_TYPE_SPEECH;
|
||||
break;
|
||||
default:
|
||||
Log.e(TAG, "Invalid stream type " + streamType + " for AudioAttributes");
|
||||
}
|
||||
}
|
||||
if (mUsage == USAGE_UNKNOWN) {
|
||||
mUsage = usageForStreamType(streamType);
|
||||
}
|
||||
mUsage = usageForStreamType(streamType);
|
||||
return this;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user