diff options
author | Eric Laurent <elaurent@google.com> | 2012-03-16 19:30:04 -0700 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2012-03-16 19:30:04 -0700 |
commit | 2cb034ebbf5eb4f9ead26150d288bf6d90dc2fee (patch) | |
tree | eb43c79a303df3ff10d2ded15f9432ee7a71f672 | |
parent | f8c151d780923d0481980c016ac935ebfe9fc79b (diff) | |
parent | b0fa2d75092de983db445f565862325919d4e4f2 (diff) | |
download | device_samsung_tuna-2cb034ebbf5eb4f9ead26150d288bf6d90dc2fee.zip device_samsung_tuna-2cb034ebbf5eb4f9ead26150d288bf6d90dc2fee.tar.gz device_samsung_tuna-2cb034ebbf5eb4f9ead26150d288bf6d90dc2fee.tar.bz2 |
am 467c02b6: am 78a7609d: audio: fix audio drop when speaker is selected
* commit 'b0fa2d75092de983db445f565862325919d4e4f2':
audio: fix audio drop when speaker is selected
-rwxr-xr-x | audio/audio_hw.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/audio/audio_hw.c b/audio/audio_hw.c index bbd849a..850a1b1 100755 --- a/audio/audio_hw.c +++ b/audio/audio_hw.c @@ -1415,12 +1415,24 @@ static int out_set_parameters(struct audio_stream *stream, const char *kvpairs) } /* force standby if moving to/from HDMI/SPDIF or if the output * device changes when in HDMI/SPDIF mode */ + + /* FIXME workaround for audio being dropped when switching path without forcing standby + * (several hundred ms of audio can be lost: e.g beginning of a ringtone. We must understand + * the root cause in audio HAL, driver or ABE. if (((val & AUDIO_DEVICE_OUT_AUX_DIGITAL) ^ (adev->devices & AUDIO_DEVICE_OUT_AUX_DIGITAL)) || ((val & AUDIO_DEVICE_OUT_DGTL_DOCK_HEADSET) ^ (adev->devices & AUDIO_DEVICE_OUT_DGTL_DOCK_HEADSET)) || (adev->devices & (AUDIO_DEVICE_OUT_AUX_DIGITAL | AUDIO_DEVICE_OUT_DGTL_DOCK_HEADSET))) + */ + if (((val & AUDIO_DEVICE_OUT_AUX_DIGITAL) ^ + (adev->devices & AUDIO_DEVICE_OUT_AUX_DIGITAL)) || + ((val & AUDIO_DEVICE_OUT_DGTL_DOCK_HEADSET) ^ + (adev->devices & AUDIO_DEVICE_OUT_DGTL_DOCK_HEADSET)) || + (adev->devices & (AUDIO_DEVICE_OUT_AUX_DIGITAL | + AUDIO_DEVICE_OUT_DGTL_DOCK_HEADSET)) || + (val == AUDIO_DEVICE_OUT_SPEAKER)) do_output_standby(out); } adev->devices &= ~AUDIO_DEVICE_OUT_ALL; |