From ddd74bcd1c6b6238410decc69965e852ab401d57 Mon Sep 17 00:00:00 2001 From: Sangchul Lee Date: Thu, 9 Mar 2017 13:57:31 +0900 Subject: [PATCH] Skip drain() function when onInterrupt is invoked These codes are disabled temporarily due to the blocking of the drain() function in onInterrupt. [Version] 0.3.71 [Profile] Common [Issue Type] Fix bug Change-Id: I1ce61473480722e7837123cc54e63d180a6441a0 Signed-off-by: Sangchul Lee --- packaging/capi-media-audio-io.spec | 2 +- src/cpp/CAudioIO.cpp | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/packaging/capi-media-audio-io.spec b/packaging/capi-media-audio-io.spec index 68a0dab..85abd03 100644 --- a/packaging/capi-media-audio-io.spec +++ b/packaging/capi-media-audio-io.spec @@ -1,6 +1,6 @@ Name: capi-media-audio-io Summary: An Audio Input & Audio Output library in Tizen Native API -Version: 0.3.70 +Version: 0.3.71 Release: 0 Group: Multimedia/API License: Apache-2.0 diff --git a/src/cpp/CAudioIO.cpp b/src/cpp/CAudioIO.cpp index 87758c8..d669e3a 100644 --- a/src/cpp/CAudioIO.cpp +++ b/src/cpp/CAudioIO.cpp @@ -236,11 +236,13 @@ void CAudioIO::onInterrupt(CAudioSessionHandler* pHandler, int id, mm_sound_focu // Focus handle(id) of the other application was acquired, do pause if possible internalLock(); if (mpPulseAudioClient) { + /* FIXME: Skip this codes due to the blocking of drain() function if (mpPulseAudioClient->getStreamDirection() == CPulseAudioClient::EStreamDirection::STREAM_DIRECTION_PLAYBACK) { if (mpPulseAudioClient->drain() == false) { AUDIO_IO_LOGE("Failed CPulseAudioClient::drain()"); } } + */ mpPulseAudioClient->cork(true); onStateChanged(CAudioInfo::EAudioIOState::AUDIO_IO_STATE_PAUSED); } @@ -267,11 +269,13 @@ void CAudioIO::onInterrupt(CAudioSessionHandler* pHandler, int id, mm_sound_focu // Focus handle(id) was released, do pause here internalLock(); if (mpPulseAudioClient) { + /* FIXME: Skip this codes due to the blocking of drain() function if (mpPulseAudioClient->getStreamDirection() == CPulseAudioClient::EStreamDirection::STREAM_DIRECTION_PLAYBACK) { if (mpPulseAudioClient->drain() == false) { AUDIO_IO_LOGE("Failed CPulseAudioClient::drain()"); } } + */ mpPulseAudioClient->cork(true); onStateChanged(CAudioInfo::EAudioIOState::AUDIO_IO_STATE_PAUSED); } -- 2.34.1