diff options
author | Gareth Stockwell <ext-gareth.stockwell@nokia.com> | 2010-03-24 09:11:30 (GMT) |
---|---|---|
committer | Gareth Stockwell <ext-gareth.stockwell@nokia.com> | 2010-03-24 09:11:30 (GMT) |
commit | 6fc92ea90a078938ced596059981a120dc9ff57d (patch) | |
tree | 7e38c8c8073cd41b82cc069481012d67569301c6 /src | |
parent | ca554e4f13bad9a34db9b79617b1991983b5d227 (diff) | |
download | Qt-6fc92ea90a078938ced596059981a120dc9ff57d.zip Qt-6fc92ea90a078938ced596059981a120dc9ff57d.tar.gz Qt-6fc92ea90a078938ced596059981a120dc9ff57d.tar.bz2 |
Symbian QAudioOutput::suspend() was resetting processedUSecs() to zero
Because of the logic in the Symbian implementations of suspend()
and processedUSecs(), the behaviour prior to this patch was as follows:
- after calling suspend(), processedUSecs() reported zero
- when resume() is called, the amount of silent padding data inserted into
the output stream is equal to the amount of data played prior to suspend()
The patch corrects the above defect, but introduces a new one, which is
described in QTBUG-9322
Reviewed-by: trustme
Diffstat (limited to 'src')
-rw-r--r-- | src/multimedia/audio/qaudiooutput_symbian_p.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/multimedia/audio/qaudiooutput_symbian_p.cpp b/src/multimedia/audio/qaudiooutput_symbian_p.cpp index 945a08d..3f8e933 100644 --- a/src/multimedia/audio/qaudiooutput_symbian_p.cpp +++ b/src/multimedia/audio/qaudiooutput_symbian_p.cpp @@ -185,10 +185,11 @@ void QAudioOutputPrivate::suspend() const qint64 samplesWritten = SymbianAudio::Utils::bytesToSamples( m_format, m_bytesWritten); - m_bytesWritten = 0; const qint64 samplesPlayed = getSamplesPlayed(); + m_bytesWritten = 0; + // CMMFDevSound::Pause() is not guaranteed to work correctly in all // implementations, for play-mode DevSound sessions. We therefore // have to implement suspend() by calling CMMFDevSound::Stop(). |