summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
cb2cb33)
[Version] 0.5.36
[Issue Type] Debug
Change-Id: I8d8a7d9c5a0d88f60a57f4f192889da39b72692d
void __setInit(bool flag) noexcept;
bool __IsInit() noexcept;
bool __IsReady() noexcept;
void __setInit(bool flag) noexcept;
bool __IsInit() noexcept;
bool __IsReady() noexcept;
+ void __dumpStat() noexcept;
bool __mIsUsedSyncWrite;
bool __mIsInit;
bool __mIsUsedSyncWrite;
bool __mIsInit;
+
+ uint64_t __mTotalWrittenCount;
+ uint64_t __mTotalWrittenBytes;
Name: capi-media-audio-io
Summary: An Audio Input & Audio Output library in Tizen Native API
Name: capi-media-audio-io
Summary: An Audio Input & Audio Output library in Tizen Native API
Release: 0
Group: Multimedia/API
License: Apache-2.0
Release: 0
Group: Multimedia/API
License: Apache-2.0
CAudioOutput::CAudioOutput(CAudioInfo& info) :
CAudioIO(info),
__mIsUsedSyncWrite(false),
CAudioOutput::CAudioOutput(CAudioInfo& info) :
CAudioIO(info),
__mIsUsedSyncWrite(false),
+ __mIsInit(false),
+ __mTotalWrittenCount(0),
+ __mTotalWrittenBytes(0) {
mDirection = CAudioInfo::EAudioDirection::AUDIO_DIRECTION_OUT;
}
mDirection = CAudioInfo::EAudioDirection::AUDIO_DIRECTION_OUT;
}
CAudioIO::unprepare();
if (mpPulseAudioClient && mpPulseAudioClient->isInThread())
CAudioIO::unprepare();
if (mpPulseAudioClient && mpPulseAudioClient->isInThread())
SAFE_FINALIZE(mpPulseAudioClient);
SAFE_DELETE(mpPulseAudioClient);
SAFE_FINALIZE(mpPulseAudioClient);
SAFE_DELETE(mpPulseAudioClient);
+ __mTotalWrittenCount = 0;
+ __mTotalWrittenBytes = 0;
+
CAudioIO::setState(CAudioInfo::EAudioIOState::AUDIO_IO_STATE_IDLE);
mutex.unlock();
CAudioIO::setState(CAudioInfo::EAudioIOState::AUDIO_IO_STATE_IDLE);
mutex.unlock();
if (mpPulseAudioClient->isInThread())
THROW_ERROR_MSG_FORMAT(CAudioError::EError::ERROR_INVALID_OPERATION, "Can't pause in thread"); //LCOV_EXCL_LINE
if (mpPulseAudioClient->isInThread())
THROW_ERROR_MSG_FORMAT(CAudioError::EError::ERROR_INVALID_OPERATION, "Can't pause in thread"); //LCOV_EXCL_LINE
CAudioIO::pause();
CAudioIO::setState(CAudioInfo::EAudioIOState::AUDIO_IO_STATE_PAUSED);
CAudioIO::pause();
CAudioIO::setState(CAudioInfo::EAudioIOState::AUDIO_IO_STATE_PAUSED);
if (mpPulseAudioClient->isInThread())
THROW_ERROR_MSG_FORMAT(CAudioError::EError::ERROR_INVALID_OPERATION, "Can't resume in thread"); //LCOV_EXCL_LINE
if (mpPulseAudioClient->isInThread())
THROW_ERROR_MSG_FORMAT(CAudioError::EError::ERROR_INVALID_OPERATION, "Can't resume in thread"); //LCOV_EXCL_LINE
CAudioIO::resume();
CAudioIO::setState(CAudioInfo::EAudioIOState::AUDIO_IO_STATE_RUNNING);
CAudioIO::resume();
CAudioIO::setState(CAudioInfo::EAudioIOState::AUDIO_IO_STATE_RUNNING);
+ if (timeouts > 0)
+ AUDIO_IO_LOGD("writableSize(%zu) is now available after (%u) timeouts!!!", l, timeouts);
+
if (l > lengthIter)
l = lengthIter;
#ifdef _AUDIO_IO_DEBUG_TIMING_
AUDIO_IO_LOGD("CPulseAudioClient->write(buffer:%p, length:%zu)", buffer, l);
if (l > lengthIter)
l = lengthIter;
#ifdef _AUDIO_IO_DEBUG_TIMING_
AUDIO_IO_LOGD("CPulseAudioClient->write(buffer:%p, length:%zu)", buffer, l);
#endif
int ret = mpPulseAudioClient->write(buffer, l);
#endif
int ret = mpPulseAudioClient->write(buffer, l);
buffer = static_cast<const uint8_t*>(buffer) + l;
lengthIter -= l;
buffer = static_cast<const uint8_t*>(buffer) + l;
lengthIter -= l;
- } // End of while (length > 0)
+
+ __mTotalWrittenCount++;
+ __mTotalWrittenBytes += l;
+ } // End of while (lengthIter > 0)
__mIsUsedSyncWrite = false;
mutex.unlock();
__mIsUsedSyncWrite = false;
mutex.unlock();
+
+void CAudioOutput::__dumpStat() noexcept {
+ AUDIO_IO_LOGD("total written %llu times, %llu bytes, %llu ms",
+ __mTotalWrittenCount, __mTotalWrittenBytes,
+ __mTotalWrittenBytes * 1000 / mAudioInfo.getSampleSize() / mAudioInfo.getSampleRate());
+}
\ No newline at end of file