diff options
author | Lev Zelenskiy <lev.zelenskiy@nokia.com> | 2012-02-09 16:40:10 +1000 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-02-10 00:57:47 +0100 |
commit | 32b68f17f59a7736de6b4928c6c97e7584e6eb6f (patch) | |
tree | 75e3eaafbcf209b7c63ad4f97022072102b3cd06 /src/multimedia/audio/qaudioprobe.cpp | |
parent | 7b3d3ae4539185d5fa155f13c2e6f7fc7b4be0e2 (diff) |
Changes to media probing API.
Added flush signals.
Change-Id: I9c124317e843c9b9011e69c44649ae9a4e974161
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
Diffstat (limited to 'src/multimedia/audio/qaudioprobe.cpp')
-rw-r--r-- | src/multimedia/audio/qaudioprobe.cpp | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/src/multimedia/audio/qaudioprobe.cpp b/src/multimedia/audio/qaudioprobe.cpp index 9a71b65d6..d23b0d10e 100644 --- a/src/multimedia/audio/qaudioprobe.cpp +++ b/src/multimedia/audio/qaudioprobe.cpp @@ -98,8 +98,10 @@ QAudioProbe::~QAudioProbe() { if (d->source) { // Disconnect - if (d->probee) + if (d->probee) { disconnect(d->probee.data(), SIGNAL(audioBufferProbed(QAudioBuffer)), this, SIGNAL(audioBufferProbed(QAudioBuffer))); + disconnect(d->probee.data(), SIGNAL(flush()), this, SIGNAL(flush())); + } d->source.data()->service()->releaseControl(d->probee.data()); } } @@ -127,6 +129,7 @@ bool QAudioProbe::setSource(QMediaObject *source) if (d->source) { Q_ASSERT(d->probee); disconnect(d->probee.data(), SIGNAL(audioBufferProbed(QAudioBuffer)), this, SIGNAL(audioBufferProbed(QAudioBuffer))); + disconnect(d->probee.data(), SIGNAL(flush()), this, SIGNAL(flush())); d->source.data()->service()->releaseControl(d->probee.data()); d->source.clear(); d->probee.clear(); @@ -140,6 +143,7 @@ bool QAudioProbe::setSource(QMediaObject *source) if (d->probee) { connect(d->probee.data(), SIGNAL(audioBufferProbed(QAudioBuffer)), this, SIGNAL(audioBufferProbed(QAudioBuffer))); + connect(d->probee.data(), SIGNAL(flush()), this, SIGNAL(flush())); d->source = source; } } @@ -187,4 +191,19 @@ bool QAudioProbe::isActive() const return d->probee != 0; } +/*! + \fn QAudioProbe::audioBufferProbed(const QAudioBuffer &buffer) + + This signal should be emitted when an audio buffer is processed in the + media service. +*/ + + +/*! + \fn QAudioProbe::flush() + + This signal should be emitted when it is required to release all buffers. + Application must release all outstanding references to audio buffers. +*/ + QT_END_NAMESPACE |