No-op setting volume to current volume.
This commit is contained in:
parent
3c65df92c2
commit
7a0f00ce41
@ -357,7 +357,7 @@ public final class AudioTrack {
|
|||||||
}
|
}
|
||||||
|
|
||||||
audioTrackUtil.reconfigure(audioTrack, isPassthrough());
|
audioTrackUtil.reconfigure(audioTrack, isPassthrough());
|
||||||
setVolume(volume);
|
setAudioTrackVolume();
|
||||||
|
|
||||||
return sessionId;
|
return sessionId;
|
||||||
}
|
}
|
||||||
@ -582,23 +582,29 @@ public final class AudioTrack {
|
|||||||
|
|
||||||
/** Sets the playback volume. */
|
/** Sets the playback volume. */
|
||||||
public void setVolume(float volume) {
|
public void setVolume(float volume) {
|
||||||
this.volume = volume;
|
if (this.volume != volume) {
|
||||||
if (isInitialized()) {
|
this.volume = volume;
|
||||||
if (Util.SDK_INT >= 21) {
|
setAudioTrackVolume();
|
||||||
setVolumeV21(audioTrack, volume);
|
}
|
||||||
} else {
|
}
|
||||||
setVolumeV3(audioTrack, volume);
|
|
||||||
}
|
private void setAudioTrackVolume() {
|
||||||
|
if (!isInitialized()) {
|
||||||
|
// Do nothing.
|
||||||
|
} else if (Util.SDK_INT >= 21) {
|
||||||
|
setAudioTrackVolumeV21(audioTrack, volume);
|
||||||
|
} else {
|
||||||
|
setAudioTrackVolumeV3(audioTrack, volume);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@TargetApi(21)
|
@TargetApi(21)
|
||||||
private static void setVolumeV21(android.media.AudioTrack audioTrack, float volume) {
|
private static void setAudioTrackVolumeV21(android.media.AudioTrack audioTrack, float volume) {
|
||||||
audioTrack.setVolume(volume);
|
audioTrack.setVolume(volume);
|
||||||
}
|
}
|
||||||
|
|
||||||
@SuppressWarnings("deprecation")
|
@SuppressWarnings("deprecation")
|
||||||
private static void setVolumeV3(android.media.AudioTrack audioTrack, float volume) {
|
private static void setAudioTrackVolumeV3(android.media.AudioTrack audioTrack, float volume) {
|
||||||
audioTrack.setStereoVolume(volume, volume);
|
audioTrack.setStereoVolume(volume, volume);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user